Wie stoppe ich die SSH-Passphrase-Eingabeaufforderung? [geschlossen]

10

Ich habe einen Server, den ich gerade geöffnet habe. Wenn ich ssh as nt_deployer, frage ich nach einer ssh-Passphrase:

Nets-Mac-Pro:mysite emai$ ssh [email protected]
Enter passphrase for key '/Users/emai/.ssh/id_rsa': 
[email protected]'s password: 
Welcome to Ubuntu 14.04 LTS (GNU/Linux 3.13.0-29-generic x86_64)

Wenn ich jedoch ssh as emai, frage es nicht:

Nets-Mac-Pro:mysite emai$ ssh [email protected]
[email protected]'s password: 
Welcome to Ubuntu 14.04 LTS (GNU/Linux 3.13.0-29-generic x86_64)

Kann mir jemand sagen, wie ich verhindern würde, dass die Passphrase-Eingabeaufforderung angezeigt wird nt_deployer?

Bigpotato
quelle
Ich rannte ssh-keygenund es funktionierte
Bigpotato
Bitte veröffentlichen Sie Ihre Lösung und markieren Sie sie als Antwort. Dadurch werden bei ServerFault keine "nicht beantworteten" Fragen mehr gestellt, die keine Hilfe benötigen.
TessellatingHeckler
Beim Ausführen ssh-keygenhaben Sie wahrscheinlich den vorherigen Schlüssel zerstört. Weißt du, warum du überhaupt einen hattest?
Valmiky Arquissandas

Antworten:

4

Diese Zeile Enter passphrase for key '/Users/emai/.ssh/id_rsa': bedeutet, dass Ihr Schlüssel durch ein Passwort geschützt ist, das bei jeder Verwendung des Schlüssels eingegeben wurde, wenn Sie ihn verwenden. Er fragt nach einem Passwort.

Indem Sie ssh-keygen noch einmal ausführen, ohne das Kennwort einzugeben, haben Sie einen weiteren Schlüssel generiert. Kein Passwort im Schlüssel - keine Passwortabfrage :)

Hier ist ein Zitat aus der Manpage von ssh-keygen:

Normalerweise generiert dieses Programm den Schlüssel und fragt nach einer Datei, in der der private Schlüssel gespeichert werden soll. Der öffentliche Schlüssel wird in einer Datei mit demselben Namen gespeichert, an die jedoch ".pub" angehängt ist. Das Programm fragt auch nach einer Passphrase. Die Passphrase kann leer sein, um keine Passphrase anzuzeigen (Hostschlüssel müssen eine leere Passphrase haben), oder es kann sich um eine Zeichenfolge beliebiger Länge handeln. Eine Passphrase ähnelt einem Kennwort, kann jedoch eine Phrase mit einer Reihe von Wörtern, Satzzeichen, Zahlen, Leerzeichen oder einer beliebigen Zeichenfolge sein. Gute Passphrasen sind 10 bis 30 Zeichen lang, keine einfachen Sätze oder auf andere Weise leicht zu erraten (englische Prosa hat nur 1-2 Entropiebits pro Zeichen und liefert sehr schlechte Passphrasen) und enthalten eine Mischung aus Groß- und Kleinbuchstaben, Zahlen, und nicht alphanumerische Zeichen. Die Passphrase kann später mit der Option -p geändert werden.

Es gibt keine Möglichkeit, eine verlorene Passphrase wiederherzustellen. Wenn die Passphrase verloren geht oder vergessen wird, muss ein neuer Schlüssel generiert und der entsprechende öffentliche Schlüssel auf andere Computer kopiert werden.

stimulieren
quelle
Ich habe festgestellt, dass SSH zur Eingabe einer Passphrase auffordert, wenn beim Lesen des privaten Schlüssels Probleme auftreten. Ich gab ihm eine leere Datei und er fragte nach einer Passphrase.
Makhdumi
1
Das bedeutet, dass Sie ausführen müssen, um ssh -vden tatsächlichen Fehler zu sehen. In der Regel handelt es sich um ein Berechtigungsproblem, da die Schlüsseldatei über 0600Berechtigungen verfügen muss .
Stimur
Es kann auch sein, dass der Benutzer die Schlüsseldatei nicht besitzt. Dies geschieht häufig beim Kopieren der Schlüssel von anderen Benutzern.
Rusty Weber
@ Stimur 400 sollte ausreichen
030
3

Aufbauend auf der Antwort von stimulur fragt ssh nach der Passphrase eines Schlüssels. Was bedeutet, dass Sie in erster Linie einen Schlüssel verwenden.

Wenn Sie dies möchten - einen privaten Schlüssel, der mit einer Passphrase geschützt ist, können Sie ssh-agentsich die Passphrase (oder den entschlüsselten privaten Schlüssel, ich bin mir nicht sicher, welcher) merken, damit Sie sich anmelden können, ohne die Passphrase erneut einzugeben. Sie können sich unbegrenzt oder für einen festgelegten Zeitraum daran erinnern.

man ssh-agentund man ssh-add!

Valmiky Arquissandas
quelle
Was ist, wenn ich ssh-agent, ssh-add ausführe und nach dem Ausführen des Befehls ssh immer noch nach der Passphrase fragt? Und wenn ich die Passphrase eingebe, wird sogar nach dem Passwort gefragt, weil es denkt, dass die Passphrase wahrscheinlich falsch ist? Wenn die Passphrase falsch ist, wird sie auch vom Befehl ssh-add nicht akzeptiert.
Darius.V
Darius: Entweder ist die Passphrase falsch oder du hast mehr als einen Schlüssel. Probieren Sie die ssh -vOption aus.
Valmiky Arquissandas
Ich habe versucht -vvv. Nachdem die Passphrase abgefragt wurde, heißt es "Keine Passphrase geben, nächsten Schlüssel versuchen". Aber pashprhase ist eine leere Zeichenfolge, also drücke ich einfach die Eingabetaste. Dann schreibt es "Wir haben kein Paket gesendet, Methode deaktivieren" und "authmethod_lookup Passwort" und fragt nach wenigen Nachrichten nach dem Passwort. Versucht '' einzugeben und einzutreten, dann heißt es - schlechte Passphrase. Und ich habe mehr als einen Schlüssel, einer mit Passphrase, ein anderer ohne Passprase. Aber ich gehe zum ssh-Befehl -i id_rsa und es sollte wissen, dass ich einen ohne Passphrase verwende
Darius.V
@ Darius.V: Sie können den Schlüssel explizit angeben -i /path/to/keyund die ausführliche Ausgabe von ssh überprüfen sowie die Berechtigungen für die Schlüsseldatei überprüfen. Bitte stellen Sie sicher, dass Sie einen öffentlichen Schlüssel verwenden, nicht einen privaten.
Stimur