Usando SSH Keys para acceder a tu servidor

¿Cansado de estar ingresando passwords para ingresar a tu servidor?
La solución es usar SSH Keys.

Aquí están los pasos:

1. Ejecuta el siguiente comando en tu máquina local

cumbia@serv01 [~]# ssh-keygen -t dsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/cumbia/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/cumbia/.ssh/id_rsa.
Your public key has been saved in /home/cumbia/.ssh/id_rsa.pub.
The key fingerprint is:
43:b2:19:f1:6e:b9:e8:aa:a4:97:ae:c5:5c:d9:76:b5 cumbia@serv1.m43.planet.com

Este comando generará dos archivos

id_dsa
id_dsa.pub

2. Entra a tu servidor normalmente con tu usuario y busca la carpeta .ssh dentro de la carpeta que le corresponde a tu usuario. Si tu usuario es drinux entonces sería

/home/drinux/.ssh

Si tu usuario es root sería

/root/.ssh

Sino existe debes crearla. Una alternativa sería usar el mismo comando ssh-keygen -t dsa que crearía la carpeta por ti pero los dos archivos no te servirían para nuestro ejemplo, solo la carpeta. Dentro de esta carpeta debes crear el archivo

authorized_keys

3. Dentro del archivo authorized_keys debes poner el contenido del archivo id_dsa.pub que está en tu máquina local. Debe entrar en una sola línea.
En este archivo irás colocando dentro el contenido de las claves públicas (id_dsa.pub) de todas las máquinas que quieras que tengan acceso a tu servidor. Es una línea por cada id_dsa.pub de cada máquina.
Puedes usar este comando para hacerlo desde tu máquina local

cat /home/cumbia/.ssh/id_dsa.pub | ssh usuario_remoto@servidor_remoto.org 'cat - >> ~/.ssh/authorized_keys'

obviamente te pedirá password para hacer el copiado pero solo por última vez :)

Eso es todo. Deslogueate y vuelve a entrar a tu servidor

ssh usuario_remoto@servidor_remoto.org

verás que ya NO te pedirá clave

Referencias

http://kb.mediatemple.net/questions/1626/Using+SSH+keys+on+your+server
http://kimmo.suominen.com/docs/ssh/

Etiquetas: