publica - ¿Cómo verifico/compruebo/pruebo/valido mi contraseña SSH?
ssh-copy-id (4)
Probablemente he olvidado la contraseña de mi clave SSH. Otra vez.
Pero tengo un presentimiento de lo que podría ser. ¿Cómo puedo comprobar si estoy en lo cierto?
ssh-keygen -y
ssh-keygen -y
le pedirá la frase de contraseña (si la hay).
Si ingresa la contraseña correcta , le mostrará la clave pública asociada.
Si ingresa la contraseña incorrecta , mostrará un error de load failed
.
Si la clave no tiene frase de contraseña, no le pedirá una frase de contraseña y le mostrará inmediatamente la clave pública asociada.
p.ej,
Cree un nuevo par de claves públicas / privadas, con o sin una frase de contraseña:
$ ssh-keygen -f /tmp/my_key
...
Ahora mira si puedes acceder al par de teclas:
$ ssh-keygen -y -f /tmp/my_key
A continuación se muestra un ejemplo ampliado, que muestra la salida.
Cree un nuevo par de claves públicas / privadas, con o sin una frase de contraseña:
$ 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 [email protected]
The key''s randomart image is:
+--[ RSA 2048]----+
| .+ |
| . . o |
| = . + |
| = + + |
| o = o S . |
| + = + * |
| = o o . |
| . . |
| E |
+-----------------+
Intente acceder al par de claves ingresando la frase de contraseña correcta. Tenga en cuenta que la clave pública se mostrará y el estado de salida ( $?
) Será 0
para indicar el éxito:
$ ssh-keygen -y -f /tmp/my_key
Enter passphrase:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDBJhVYDYxXOvcQw0iJTPY64anbwSyzI58hht6xCGJ2gzGUJDIsr1NDQsclka6s0J9TNhUEBBzKvh9nTAYibXwwhIqBwJ6UwWIfA3HY13WS161CUpuKv2A/PrfK0wLFBDBlwP6WjwJNfi4NwxA21GUS/Vcm/SuMwaFid9bM2Ap4wZIahx2fxyJhmHugGUFF9qYI4yRJchaVj7TxEmquCXgVf4RVWnOSs9/MTH8YvH+wHP4WmUzsDI+uaF1SpCyQ1DpazzPWAQPgZv9R8ihOrItLXC1W6TPJkt1CLr/YFpz6vapdola8cRw6g/jTYms00Yxf2hn0/o8ORpQ9qBpcAjJN
$ echo $?
0
Intente acceder al par de claves ingresando una frase de contraseña incorrecta. Tenga en cuenta que se mostrará el mensaje de error "carga fallida" (el mensaje puede variar según el sistema operativo) y el estado de salida ( $?
) Será 1
para indicar un error:
$ ssh-keygen -y -f /tmp/my_key
Enter passphrase:
load failed
$ echo $?
1
Intente acceder a un par de claves que no tiene frase de contraseña. Tenga en cuenta que no hay ninguna solicitud para la frase de contraseña, se mostrará la clave pública y el estado de salida ( $?
) Será 0
para indicar el éxito:
$ 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
Extendiendo la solución de @ RobBednark a un escenario específico de Windows + PuTTY, puede hacerlo:
Genere un par de claves SSH con PuTTYgen (luego de generar manualmente su clave SSH en Windows ), guárdela en un archivo PPK;
Con el menú contextual en el Explorador de Windows, elija Editar con PuTTYgen. Se le pedirá una contraseña.
Si escribe la contraseña incorrecta, volverá a preguntar.
Tenga en cuenta que si desea escribir, use el siguiente comando en una carpeta que contenga el archivo PPK: puttygen private-key.ppk -y
.
Puede verificar la contraseña de su clave SSH al intentar cargarla en su agente SSH. Con OpenSSH esto se hace a través de ssh-add
.
Una vez que haya terminado, recuerde descargar su frase de contraseña SSH del terminal ejecutando ssh-add -d
Si su frase de contraseña es para desbloquear su clave SSH y no tiene ssh-agent
, pero sí tiene sshd (el demonio SSH) instalado en su máquina:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys;
ssh localhost -i ~/.ssh/id_rsa
Donde ~/.ssh/id_rsa.pub
es la clave pública, y ~/.ssh/id_rsa
es la clave privada.