Comment puis-je vérifier/vérifier/tester/valider mon mot de passe SSH?
j'ai probablement oublié le mot de passe pour ma clé SSH. Encore.
mais j'ai une idée de ce que ça pourrait être. Comment puis-je vérifier si j'ai raison?
4 réponses
vous pouvez vérifier votre phrase de passe de clé SSH en essayant de la charger dans votre agent SSH. Avec OpenSSH cela se fait via ssh-add
.
une fois que vous avez terminé, n'oubliez pas de décharger votre mot de passe SSH du terminal en exécutant ssh-add -d
ssh-keygen-y
ssh-keygen -y
vous demandera la phrase de passe (s'il y en a une).
si vous saisissez la phrase de passe correct , elle vous montrera la clé publique associée.
Si vous tapez wrong passphrase, il affichera load failed
.
Si la clé a Non passphrase, il sera pas vous invite pour une passphrase et vous montrera immédiatement la clé publique associée.
par exemple,
créer une nouvelle paire de clés publiques / privées, avec ou sans phrase de passe:
$ ssh-keygen -f /tmp/my_key
...
maintenant voir si vous pouvez accéder à la paire de clés:
$ ssh-keygen -y -f /tmp/my_key
Voici un exemple étendu, montrant la sortie.
créer une nouvelle paire de clés publiques / privées, avec ou sans phrase de passe:
$ 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 |
+-----------------+
essayer d'accéder à la paire de clés en saisissant la phrase de passe correcte.
Notez que la clé publique sera affichée et le statut de sortie ( $?
) sera 0
pour indiquer le succès:
$ ssh-keygen -y -f /tmp/my_key
Enter passphrase:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDBJhVYDYxXOvcQw0iJTPY64anbwSyzI58hht6xCGJ2gzGUJDIsr1NDQsclka6s0J9TNhUEBBzKvh9nTAYibXwwhIqBwJ6UwWIfA3HY13WS161CUpuKv2A/PrfK0wLFBDBlwP6WjwJNfi4NwxA21GUS/Vcm/SuMwaFid9bM2Ap4wZIahx2fxyJhmHugGUFF9qYI4yRJchaVj7TxEmquCXgVf4RVWnOSs9/MTH8YvH+wHP4WmUzsDI+uaF1SpCyQ1DpazzPWAQPgZv9R8ihOrItLXC1W6TPJkt1CLr/YFpz6vapdola8cRw6g/jTYms00Yxf2hn0/o8ORpQ9qBpcAjJN
$ echo $?
0
essayer d'accéder à la paire de clés en saisissant une phrase de passe incorrecte.
Notez que le message d'erreur "load failed" sera affiché (message peut différer selon OS) et le statut de sortie ( $?
) sera 1
pour indiquer une erreur:
$ ssh-keygen -y -f /tmp/my_key
Enter passphrase:
load failed
$ echo $?
1
tenter d'accéder à une paire de clés qui n'a pas de phrase de passe. Notez qu'il n'y a pas d'invite pour la phrase de passe, la clé publique sera affichée, et le statut de sortie ( $?
) sera 0
pour indiquer le succès:
$ 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
étendre la solution de @RobBednark à un scénario Windows + PuTTY spécifique, vous pouvez le faire:
-
Générer la paire de clés SSH avec PuTTYgen (à la suite de générer Manuellement votre clé SSH sous Windows ), l'enregistrement dans un fichier PPK;
-
avec le menu contextuel dans L'Explorateur Windows, choisissez Edit avec PuTTYgen. Il vous demandera un mot de passe.
si vous tapez le mauvais mot de passe, il vous demandera à nouveau.
Note, Si vous aimez taper, utilisez la commande suivante sur un dossier qui contient le fichier PPK: puttygen private-key.ppk -y
.
si votre phrase de passe est pour déverrouiller votre clé SSH et que vous n'avez pas ssh-agent
, mais que vous avez sshd (le démon SSH) installé sur votre machine:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys;
ssh localhost -i ~/.ssh/id_rsa
Où ~/.ssh/id_rsa.pub
est la clé publique, et ~/.ssh/id_rsa
est la clé privée.