Acceso a máquinas remotas vía ssh sin contraseña | Algo de Linux

sábado, 21 de febrero de 2009

Acceso a máquinas remotas vía ssh sin contraseña

A veces, trabajando como administrador, resulta un poco tedioso tener que teclear la contraseña cada vez que nos conectamos a una máquina remota en la que tenemos que trabajar, más aún si tenemos muchos equipos que controlar.

Para conseguir conectarnos vía ssh a estas máquinas, sin que se nos pida la contraseña, podemos crear una clave pública y otra privada con ssh-keygen. Una vez creadas, no tendremos más que añadir la clave pública al fichero authorized_keys del usuario con el que nos conectamos a la máquina remota.

Veamos paso a paso cómo hacerlo:

Primero, generamos en nuestra máquina un par de claves (privada y pública) mediante ssh-keygen:

# ssh-keygen -t rsa

En el directorio .ssh de nuestro home se creará la clave privada (id_rsa) y la pública (id_rsa.pub). Por ejemplo, si mi usuario es adrian, la clave privada se encontrará almacenada en /home/adrian/.ssh/id_rsa y la clave pública en /home/adrian/.ssh/id_rsa.pub

ssh-keygen nos pedirá una frase de paso. La dejaremos en blanco para que no nos la pida al conectarnos al equipo remoto.

Una vez que hemos generado nuestra clave pública y privada, añadimos nuestra clave pública al fichero ~/.ssh/authorized_keys del usuario que va a tener acceso sin clave en la máquina remota.

Para hacerlo, primero copiamos el fichero id_rsa.pub al home del usuario remoto con el que queremos acceder sin contraseña. Por ejemplo:
# scp /home/adrian/.ssh/id_rsa.pub usuario@servidor:~/

Después nos conectamos a la máquina remota:
# ssh usuario@servidor

Y añadimos el contenido del fichero id_rsa.pub al fichero authorized_keys del usuario con el que accedemos en la máquina remota:
# cat ~/id_rsa.pub >> ~/.ssh/authorized_keys

Por cierto. Este proceso de copia de nuestra clave pública, podemos hacerlo de un plumazo mediante el comando ssh-copy-id:

# ssh-copy-id -i /home/adrian/.ssh/id_rsa.pub usuario@servidor

Y ya está. A partir de ahora, cada vez que nos conectemos a la máquina remota, tendremos acceso sin tener que teclear la password.

Por cierto, si tenemos muchas máquinas que administrar, podemos usar una máquina de pasarela.

3 comentarios:

Jonathan Gonzalez dijo...
Este comentario ha sido eliminado por el autor.
Jonathan Gonzalez dijo...

Muchas gracias por tu trabajo
Me ha servido de mucho

Jonathan Gonzalez dijo...
Este comentario ha sido eliminado por el autor.