999 Stimmen

"UNGESCHÜTZTE PRIVATE SCHLÜSSELDATEI!" Fehler bei der Verwendung von SSH in einer Amazon EC2-Instanz (AWS)

Ich habe eine neue Linux-Instanz auf Amazon EC2 erstellt, und als Teil davon habe ich die .pem Datei, damit ich mich per SSH einloggen kann.

Als ich versuchte ssh mit:

ssh -i myfile.pem <public dns>

Ich habe:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for 'amazonec2.pem' are too open.
It is recommended that your private key files are NOT accessible by others.
This private key will be ignored.
bad permissions: ignore key: amazonec2.pem
Permission denied (publickey).

Unter diese Stelle Ich habe versucht chmod +600 die .pem Datei, aber wenn ich jetzt ssh Ich bekomme nur

Permission denied (publickey).

Welchen Schuljungenfehler mache ich hier? Die .pem Datei befindet sich in meinem Home-Ordner (unter macOS). Ihre Berechtigungen sehen wie folgt aus:

-rw-------@   1 mattroberts  staff    1696 19 Nov 11:20 amazonec2.pem

1voto

David Eschmeyer Punkte 21

Wenn Sie unter Windows 10 das Ubuntu-Subsystem verwenden und mit sudo chmod den Schlüssel auf 400 ändern, kann es immer noch zu der Fehlermeldung "Load key pem: Permission denied"

ls -al und Sie werden sehen, dass die Datei jetzt Root gehört! chown Sie sie auf Ihren angemeldeten Benutzer und dann wird es funktionieren.

1voto

Deepak N Punkte 1145

Es handelt sich lediglich um ein Berechtigungsproblem mit Ihrem aws pem-Schlüssel.

Ändern Sie einfach die Berechtigung des pem-Schlüssels mit dem unten stehenden Befehl auf 400.

chmod 400 pemkeyname.pem

Wenn Sie keine Berechtigung haben, die Berechtigung einer Datei zu ändern, können Sie sudo wie den folgenden Befehl verwenden.

sudo chmod 400 pemkeyname.pem

Ich hoffe, das sollte funktionieren.

1voto

Jason Punkte 2189

Ich habe die Standard-Sicherheitsgruppe so bearbeitet, dass sie eingehenden TCP-Verkehr an Port 22 zulässt:

enter image description here

0voto

Ega Punkte 387

Sie sollten auch überprüfen, ob Ihre .pem-Datei nicht beschädigt ist. Ich habe etwa eine Stunde damit verbracht, mir den Kopf zu zerbrechen, und habe dann beschlossen, diese Zeile zu verwenden

openssl rsa -check -in test.pem -noout

Wenn er "RSA-Schlüssel ok" zurückgibt, ist alles in Ordnung. Wenn nicht, vergewissern Sie sich, dass Sie die richtige Datei haben oder sie aus irgendeinem Grund richtig kopiert haben.

0voto

Nick Res Punkte 2214

Ich habe das Problem gelöst, indem ich die .pem-Datei in das Verzeichnis apps verschoben habe. Sagen wir also, fooapp ist der Name meiner Anwendung. Ich habe sie direkt dorthin verschoben.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X