¿Cómo cambio mi frase de contraseña de clave privada?
284
Tengo un par de claves pública / privada existente. La clave privada está protegida con contraseña y el cifrado puede ser RSA o DSA. Estas claves son del tipo que genera ssh-keygeny generalmente almacena debajo ~/.ssh.
Me gustaría cambiar la contraseña de la clave privada. ¿Cómo lo hago, en un shell estándar de Unix?
Además, ¿cómo elimino la contraseña? ¿Solo cambiarlo a vacío?
Para cambiar la frase de contraseña en su clave DSA predeterminada:
$ ssh-keygen -p -f ~/.ssh/id_dsa
luego proporcione su frase de contraseña antigua y nueva (dos veces) en las indicaciones. (Úselo ~/.ssh/id_rsasi tiene una clave RSA).
Más detalles de man ssh-keygen:
[...]
SYNOPSIS
ssh-keygen [-q] [-b bits] -t type [-N new_passphrase] [-C comment]
[-f output_keyfile]
ssh-keygen -p [-P old_passphrase] [-N new_passphrase] [-f keyfile]
[...]
-f filename
Specifies the filename of the key file.
[...]
-N new_passphrase
Provides the new passphrase.
-P passphrase
Provides the (old) passphrase.
-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.
[...]
Esto es del envío de la página de manual con net-misc / openssh-5.2_p1-r2 en Gentoo Linux.
Mike Mazur el
12
Además, por el bien de la futura persona perezosa, revertiría el orden: respuesta rápida primero, página del manual más tarde.
kch
2
Creo que la respuesta es excelente, ya que muestra dónde puede cambiar la contraseña y dónde buscar la respuesta. He ayudado a muchas personas a configurar claves ssh, y para ellos recordar qué herramienta han utilizado no siempre es fácil. Además, la búsqueda de la respuesta en la 'red es la primera opción para muchos ...
@FranciscoLuz el comando en mi respuesta es específico de una clave DSA. Si tiene una clave RSA, entonces su comando es correcto. Agregué una propaganda a la respuesta para abordar esto.
Mike Mazur
-9
Elimine sus claves públicas / privadas de SSH:
rm ~/.ssh/id_rsa*
Recree el par de claves, eligiendo una nueva frase de contraseña:
ssh-keygen -t rsa -f ~/.ssh/id_rsa
Agregue la clave privada recién creada a su Llavero OS X para almacenar la frase de contraseña y administrar su desbloqueo automáticamente:
ssh-add -K ~/.ssh/id_rsa
Copie la clave pública en el portapapeles de OS X para agregar a servicios web como GitHub, etc.
cat ~/.ssh/id_rsa.pub | pbcopy
Agregue su clave pública recién creada al ~/.ssh/authorized_keysarchivo del servidor remoto. Asegúrese de garantizar los permisos correctos de la ~/.sshcarpeta remota (700) y ~/.ssh/authorized_keys(600). Es posible que desee investigar utilizando ssh-copy-idpara facilitar este proceso.
El cartel preguntaba cómo cambiar la frase de contraseña en su clave, no tirarla y generar una nueva; y nunca mencionaron OS X.
musicinmybrain
2
Hubiera votado a favor de esta respuesta si no fuera por estos tres problemas: 1. Eliminar las claves antiguas no es un buen comienzo, ya que las necesitará al actualizar authorized_keys. 2. No ha mencionado por qué es mejor crear nuevas claves que cambiar las contraseñas de las antiguas. 3. Hace suposiciones sobre el sistema operativo, que no es compatible con la pregunta.
-o
opción para habilitar el nuevo formato de clave privada (bcrypt como KDF por defecto). Con versiones anteriores de OpenSSH, use PKCS # 8 para archivos de clave privada más seguros .Elimine sus claves públicas / privadas de SSH:
Recree el par de claves, eligiendo una nueva frase de contraseña:
Agregue la clave privada recién creada a su Llavero OS X para almacenar la frase de contraseña y administrar su desbloqueo automáticamente:
Copie la clave pública en el portapapeles de OS X para agregar a servicios web como GitHub, etc.
Agregue su clave pública recién creada al
~/.ssh/authorized_keys
archivo del servidor remoto. Asegúrese de garantizar los permisos correctos de la~/.ssh
carpeta remota (700) y~/.ssh/authorized_keys
(600). Es posible que desee investigar utilizandossh-copy-id
para facilitar este proceso.fuente
authorized_keys
. 2. No ha mencionado por qué es mejor crear nuevas claves que cambiar las contraseñas de las antiguas. 3. Hace suposiciones sobre el sistema operativo, que no es compatible con la pregunta.