SSH-Zugriff auf AWS funktioniert mit der Standard-ID rsa.pub, jedoch nicht mit dem mit ssh-keygen generierten Schlüssel

SSH-Zugriff auf AWS funktioniert mit der Standard-ID rsa.pub, jedoch nicht mit dem mit ssh-keygen generierten Schlüssel

Hallo, ich habe hier noch nie eine Frage gepostet, aber ich versuche, ohne Eingabe eines Kennworts auf eine AWS-Instanz zuzugreifen und habe dabei einige Probleme.

$ ssh -i ~/.ssh/id_rsa_aws.pub ubuntu@ipaddresshere

Allerdings werde ich zur Eingabe eines Kennworts aufgefordert, obwohl ich den Schlüssel wie folgt generiert habe und das Kennwortfeld bei der Aufforderung leer gelassen habe.

$ ssh-keygen -t rsa -b 1024

Wenn ich beim Zugriff auf den Server ein leeres Feld für das Kennwort eingebe, erhalte ich die Meldung „Zugriff verweigert“. Wenn ich ein Kennwort eingebe, werde ich aufgefordert, einen Wert erneut einzugeben. Ich gehe daher davon aus, dass das leere Kennwort akzeptiert wird, der Schlüssel jedoch abgelehnt wird.

Ich habe den Inhalt gespeichert id_rsa_aws.pubund authorizedkeys2glaube, dass alle Berechtigungen richtig eingestellt sind.

Um noch ein paar weitere Tests durchzuführen, habe ich einen anderen Schlüssel verwendet, den ich zuvor für eine andere, gerade aufgerufene Instanz generiert id_rsa.pubund dorthin kopiert habe, authorizedkeys2und komme damit problemlos zurecht.

Die Berechtigungen sind für die Schlüssel dieselben.

Warum funktioniert der Schlüssel, den ich generiere, nicht, wenn der andere funktioniert?

Ich bin dem unten stehenden Link grob gefolgt, der einzige Unterschied besteht darin, dass ich eine andere Identitätsdatei als id_rsa.pub verwende.

https://forums.aws.amazon.com/message.jspa?messageID=211493

Antwort1

OK, Sie haben hier ein paar Probleme. Ich werde sie nacheinander lösen.

$ ssh -i ~/.ssh/id_rsa_aws.pub ubuntu@IP-Adressehier

Das erste Problem ist hier. Ihre Identitätsdatei ist nicht die öffentliche Schlüsseldatei. Ihre Identitätsdatei ist IhrePrivatSchlüsseldatei. Der Befehl, den Sie ausführen, sollte daher wie folgt lauten:

$ ssh -i ~/.ssh/id_rsa_aws ubuntu@ipaddresshere

Ich habe den Inhalt von id_rsa_aws.pub in authorizedkeys2 gespeichert und glaube, dass alle Berechtigungen richtig eingestellt sind.

Das zweite Problem ist hier. authorizedkeys2ist nicht der Ort, an dem Ihr SSHD nach Ihrer öffentlichen Schlüsseldatei sucht. Ich denke, Sie meinten möglicherweise authorized_keys2(beachten Sie den Unterstrich), aber selbst das wäre nicht der richtige Ort (obwohl es funktionieren könnte). Die authorized_keys2Datei ist seit geraumer Zeit veraltet, zugunsten einer einzigen, einheitlichen ~/.ssh/authorized_keysDatei, die sowohl RSA- als auch DSA-Schlüssel enthält.

verwandte Informationen