2010-09-29 12 views
142

Genere una clave privada de OpenSSH usando puttygen (y la exporté en formato OpenSSH). ¿Cómo puedo poner una contraseña en esta clave existente (sé cómo generar una nueva clave con una contraseña)?¿Cómo agrego una contraseña a una clave privada de OpenSSH que se generó sin una contraseña?

+12

Si ve este comentario, marque una de las respuestas como aceptadas o escriba un comentario diciendo lo que se perdieron. ¡Gracias! –

+0

Agregar es lo mismo que cambiar o eliminar: http://stackoverflow.com/questions/112396/how-do-i-remove-the-passphrase-for-the-ssh-key-without-having-to-create- a-new-ke, posible para el cambio: http://serverfault.com/questions/50775/how-do-i-change-my-private-key-passphrase –

+0

Si obtiene *** 'Contraseña errónea' * ** en una clave 'id_ed25519' pero la contraseña es correcta, entonces probablemente esté utilizando un' ssh-keygen' de nivel inferior para administrarlo. – jww

Respuesta

227

intentar el comando ssh-keygen -p -f keyfile

Según la página man ssh-keygen

-p  Requests changing the passphrase of a private key file instead of 
     creating a new private key. The program will prompt for the file 
     containing the private key, for the old passphrase, and twice for 
     the new passphrase. 

-f filename 
     Specifies the filename of the key file. 

Ejemplo:

ssh-keygen -p -f ~/.ssh/id_rsa 
+4

Para aquellos que quieran saber qué -f es: Especifica el archivo de entrada. – Neikos

+1

//, @sigjuice, ¿podría publicar un ejemplo, como '$ ssh-keygen -p -f/Users/sigjuice/.ssh/id_rsa'? Esto podría ayudar a las personas que no saben cómo diferenciar entre una clave pública y privada y ayudarles a que se mojen más rápido. –

25

Utilice la opción -p para ssh-keygen. Esto le permite cambiar la contraseña en lugar de generar una nueva clave.

Cambiar la contraseña como sigjuice muestra:

ssh-keygen -p -f ~/.ssh/id_rsa 

La contraseña requerida será la nueva contraseña. (Esto supone que haya agregado la clave pública ~/.ssh/id_rsa.pub a los archivos de authorized_keys.) Prueba con ssh:

ssh -i ~/.ssh/id_rsa localhost 

Puede tener varias llaves con diferentes nombres para diferentes usos.

+0

//, ¿Podría mostrar un ejemplo y cómo comprobar que la opción ha funcionado, @BillThor? –

+1

@NathanBasanese Consulte la respuesta editada. – BillThor

Cuestiones relacionadas