Antworten:
Sie können Ihre SSH-Schlüsselpassphrase überprüfen, indem Sie versuchen, sie in Ihren SSH-Agenten zu laden. Bei OpenSSH erfolgt dies über ssh-add
.
Wenn Sie fertig sind, denken Sie daran, Ihre SSH-Passphrase durch Ausführen vom Terminal zu entladen ssh-add -d
.
ssh-add -d
# restorecon -R -v /home/user
Um zu überprüfen, ob dies das Problem ist (obwohl der vorhergehende Befehl keine Probleme verursachen sollte), können Sie $ ls -lZR <home_dir>
den Kontext untersuchen. Wenn Sie user_home_t
im Home-Verzeichnis sowie ssh_home_t
im .ssh
Verzeichnis und in der authorized_keys
Datei nichts sehen restorecon
, beheben Sie diese.
ssh-keygen -y
ssh-keygen -y
fordert Sie zur Eingabe der Passphrase auf (falls vorhanden).
Wenn Sie die richtige Passphrase eingeben, wird der zugehörige öffentliche Schlüssel angezeigt.
Wenn Sie die falsche Passphrase eingeben, wird diese angezeigt load failed
.
Wenn der Schlüssel keine Passphrase hat, werden Sie nicht zur Eingabe einer Passphrase aufgefordert und der zugehörige öffentliche Schlüssel wird sofort angezeigt.
z.B,
Erstellen Sie ein neues öffentliches / privates Schlüsselpaar mit oder ohne Passphrase:
$ ssh-keygen -f /tmp/my_key
...
Überprüfen Sie nun, ob Sie auf das Schlüsselpaar zugreifen können:
$ ssh-keygen -y -f /tmp/my_key
Das folgende Beispiel zeigt die Ausgabe.
Erstellen Sie ein neues öffentliches / privates Schlüsselpaar mit oder ohne Passphrase:
$ ssh-keygen -f /tmp/my_key
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /tmp/my_key.
Your public key has been saved in /tmp/my_key.pub.
The key fingerprint is:
de:24:1b:64:06:43:ca:76:ba:81:e5:f2:59:3b:81:fe rob@Robs-MacBook-Pro.local
The key's randomart image is:
+--[ RSA 2048]----+
| .+ |
| . . o |
| = . + |
| = + + |
| o = o S . |
| + = + * |
| = o o . |
| . . |
| E |
+-----------------+
Versuchen Sie, auf das Schlüsselpaar zuzugreifen, indem Sie die richtige Passphrase eingeben. Beachten Sie, dass der öffentliche Schlüssel angezeigt wird und der Exit-Status ( $?
) den 0
Erfolg anzeigt:
$ ssh-keygen -y -f /tmp/my_key
Enter passphrase:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDBJhVYDYxXOvcQw0iJTPY64anbwSyzI58hht6xCGJ2gzGUJDIsr1NDQsclka6s0J9TNhUEBBzKvh9nTAYibXwwhIqBwJ6UwWIfA3HY13WS161CUpuKv2A/PrfK0wLFBDBlwP6WjwJNfi4NwxA21GUS/Vcm/SuMwaFid9bM2Ap4wZIahx2fxyJhmHugGUFF9qYI4yRJchaVj7TxEmquCXgVf4RVWnOSs9/MTH8YvH+wHP4WmUzsDI+uaF1SpCyQ1DpazzPWAQPgZv9R8ihOrItLXC1W6TPJkt1CLr/YFpz6vapdola8cRw6g/jTYms00Yxf2hn0/o8ORpQ9qBpcAjJN
$ echo $?
0
Versuchen Sie, auf das Schlüsselpaar zuzugreifen, indem Sie eine falsche Passphrase eingeben. Beachten Sie, dass die Fehlermeldung "Laden fehlgeschlagen" angezeigt wird (Meldung kann je nach Betriebssystem unterschiedlich sein) und der Exit-Status ( $?
) 1
einen Fehler anzeigt:
$ ssh-keygen -y -f /tmp/my_key
Enter passphrase:
load failed
$ echo $?
1
Versuchen Sie, auf ein Schlüsselpaar ohne Passphrase zuzugreifen. Beachten Sie, dass es keine Eingabeaufforderung für die Passphrase gibt, der öffentliche Schlüssel angezeigt wird und der Exit-Status ( $?
) den 0
Erfolg anzeigt:
$ ssh-keygen -y -f /tmp/my_key_with_no_passphrase
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLinxx9T4HE6Brw2CvFacvFrYcOSoQUmwL4Cld4enpg8vEiN8DB2ygrhFtKVo0qMAiGWyqz9gXweXhdmAIsVXqhOJIQvD8FqddA/SMgqM++2M7GxgH68N+0V+ih7EUqf8Hb2PIeubhkQJQGzB3FjYkvRLZqE/oC1Q5nL4B1L1zDQYPSnQKneaRNG/NGIaoVwsy6gcCZeqKHywsXBOHLF4F5nf/JKqfS6ojStvzajf0eyQcUMDVhdxTN/hIfEN/HdYbOxHtwDoerv+9f6h2OUxZny1vRNivZxTa+9Qzcet4tkZWibgLmqRyFeTcWh+nOJn7K3puFB2kKoJ10q31Tq19
$ echo $?
0
ssh-keygen -y
fragt nach der Schlüsseldatei und bietet eine Standardeinstellung an, wenn Sie wie erwartet auf Zurück klicken.
ssh-keygen -y
die Passphrase meines SSH-Schlüssels überprüft. Es hat gut funktioniert, außer dass mein Ubuntu unglaublich langsam geworden ist. Die meisten Programme konnten in einer Minute oder länger gestartet werden, während die CPU-Auslastung 100% betrug. Nach dem Neustart meines Laptops konnte ich mich kaum anmelden, da es Minuten dauerte, bis ich meinen Desktop sah. Endlich habe ich dieses Problem auf Ask Ubuntu gefunden . Ich musste damit beginnen gnome-keyring-daemon
, das Problem zu beheben.
Wenn Sie die Lösung von @ RobBednark auf ein bestimmtes Windows + PuTTY-Szenario erweitern, können Sie Folgendes tun:
Generieren Sie ein SSH-Schlüsselpaar mit PuTTYgen (nach dem manuellen Generieren Ihres SSH-Schlüssels in Windows ) und speichern Sie ihn in einer PPK-Datei.
Wählen Sie im Kontextmenü im Windows Explorer die Option Mit PuTTYgen bearbeiten. Es wird nach einem Passwort gefragt.
Wenn Sie das falsche Passwort eingeben, werden Sie erneut aufgefordert.
Hinweis: Wenn Sie eingeben möchten, verwenden Sie den folgenden Befehl für einen Ordner, der die PPK-Datei enthält : puttygen private-key.ppk -y
.
Verwenden Sie "ssh-keygen -p". Sie können "-f" hinzufügen
Sie werden aufgefordert, das alte Passwort einzugeben. Wenn das Passwort korrekt ist, werden Sie aufgefordert, ein neues Passwort einzugeben. Wenn das alte Passwort falsch ist, wird "Schlüssel <...> konnte nicht geladen werden" angezeigt.
Wenn Ihre Passphrase darin besteht, Ihren SSH-Schlüssel zu entsperren, und Sie ssh-agent
sshd (den SSH-Daemon) nicht auf Ihrem Computer installiert haben , gehen Sie wie folgt vor:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys;
ssh localhost -i ~/.ssh/id_rsa
Wo ~/.ssh/id_rsa.pub
ist der öffentliche Schlüssel und ~/.ssh/id_rsa
ist der private Schlüssel.
passphrase
, kein Passwort;)