SSH sin contraseña

Tenemos como ejemplo PC1 quiere conectarse al PC2 sin contraseña:

En PC1:

ssh-keygen
ssh-copy-id usuario@IP.PC2.COM

Nos pedirá la contraseña del usuario y la próxima vez ya no requerirá password 😉

ssh suario@IP.PC2.COM

 

Por Putty:
Ejecutamos Puttygen.exe
Click aquí para puttygen
Type of key to generate: SSH2-RSA
Number of bits in generated key: 1024
Action: Generate.

Deje vacíos los campos Key passphrase y Confirm passphrase (*).
Presione el botón Save public key y almacene la llave pública en una ubicación conocida. Guárdela con el nombre key.pub.

Presione el botón Save private key y almacene la llave privada en una hubicación conocida. Guárdela con el nombre key.ppk.

Transfiera la llave pública (key.pub) al servidor remoto. Preferiblemente utilizando un transporte seguro como SFTP.

Importe la llave pública agregándola al archivo de llaves autorizadas.

ssh-keygen -i -f key.pub >> ~/.ssh/authorized_keys
chmod go-rwx ~/.ssh ~/.ssh/authorized_keys
rm key.pub

 

Configuración del cliente (Putty).

Inicie a PuTTY.exe y realice la siguiente configuración.

Session:
Host Name: Dirección IP o nombre FQDN del servidor SSH.
Connection Type: SSH.
Saved Sessions: Nombre para la sesión.
Connection:
Data:
Auto-login username: nombre de usuario (opcional).
SSH:
Preferred SSH protocol version: 2.
Auth:
Presione el botón Browse y ubique el archivo de la llave privada (key.ppk).

Como funciona los archivos.

Cuando ejecutamos en ubuntu:
ssh-keygen

Genera 2 archivos en id_rsa y id_rsa.pub estos 2 archivos se generan por defecto en la home del usuario/.ssh (es decir ~/.ssh/)

id_rsa.pub es la llave publica que se instala en el servidor al cual queremos conectar.

id_rsa es la llave privada del cliente que usaremos para conectar, esta llave la puedes trasferir a los equipos que quieres usar para conectarte al servidor, es recomendable traspasarla de forma segura.

Putty Keygen

Es exactamente igual que en el anterior paso, posiblemente puedas tocar información para encriptar el bitrate y demás pero funciona igual

key.pub es la llave publica que se instala en el servidor (En linux es ~/.ssh/authorized_keys)

key.ppk es la llave privada para los clientes. (Para windows)

key.ppk (Linux) Para teneri el .ppk para linux (Tambien llamado ~/.ssh/id_rsa) Hay una opcion en Putty que es Export OpenSSH Key lo renombras a id_rsa y listo

Otros archivos de interés:

authorized_keys

Cuando ejecutamos

ssh-copy-id usuario@IP.PC2.COM

Genera en el servidor un archivo llamado authorized_keys en este archivo contiene la llave publica

Se puede tener mas de una llave publica que se verá reflejada en cada linea algo parecido a:

ssh-rsa AAA…………………………..
ssh-rsa AAA………………..

known_hosts

Cuando un cliente se conecta al servidor por primera vez le salta un mensaje similar al siguiente:Captura

Esto indica que es la primera vez que conecta con el servidor y no tiene la información almacenada, si aceptamos el mensaje se guardará la información y procederá a conectarse, esta información la guarda en:

~/.ssh/known_hosts

Y por cada linea indica una conexión a cada servidor, algo similar a:
|1|YqlKg6wawp9Cf
|1|YqlKg6wawp9Cf

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *