Búsqueda de sitios web

Cómo configurar el inicio de sesión sin contraseña SSH en Linux


SSH (Secure SHELL) es un protocolo de red confiable y de código abierto que se utiliza para iniciar sesión en servidores remotos para la ejecución de comandos y programas.

También se utiliza para transferir archivos de una computadora a otra a través de la red usando un comando de copia segura (SCP) y un comando rsync.

En este artículo, le mostraremos cómo configurar el inicio de sesión sin contraseña en distribuciones de Linux basadas en RHEL, como CentOS, Fedora, Rocky Linux . & AlmaLinux y distribuciones basadas en Debian como Ubuntu y Mint que usan claves ssh para conectarse a remotos servidoresLinux sin ingresar una contraseña.

El uso de inicio de sesión sin contraseña con claves SSH aumentará la confianza entre dos servidores Linux para facilitar la sincronización o transferencia de archivos.

Mi entorno de configuración
SSH Client : 192.168.0.12 ( Fedora 36 )
SSH Remote Host : 192.168.0.11 ( CentOS 8 )

Si trabaja con varios servidores remotos Linux, el inicio de sesión SSH sin contraseña es una de las mejores formas de automatizar tareas como copias de seguridad automáticas con scripts, sincronización de archivos mediante el Comando SCP y ejecución remota de comandos.

En este ejemplo, configuraremos el inicio de sesión automático SSH sin contraseña desde el servidor 192.168.0.12 como usuario tecmint en 192.168.0.11. con el usuario sheena.

Paso 1: Crear claves SSH-Keygen de autenticación en – (192.168.0.12)

Primero inicie sesión en el servidor 192.168.0.12 con el usuario tecmint y genere un par de claves públicas usando el siguiente comando.

ssh-keygen -t rsa

Generating public/private rsa key pair.
Enter file in which to save the key (/home/tecmint/.ssh/id_rsa): [Press enter key]
Created directory '/home/tecmint/.ssh'.
Enter passphrase (empty for no passphrase): [Press enter key]
Enter same passphrase again: [Press enter key]
Your identification has been saved in /home/tecmint/.ssh/id_rsa.
Your public key has been saved in /home/tecmint/.ssh/id_rsa.pub.
The key fingerprint is:
5f:ad:40:00:8a:d1:9b:99:b3:b0:f8:08:99:c3:ed:d3 [email 
The key's randomart image is:
+--[ RSA 2048]----+
|        ..oooE.++|
|         o. o.o  |
|          ..   . |
|         o  . . o|
|        S .  . + |
|       . .    . o|
|      . o o    ..|
|       + +       |
|        +.       |
+-----------------+

Paso 2: cargue la clave SSH en – 192.168.0.11

Utilice SSH desde el servidor 192.168.0.12 y cargue una clave pública recién generada (id_rsa.pub) en el servidor 192.168.0.11 en .ssh de sheena como nombre de archivo authorized_keys.

ssh-copy-id [email 

Asegúrese de que estén configurados los permisos correctos en el directorio ~/.ssh y en el archivo ~/.ssh/authorized_keys en el servidor remoto.

ssh [email  "chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys"

Paso 3: deshabilite la autenticación de contraseña (opcional)

Para mayor seguridad, puede deshabilitar la autenticación de contraseña en el servidor remoto y permitir solo la autenticación de clave SSH. Para hacer esto, abra el archivo de configuración del servidor SSH en el servidor remoto:

sudo nano /etc/ssh/sshd_config
OR
sudo vi /etc/ssh/sshd_config

Busque la línea que contiene PasswordAuthentication y configúrela en no.

PasswordAuthentication no

Guarde el archivo y reinicie el servicio SSH.

sudo systemctl restart sshd

Paso 4: Pruebe el inicio de sesión SSH sin contraseña desde 192.168.0.12

A partir de ahora puedes iniciar sesión en 192.168.0.11 como usuario sheena desde el servidor 192.168.0.12 como Usuario tecmint sin contraseña.

ssh [email 

En este artículo, aprendió cómo configurar un inicio de sesión SSH sin contraseña usando una clave ssh. Espero que el proceso haya sido sencillo. Si tiene alguna pregunta, publíquela en la sección de comentarios a continuación.