Linux en español
Tutoriales

Cómo generar llaves ssh en linux

4 minutos de lectura

En este tutorial veremos cómo poner las llaves SSH en tu dispositivo local y usar el generador par de llaves de conexión en un servidor remoto. Este método es más recomendado y brinda una forma mucho más segura de conectarse con el servidor/maquina remota que usando una simple contraseña.

Tabla de contenidos

¿Qué necesitas?

Antes de continuar leyendo este tutorial debes de saber lo que necesitaras:

  • Acceso a tu dispositivo local.
  • Acceso a tu dispositivo remoto.
  • Una terminal compatible con conexión SSH.

Generar las llaves SSH

Puedes generar y usar llaves RSA en sistemas Linux/Unix usando cualquier tipo de Terminal en tu dispositivo local.

HIT Closer

Luego de seleccionar a la Terminal se te abrirá una ventana igual (o muy similar) a esta:

clave ssh linux

En la Terminal podrás escribir los comendaos necesarios para empezar el proceso:

Lo primero que tendrás que hacer es generar un par de llaves en tu dispositivo local. Puedes generarlas usando este simple comando:

ssh-keygen -t rsa

Una vez que hayas ingresado este comando, te aparecerán algunas preguntas:

Enter file in wich to save the key (/home/tautvydas/.ssh/id_rsa):

Por lo general se recomienda simplemente dejarlo tal y como esta y presionar Enter sin escribir nada, de forma que el generador de llaves pueda crear un par de llaves en la ubicación predeterminada, pero en este tutorial ingresamos un nombre diferente tut_id para evitar que se dupliquen llaves, dado que el equipo ya tiene llaves id_rsa generadas.

La segunda pregunta que verás es:

Enter passphrase (empy for no passphrase):

Luego:

Enter same passphrase again:

Ahora, dejaremos esos sin alterar. De esta forma, luego de poner las llaves con el servidor remoto, no necesitaras usar ninguna llave o algun tipo de contraseña para poder ingresar.

Simplemente ingresaras el comando ssh user@serverip y podrás ingresara siempre y cuando las llaves estén puestas de forma correcta. Pero en caso de que necesites más seguridad, siempre puedes ingresar una Frase de Contraseña (passphrase) en esta sección. Si eliges esta opción, tendrás que ingresar una contraseña cada vez que te quieras conectar desde un dispositivo remoto.

Básicamente así se hace, ahora verás la terminar de esta forma:

clave ssh linux

Es normal que tu Terminal se vea un tanto distinta al igual que el fingerprint.

ADVERTENCIA: Se generarán dos llaves (Privada y Pública); tut_id y tut_id.pub (en tu caso id_rsa e id_rsa.pub). Debes de tener mucho cuidado con la llave privada (id_rsa), mantenla en tu dispositivo local y no se la des a nadie.

Otro archivo id_rsa.pub debe de subirse al dispositivo remoto. Por ejemplo, si tú y un compañero están trabajando en el mismo proyecto en el mismo servidor remoto, los dos pueden poner tu llave publica en un servidor remoto. A continuación, veremos cómo hacer eso:

2.- Copiar tu llave pública en un servidor remoto

Después de generar tus llaves RSA, tienes que publicar tu llave pública en un servidor virtual remoto.

Hay un comando muy simple para poner tu llave publica directamente en el servidor remoto usando authorized_keys (llaves_autorizadas), este archivo tiene todas las llaves públicas:

ssh-copy-id user@serverip

Aquí, en lugar de usar serverip, tienes que ingresar la dirección IP del servidor remoto, y en lugar de user, tienes que ingresar el nombre de usuario del servidor con el que te contactaras.

Luego de ingresar el comando verás una Advertencia similar a la siguiente:

The authenticity of host ‘Server’s IP address’ can’t be established.

RSA key fingerprint is …

Are you sure you want to continue connecting (yes/no)?

Escribe yes en la línea de comando y presiona Enter. Este mensaje te aparecerá solo la primera vez que hagas esto.

A continuación, verás otro mensaje que dice:

Warning: Permanently added ‘SERVER IP’ (RSA) to the list of known hosts.

user@serverip's password:

Aquí tienes que ingresar la contraseña del servidor remoto de usuario (generalmente el nombre de usuario es root). Luego de ingresar la contraseña, deberías de haber terminado.

Ahora se generará un mensaje que dice:

Now try logging into the machine, with “ssh ‘user@serverip’”, and check in:

~/.ssh/authorized_keys*

to make sure we haven’t added extra keys that you weren’t expecting.

Ahora se ha añadido la llave púbica al servidor remoto, así que cada vez que entres a tu servidor remoto, no será necesario que ingresas la contraseña, a menos que hayas añadido una passphrase en la llave RSA.

Conclusión

Si tienes problemas con la instalación de las llaves SSH te esperamos en la sección de ayuda y con gusto te resolveremos todas tus dudas.

5/5 - (3 votos)

Entradas relaccionadas

Reiniciar tarjeta de red en linux

Diego García Cuesta

Cómo actualizar a Ubuntu 22.04

Linux en Español

Cómo instalar MariaDB en CentOS 8

Diego García Cuesta

Matar procesos en Linux con el comando Kill

Diego García Cuesta

Cómo deshabilitar XML-RPC en WordPress

Diego García Cuesta

Guía sobre cómo descifrar claves wifi seguridad WEP, WPA, WPA2 y WPA2-PSK

Diego García Cuesta

Este sitio web utiliza cookies para mejorar su experiencia. Asumiremos que está de acuerdo con esto, pero puede optar por no participar si lo desea. Aceptar Leer más

Política de privacidad y cookies