¿Cómo restablecer o cambiar la frase de contraseña para una clave SSH de GitHub?

Respuestas:

66

Puede cambiar la frase de contraseña de su clave privada haciendo lo siguiente:

ssh-keygen -f ~/.ssh/id_rsa -p
manojlds
fuente
5
Esto implica ~/.ssh/id_rsaque no está cifrado en sí mismo, ¿no? Pero si está encriptado, volvemos al punto de partida.
kostix
85
Esto solicita una antigua contraseña. No es útil.
Navigatron
5
Con respecto a la pregunta de OP, no, esto no es útil si olvidó su contraseña. Pero si simplemente está buscando restablecer su contraseña, ¡este es el camino!
Ken M. Haggerty
9
¿Cómo puede alguien ingresar la "contraseña actual" si la olvidó? Solución incorrecta.
Joel James
5
El título de la pregunta dice "restablecer o cambiar". Aterricé aquí buscando en Google una solución para simplemente cambiar la contraseña de mis claves. El número de votos a favor muestra que no soy el único.
panelista
63

En resumen, no hay forma de recuperar la frase de contraseña para un par de claves SSH. ¿Por qué? Porque fue pensado de esta manera en primer lugar por razones de seguridad. Las respuestas que le dieron otras personas son todas formas correctas de CAMBIAR la contraseña de sus claves, no de recuperarlas . Entonces, si ha olvidado su frase de contraseña, lo mejor que puede hacer es crear un nuevo par de claves SSH. A continuación, le mostramos cómo generar claves SSH y agregarlas a su cuenta de GitHub .

Metafaniel
fuente
2
@TechMLG ¡Esa es definitivamente la forma de hacerlo (siga el enlace a la ayuda de GitHub )! Me funcionó para configurar un nuevo archivo de clave SSH y frase de contraseña. El OP debería considerar aceptar.
πάντα ῥεῖ
1
Esta es la respuesta correcta.-
Nikos Alexandris
59

Si ha generado una clave SSH con frase de contraseña y luego olvida su frase de contraseña para esta clave SSH, no hay forma de recuperarla , deberá generar un nuevo par de claves SSH o cambiar a la clonación HTTPS para poder usar su En su lugar, contraseña de GitHub.

PERO, hay excepciones

Si configuró su frase de contraseña SSH con el llavero de OS X , es posible que pueda recuperarla.

  1. En Finder, busque la aplicación Keychain Access.
  2. En Acceso a llaveros, busque SSH.
  3. Haga doble clic en la entrada de su clave SSH para abrir un nuevo cuadro de diálogo.
  4. Cuadro de diálogo de acceso al llavero En la esquina inferior izquierda, seleccione Mostrar contraseña.
  5. Se le pedirá su contraseña administrativa. Escríbalo en el cuadro de diálogo "Acceso al llavero".
  6. Su contraseña será revelada.

Consulte la ayuda de Github: ¿Cómo recupero la frase de contraseña de mi clave SSH?

liangzr
fuente
3
Me salvaste la vida.
Greg Sadetsky
1
Tú también me salvas la vida. Me hiciste darme cuenta de que podía verlo en KWallet.
tongadall
¡Salvador! Debe ser la respuesta principal según la pregunta formulada.
Aman Mathur
16

Las frases de contraseña se pueden agregar a una clave existente o cambiar sin regenerar el par de claves:
Nota Esto funcionará si las claves no tienen una frase de contraseña, de lo contrario, obtendrá esto: Enter old passphrase:entoncesBad passphrase

$ ssh-keygen -p
Enter file in which the key is (/Users/tekkub/.ssh/id_rsa):
Key has comment '/Users/tekkub/.ssh/id_rsa'
Enter new passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved with the new passphrase.

Si su clave tenía passphraseentonces, no hay forma de recuperar la frase de contraseña para un par de claves SSH. En ese caso, debe crear un nuevo par de claves SSH.

  1. Generando claves SSH
Sumit Singh
fuente
28
Esto es bueno si las claves no tienen una frase de contraseña, pero si la tenían y no puedes recordarla, entonces esto no es útil porque obtendrás esto: Enter old passphrase:entoncesBad passphrase.
Metafaniel
5
  1. Inicie sesión en su cuenta de github.
  2. Vaya a la página "Configuración" (el icono de "llave inglesa y destornillador" en la esquina superior derecha de la página).
  3. Vaya a la página "Claves SSH".
  4. Genere una nueva clave SSH (probablemente estudiando los enlaces proporcionados por github en esa página).
  5. Agregue su nueva clave usando el enlace "Agregar clave SSH".
  6. Verifique que su nueva llave funcione.
  7. Haz que gitub olvide tu clave anterior usando el enlace "Eliminar" junto a ella en la lista de claves conocidas.
kostix
fuente
la pregunta se restablece o cambia! no conseguir uno nuevo
Jürgen K.
@ jürgen-k, la frase de contraseña se utiliza para cifrar criptográficamente una clave SSH. El objetivo de hacer esto es que solo es posible usar la clave si conoce la frase de contraseña. Si existiera una forma de recuperar o "restablecer" (lo que sea que eso signifique) la contraseña utilizada para descifrar un material cifrado, la utilidad de dicho sistema criptográfico sería cercana a cero. (Tenga en cuenta que SSH se usa más para el acceso remoto a servidores, no para Git). TLDR: en nuestro caso la respuesta "no es posible" sería inútil, aunque correcta.
kostix