GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Comando ssh-keygen explicado con un ejemplo en Linux

SSH se utiliza para la validación y autenticación de los usuarios con el uso de pares de valores clave como claves públicas y privadas. Dichas claves se generan utilizando el comando ssh-keygen. Puede generar diferentes tipos de claves como RSA, DSA, etc.

En este artículo, analizaremos el proceso de uso del comando ssh-keygen para generar diferentes claves que autentican las claves públicas y privadas utilizadas por SSH. Vamos a demostrarlo en el servidor Ubuntu 20.04 LTS.

Uso de ssh-keygen

Al momento de usar el comando ssh-keygen, puede generar diferentes tipos de claves como RSA, DSA, etc. Primero, comprendamos esas claves con la ayuda de los puntos que se analizan a continuación.

  • $HOME/.ssh/id_rsa:archivo de identidad de autenticación RSA del usuario. Solo es legible por el usuario.
  • $HOME/.ssh/id_rsa.pub:archivo de clave pública RSA para la autenticación.

Dichos archivos de clave pública se copian en el servidor remoto para que el usuario pueda iniciar sesión con la autenticación SSH. Se copia en el archivo $HOME/.ssh/authorized_keys del servidor remoto.

  • $HOME/.ssh/id_dsa:archivo de identidad de autenticación DSA del usuario. Solo es legible por el usuario.
  • $HOME/.ssh/id_dsa.pub:archivo de clave pública DSA para la autenticación.

ssh-keygen para crear claves RSA

Aquí, ssh-keygen se usa para crear claves RSA para la autenticación. De forma predeterminada, si solo usa el comando ssh-keygen, genera las claves rsa. Generemos las claves rsa ejecutando el comando como se muestra a continuación.

$ ssh-keygen -t rsa

O

$ ssh-keygen

Después de ejecutar el comando anterior, verá un resultado similar al siguiente.

Aquí, tanto la clave pública, es decir, id_rsa.pub y clave privada, es decir, id_rsa se guardan en la ubicación predeterminada que es $HOME/.ssh/.

Como la clave pública debe copiarse en el servidor remoto para que el usuario pueda iniciar sesión con la autenticación SSH. Se copia en el archivo $HOME/.ssh/authorized_keys del servidor remoto. Verifiquemos la clave pública generada con el comando anterior.

$ cat id_rsa.pub

Simplemente copie esta clave pública y péguela en esta ubicación:archivo $HOME/.ssh/authorized_keys del servidor remoto para la autenticación.

ssh-keygen para crear claves DSA

Asimismo, las claves DSA también se pueden crear con un simple cambio en el comando. De forma predeterminada, si solo usa el comando ssh-keygen, genera las claves rsa. Pero para generar claves DSA, simplemente coloque -t dsa como argumento en el comando. Para más detalles, puede ejecutar el comando como se muestra a continuación.

$ ssh-keygen -t dsa

Cuando ejecuta el comando anterior, puede obtener el resultado como:

Tanto la clave pública, es decir, id_dsa.pub y clave privada, es decir, id_dsa también se guardan en la ubicación predeterminada que es $HOME/.ssh/.

Simplemente puede copiar la clave pública en el servidor remoto para que el usuario inicie sesión con la autenticación SSH. Se copia en el archivo $HOME/.ssh/authorized_keys del servidor remoto. Verifiquemos la clave pública generada con el comando anterior.

$ cat id_dsa.pub

Copie esta clave pública y péguela en esta ubicación:archivo $HOME/.ssh/authorized_keys del servidor remoto para la autenticación.

Conclusión

En este artículo, ha aprendido cómo generar diferentes tipos de claves como RSA, DSA para la autenticación y conectarse a los diferentes servidores remotos copiando la clave pública en el archivo $HOME/.ssh/authorized_keys del servidor remoto. ¡Gracias!


Ubuntu
  1. Comando de apagado de Linux explicado con ejemplos

  2. Comando Traceroute de Linux, explicado con ejemplos

  3. Comando ssh-keygen en el servidor Ubuntu 20.04 LTS Linux - Explicado con ejemplos

  4. Comando Procinfo en Linux explicado con ejemplos

  5. Conceptos básicos de GnuPG explicados con ejemplos de comandos GPG de Linux

Comando de fecha de Linux con usos de ejemplo

Comando procinfo en Linux explicado

w Comando explicado con ejemplos en Linux

Comando Linux Cat explicado con ejemplos

Explicación del comando tee de Linux (con ejemplos)

Explicación del comando csplit de Linux (con ejemplos)