La utilidad ssh-keygen genera, administra y convierte claves de autenticación para ssh. Al usar ssh-keygen para crear una clave, -t se debe especificar la opción para identificar el tipo de clave a crear.
La utilidad ssh-keygen genera un par de claves SSH para la autenticación con el servidor. Esta utilidad se incluye con OpenSSH y, de forma predeterminada, crea un par de claves RSA de 2048 bits. Admite RSA y DSA, ambos con diferentes longitudes de claves. Se recomienda una longitud de clave de 4096 bits para establecer una conexión segura entre dos máquinas.
Es posible que encuentre el siguiente error al generar una clave ssh para su cliente:
-bash: ssh-keygen: command not found
El ssh-keygen viene incluido con el paquete OpenSSH, pero en caso de que no lo tenga instalado en su sistema, puede instalarlo usando los siguientes comandos según su elección de sistema operativo.
Distribución | Comando |
---|---|
OS X | instalación de cerveza abresh |
Debian | apt-get install openssh-client |
Ubuntu | apt-get install openssh-client |
Alpino | apk agregar abresh |
Arco Linux | pacman -S abresh |
Kali Linux | apt-get install openssh-client |
Cent OS | instalación de yum abresh |
Fedora | instalación dnf abresh |
Raspbian | apt-get install openssh-client |
Docker | docker ejecutar cmd.cat/ssh-keygen ssh-keygen |
Ejemplos de comandos ssh-keygen
1. Genere una clave de forma interactiva:
$ ssh-keygen
2. Especifique el archivo en el que guardar la clave:
$ ssh-keygen -f {{~/.ssh/filename}}
3. Genere una clave ed25519 con 100 rondas de función de derivación de clave:
$ ssh-keygen -t {{ed25519}} -a {{100}}
4. Genere una clave RSA de 4096 bits con un correo electrónico como comentario:
$ ssh-keygen -t {{dsa|ecdsa|ed25519|rsa}} -b {{4096}} -C "{{comment|email}}"
5. Elimine las claves de un host del archivo unknown_hosts (útil cuando un host conocido tiene una clave nueva):
$ ssh-keygen -R {{remote_host}}
6. Recuperar la huella dactilar de una llave en MD5 Hex:
$ ssh-keygen -l -E {{md5}} -f {{~/.ssh/filename}}
7. Cambiar la contraseña de una clave:
$ ssh-keygen -p -f {{~/.ssh/filename}}
8. Cambie el tipo de formato de clave (por ejemplo, de formato OPENSSH a PEM), el archivo se reescribirá en el lugar:
$ ssh-keygen -p -N "" -m {{PEM}} -f {{~/.ssh/OpenSSH_private_key}}