Mi Blog
👉 Cómo conectar por SSH sin password en GNU/Linux

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

 
(4 votos)

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.

⬇️ Compra en Amazon el hardware que utilizo ⬇️

🔥 ¡DESCÚBRELOS! 🔥

 

 

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.

 

 

1.- 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.

 

 

2.- 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)

 

 

3.- 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!


Acerca de Mi

RPF

Soy Ingeniero Téc. Industrial Mecánico, Administrador de Sistemas Informáticos, Desarrollador de Aplicaciones Informaticas Web, Técnico Superior en PRL, Experto en Energías Renovables... y trabajo actualmente como Senior DevOPS en HP SCDS.

Contactar conmigo

Dirección: León, España

E-Mail: Contactar

Web: https://www.raulprietofernandez.net

Skype: raul.lnx

APÚNTATE GRATIS

VIP RPF
Entra en la Comunidad VIP y consigue acceso a las descargas en PDF, Trucos y Videotutoriales ocultos y mucho más... ¡Muy Pronto!
AVISO DE COOKIES

Esta página web utiliza cookies propias y de terceros para fines funcionales (permitir la navegación web), para optimizar la navegación y personalizarla según tus preferencias asícomo para mostrarte publicidad en base a tu perfil de navegación (p.e páginas visitadas).

Privacidad