Stellen Sie über ssh eine Verbindung mit einer PEM-Datei her


93

Ich möchte wissen, wie man über ssh mit einer .pem-Datei eine Verbindung zu einem beliebigen Server herstellt.

Derzeit führe ich den folgenden Befehl aus:

ssh user@mydomain.com

Welche Option soll ich verwenden?

Antworten:


168

Verwenden Sie die -iOption:

ssh -i mykey.pem user@mydomain.com

Wie in dieser Antwort angegeben , müssen für diese Datei die richtigen Berechtigungen festgelegt sein. Die SSH-Manpage sagt:

ssh ignoriert eine private Schlüsseldatei einfach, wenn andere darauf zugreifen können.

Sie können die Berechtigungen mit diesem Befehl ändern:

chmod go= mykey.pem

Das heißt, Berechtigungen für g ruppe und o thers gleich auf die leere Liste der Berechtigungen.


1
Ich möchte nur darauf hinweisen, dass Sie, wenn Sie nicht root sind, die PEM-Datei ändern und die Leseberechtigung für Ihren Benutzer aktivieren sollten.
— Ionuț Ciuta

1
Dies betrifft nur die Client-Seite der Gleichung. Zum Einrichten des Servers müssen Sie Ihren öffentlichen Schlüssel in die Datei ~ / .ssh / authorized_keys kopieren. Sie können dies von Ihrem lokalen Computer aus tun, indem Sie: "ssh-copy-id -i ~ / mykey.pub user@mydomain.com".
— Todd Walton

41
chmod 400 mykey.pem

ssh -i mykey.pem user@mydomain.com

Verbindet Sie über ssh mithilfe einer PEM-Datei mit einem beliebigen Server.


3
"chmod 400" hat dieses Problem behoben: Die Berechtigungen 0777 für 'some_file.pem' sind zu offen. Es ist erforderlich, dass Ihre privaten Schlüsseldateien NICHT für andere zugänglich sind. Dieser private Schlüssel wird ignoriert.
— pantos27

15

Verwenden Sie für AWS, wenn der Benutzer Ubuntu ist, Folgendes, um eine Verbindung zum Remote-Server herzustellen.

chmod 400 mykey.pem

ssh -i mykey.pem ubuntu@your-ip

1

Mit den folgenden Befehlen können Sie eine Verbindung zu einer AWS ec-2-Instanz herstellen.

chmod 400 mykey.pem

ssh -i mykey.pem username@your-ip

Standardmäßig ist der Computername normalerweise wie Ubuntu, da der Ubuntu-Computer normalerweise als Server verwendet wird. In diesem Fall funktioniert der folgende Befehl.

ssh -i mykey.pem ubuntu@your-ip

0

So stellen Sie eine Verbindung vom Terminal zu AWS AMI her:

chmod 400 mykey.pem

ssh -i mykey.pem ec2-user@mydomain.com
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.