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?

218
demandé sur Rob Bednark 2010-12-10 20:13:55

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

93
répondu Ignacio Vazquez-Abrams 2017-12-13 00:44:05

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
389
répondu Rob Bednark 2016-11-02 21:18:48

étendre la solution de @RobBednark à un scénario Windows + PuTTY spécifique, vous pouvez le faire:

  1. 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;

  2. 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 .

0
répondu kokbira 2018-08-07 20:01:47

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

~/.ssh/id_rsa.pub est la clé publique, et ~/.ssh/id_rsa est la clé privée.

-1
répondu Alexx Roche 2018-08-07 20:00:02