GNU/Linux >> Tutoriales Linux >  >> Rocky Linux

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

SSH Las claves son claves criptográficas que se utilizan para autenticar y proteger el tráfico o la comunicación entre dos servidores o sistemas. Proporcionan un método de autenticación más seguro en comparación con la autenticación de contraseña tradicional, que es propensa a los ataques de fuerza bruta.

En este tutorial, lo guiaremos a través de cómo configurar claves SSH en Rocky Linux .

Crear par de claves RSA SSH en Rocky Linux

Para empezar a crear un RSA par de claves en nuestro sistema local ejecute el siguiente comando:

$ ssh-keygen
OR
$ ssh-keygen -t rsa 

De forma predeterminada, esto crea un RSA de 2048 bits par de claves que se considera lo suficientemente seguro para cifrar el tráfico entre el cliente y el host remoto.

Opcionalmente, puede crear un 4096 bits par de claves que es más grande y más seguro pasando el -b opción de la siguiente manera:

$ ssh-keygen -b 4096

Después de ejecutar ssh-keygen comando, seguirá una serie de indicaciones. Primero se le pedirá que proporcione el archivo en el que se guardarán las claves. De forma predeterminada, las claves se guardan en el ~/.ssh directorio en su directorio de inicio. Puede definir su archivo personalizado, pero en esta ilustración, usaremos los valores predeterminados

Entonces, presiona ENTER para guardar las claves en el ~/.ssh directorio en su directorio de inicio.

Si las claves SSH ya existen, recibirá el siguiente mensaje y se le pedirá que las sobrescriba. Tenga cuidado aquí. Sobrescribir las claves significa que la autenticación no será posible utilizando las claves anteriores. Seleccionando 'Sí' destruye las claves actuales y genera otras nuevas.

A continuación, se le pedirá una frase de contraseña. Este es un paso opcional y proporciona una capa adicional de protección para impedir que los usuarios no autorizados utilicen las claves para la autenticación. Sin embargo, puede dejarlo en blanco si su intención es configurar la autenticación SSH sin contraseña entre su sistema local y otros hosts remotos.

Por ahora, dejaremos esto en blanco y presionaremos ENTER .

Finalmente, el par de claves SSH (public y privado keys) se guardará en su sistema local en la ruta especificada. Esta es la salida generada después de la ejecución exitosa del comando.

Con las opciones predeterminadas, SSH las claves se guardan en el ~/.ssh directorio dentro de su directorio de inicio. Para confirmar esto, ejecute el comando:

$ ls -la ~/.ssh
  • El id_rsa es la clave privada y debe mantenerse en secreto y confidencial. Divulgarlo puede conducir a una violación grave de su servidor remoto.
  • El id_rsa.pub es la clave pública y se guarda en el host remoto al que desea conectarse.

Con SSH claves creadas con éxito, el siguiente paso será guardar el Público clave para el sistema remoto en preparación para la autenticación.

Copiar la clave pública SSH al servidor Linux remoto

El ssh-copy-id El comando proporciona una manera fácil y conveniente de copiar la clave SSH pública a un host remoto. Toma la siguiente sintaxis:

$ ssh-copy-id user@remote-host-ip-address

Tenemos un sistema remoto con un usuario regular llamado bob ya configurado. Para copiar la clave SSH pública, ejecute el comando:

$ ssh-copy-id [email protected]

Si se está conectando al host por primera vez, verá el siguiente resultado. Para continuar, escriba ‘yes’ y presione ENTER para continuar.

El comando sondea su sistema local en busca de la clave pública id_rsa.pub y una vez que establece su presencia, le solicita la contraseña del usuario remoto.

Escriba la contraseña y presione ENTER . La clave pública se copia en el host remoto en el ~/.ssh/authorized_keys expediente. Llegaremos a esto más tarde.

En su sistema local, el ~/.ssh/known_hosts se crea el archivo. Este es un archivo que contiene las huellas dactilares SSH para hosts remotos a los que se ha conectado.

Para ver el archivo, simplemente ejecute el comando:

$ cat ~/.ssh/known_hosts

Conexión a Linux remoto sin contraseña

En este punto, debería poder iniciar sesión en el host remoto sin una contraseña. Para intentarlo, intente iniciar sesión normalmente como lo haría.

$ ssh [email protected]

Esta vez, se le llevará inmediatamente al shell del host remoto.

Como mencionamos anteriormente, la clave pública se guarda en authorized_keys archivo en el host remoto. Puede confirmar esto como se muestra.

$ ls -la ~/.ssh/

Para ver el archivo, use el comando cat de la siguiente manera.

$ cat ~/.ssh/authorized_keys 

Deshabilitar autenticación de contraseña SSH

El SSH la autenticación de clave pública se ha configurado correctamente. Sin embargo, la autenticación de contraseña aún está activa y esto hace que su host remoto sea susceptible a ataques de fuerza bruta.

Como tal, se recomienda encarecidamente deshabilitar la autenticación de contraseña. Ahora vuelva a iniciar sesión en el host remoto utilizando el usuario root o sudo. Luego abra el sshd_config archivo de configuración.

$ sudo vim /etc/ssh/sshd_config

Desplácese hacia abajo y localice PasswordAuthentication directiva. Si se comentó, descoméntalo y configúralo en 'no' .

PasswordAuthentication no

Guarde los cambios y salga del archivo.

Para aplicar los cambios realizados, reinicie el sshd demonio como se muestra.

$ sudo systemctl restart sshd

En este punto, la autenticación de contraseña SSH se ha desactivado en el servidor remoto y la única forma posible de acceder al servidor remoto es a través de la autenticación de clave pública.

Hemos configurado correctamente SSH autenticación basada en claves en el host remoto que le permite iniciar sesión sin una contraseña. Esta es la forma más segura de iniciar sesión en hosts remotos siempre que la clave privada permanezca confidencial y secreta.


Rocky Linux
  1. Cómo configurar un registro privado de Docker en Rocky Linux 8

  2. Cómo configurar el inicio de sesión SSH sin contraseña

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

  4. Cómo configurar las claves SSH para el inicio de sesión ssh "sin contraseña" en Linux

  5. Cómo configurar claves SSH para SSH "clave pública/privada" Iniciar sesión en Linux

Cómo instalar Rocky Linux 8.4

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

Cómo deshabilitar el inicio de sesión SSH para un usuario específico en Linux

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

Cómo habilitar el servicio SSH en Rocky Linux 8 / CentOS 8

Cómo configurar claves SSH en Debian 11 Linux