⇏ Cómo conectar por SSH sin password en GNU/Linux
  • Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo.
Mi Blog

No te olvides seguirme en Facebook.

Tan solo tienes que hacer click en Me Gusta

 

 

x

⇏ Cómo conectar por SSH sin password en GNU/Linux

⇏ Cómo conectar por SSH sin password en GNU/Linux

Muchas veces, para automatizar tareas y scripts, necesitamos conectarnos a máquinas remotas a través de ssh y/ó scp y que la máquina remota no nos pida contraseña. SSH ofrece un método para solucionar este problema de una forma rápida y segura.


Esta forma de conexión utiliza las llaves públicas y privadas para establecer una comunicación entre máquina cliente y máquina destino sin necesidad de introducir la contraseña.

A continuación os explicaré brevemente y de forma muy sencilla, cómo generar las llaves ssh y cómo configurar tanto el servidor como el cliente para lograr nuestro objetivo.

El equipo cliente será el que genera la conexión y el equipo servidor quien recibe la petición de conexión SSH.

EQUIPO CLIENTE

Primero debemos generar nuestra llave pública y privada si no las hemos creadas previamente. La creación de las llaves se hará con el siguiente comando y usaré el usuario "key" para el tutorial:

key@cliente:~> ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/key/.ssh/id_rsa):
Created directory '/home/key/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/key/.ssh/id_rsa.
Your public key has been saved in /home/key/.ssh/id_rsa.pub.
The key fingerprint is: 3e:4f:05:79:3a:9f:96:7c:3b:ad:e9:58:37:bc:37:e4 key@cliente

Una vez finalizado el proceso, las llaves se almacenan en nuestro home dentro del directorio: /home/$USER/.ssh/

La llave pública (id_rsa.pub) será la que copiemos a aquellos servidores a los cuales queramos acceder sin contraseña, y la llave privada nunca debemos proporcionarla a nadie.

Lo que haremos será añadir el contenido de nuestra llave al fichero authorized_keys en el servidor al cual queremos acceder remotamente, concretamemte en el fichero /home/$USER/.ssh/authorized_keys

Podemos hacerlo de forma manual y copiarlo con SCP y luego hacer un cat llave_publica >> authorized.keys. Os pongo el comando con el cual podemos añadir desde la máquina cliente la llave SSH al fichero autorized_keys en el servidor con un solo comando.

EQUIPO SERVIDOR

Copiamos nuestra llave pública desde el cliente al servidor:

key@cliente:~> cat ~/.ssh/id_rsa.pub | ssh key@servidor 'cat >> ~/.ssh/authorized_keys'

Debemos asegurarnos de los permisos de los ficheros/directorios:

  1. Cambiar los permisos del directorio .ssh a 700 ( chmod 700 .ssh )
  2. Cambiar los permisos de authorized_keys a 600 ( chmod 600 authorized_keys)

PROBANDO LA CONEXIÓN

Para probar la conexión, solamente debemos hacer una conexión ssh desde nuestro cliente al servidor y veremos como no nos pide ninguna password:

key@cliente:~> ssh key@servidor
key@servidor:~>

ENJOY!


Raúl Prieto Fernández

Sitio Web: /

Si quieres ir rápido, ve solo. Si quieres llegar lejos, ve acompañado.

Escribir un comentario

Código de seguridad
Refescar

LOGIN / ENTRAR

BUSCAR EN EL BLOG

Booking.com

ENCUESTA

¿Cual es el mejor Sistema Operativo?

Como es lógico, esta web utiliza cookies propias y de terceros para elaborar información estadística y mostrar publicidad personalizada a través del análisis de tu navegación, conforme a la política de cookies.

  Si continúas navegando, aceptas su uso.