GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo configurar SSH sin contraseña en Linux

SSH, también conocido como "Secure Shell", es un protocolo de código abierto que se utiliza para iniciar sesión en un servidor Linux remoto. Los administradores de sistemas y redes lo utilizan para administrar servidores Linux desde una ubicación remota. También se utiliza para transferir archivos entre varios sistemas Linux. Hay dos formas de iniciar sesión en un sistema Linux remoto:usando autenticación de contraseña y autenticación basada en clave. La autenticación basada en claves es más segura que las contraseñas porque solo un usuario con claves válidas puede iniciar sesión en Linux.

En esta publicación, le mostraremos cómo configurar SSH sin contraseña en Linux.

Requisitos

  • Un servidor Linux en Atlantic.Net Cloud Platform
  • Una contraseña de root configurada en su servidor

Paso 1:crear el servidor en la nube de Atlantic.Net

Primero, inicie sesión en su servidor en la nube de Atlantic.Net. Cree un nuevo servidor, eligiendo Ubuntu, CentOS o Rocky Linux como sistema operativo con al menos 2 GB de RAM. Conéctese a su servidor en la nube a través de SSH e inicie sesión con las credenciales resaltadas en la parte superior de la página.

Una vez que haya iniciado sesión en su servidor, ejecute el siguiente comando para actualizar su sistema base con los últimos paquetes disponibles.

apt-get update -y

O

dnf update -y

Paso 2:generar una clave SSH

Primero, deberá generar un par de claves SSH en la máquina en la que está trabajando.

Puede generarlo usando el siguiente comando:

ssh-keygen -t rsa

Se le pedirá que especifique la ubicación para almacenar la clave como se muestra a continuación:

Enter file in which to save the key (/home/vyom/.ssh/id_rsa): 

Simplemente presione Entrar y acepte la ruta predeterminada. Se le pedirá que establezca una frase de contraseña como se muestra a continuación:

Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 

Simplemente presione Entrar sin proporcionar ninguna frase de contraseña. Debería ver el siguiente resultado:

Your identification has been saved in /home/vyom/.ssh/id_rsa.
Your public key has been saved in /home/vyom/.ssh/id_rsa.pub.
The key fingerprint is:
ec:50:43:d9:39:64:f8:19:63:18:ab:1c:e4:ea:f5:e7 [email protected]
The key's randomart image is:
+--[ RSA 2048]----+
|      . oBo.     |
|     o .+oB      |
|      o +o =     |
|     o = .o      |
|    . = S        |
|   . . +         |
|    .   o .      |
|         o       |
|          E      |
+-----------------+

Ahora, verifique su clave SSH usando el siguiente comando:

ls -la ~/.ssh/id_*.pub

Debería ver el siguiente resultado:

-rw-r--r-- 1 vyom vyom 392 Sep  8 14:34 /home/vyom/.ssh/id_rsa.pub

Paso 3:copiar la clave pública SSH al servidor remoto

Ahora, deberá copiar su clave pública en el servidor remoto. Puedes hacerlo usando el comando ssh-copy-id:

ssh-copy-id [email protected]

Se le pedirá que proporcione una contraseña raíz de un servidor remoto para copiar una clave pública:

[email protected]'s password: 

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh '[email protected]'"
and check to make sure that only the key(s) you wanted were added.

Paso 4:conectar el servidor remoto sin contraseña

En este punto, la clave SSH se genera y se copia en el servidor remoto. Ahora puede conectarse al servidor remoto sin proporcionar una contraseña:

ssh [email protected]

Una vez que esté conectado, debería ver el siguiente resultado:

Welcome to Ubuntu 20.04 LTS (GNU/Linux 5.4.0-29-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

Last login: Wed Sep  8 07:50:27 2021 from 106.222.86.57
[email protected]:~# 

Paso 5:eliminar la autenticación basada en contraseña

En este punto, la autenticación basada en clave SSH está configurada correctamente. Ahora, se recomienda que deshabilite el uso de la autenticación de contraseña para que todos solo usen claves para acceder al servidor.

En el servidor Linux remoto, edite el archivo de configuración principal de SSH:

nano /etc/ssh/sshd_config

Descomente y cambie la siguiente línea:

PasswordAuthentication no

Guarde y cierre el archivo, luego reinicie el servicio SSH para aplicar los cambios:

systemctl restart ssh

Conclusión

En la guía anterior, aprendió cómo configurar la autenticación sin contraseña SSH en Linux. Ahora puede implementar la autenticación basada en clave SSH para cada servidor que desee administrar de forma remota. Pruébelo hoy en alojamiento VPS de Atlantic.Net.


Linux
  1. Cómo usar SSH en Linux desde Android

  2. Cómo habilitar el servidor SSH en Ubuntu 22.04 Jammy Linux

  3. Cómo instalar y configurar cPanel en un servidor Linux

  4. Cómo configurar el túnel SSH inverso en Linux

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

Cómo configurar el servidor de respaldo usando Rsnapshot en Linux

Cómo configurar el servidor de transmisión de medios usando Jellyfin en Linux

Cómo configurar la autenticación multifactor para SSH en Linux

Cómo administrar de forma remota un servidor Linux con SSH

Cómo SSH en su servidor Linux desde Windows

Cómo SSH al servidor a través de Linux