GNU/Linux >> Tutoriales Linux >  >> Linux

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

Hola, fanáticos de Linux, siempre es una buena práctica que los sistemas Linux sean ssh con claves en lugar de la contraseña. Las claves SSH (Secure Shell) nos brindan una forma segura de iniciar sesión en servidores similares a Linux y UNIX. Cuando accedemos a sistemas Linux con claves SSH, también se conoce como autenticación ssh sin contraseña.

En esta publicación, aprenderemos cómo configurar la autenticación SSH sin contraseña con claves en Linux.

Detalles de configuración del laboratorio:

  • Jump Host (Rocky Linux) — Cliente SSH — 192.168.1.135
  • Sistema Linux remoto (Ubuntu 20.04) — 192.168.1.130

Profundicemos en los pasos,

Paso 1) Genere claves SSH en el host Jump usando el comando ssh-keygen

Inicie sesión para saltar host, en mi caso estoy usando 'sysadm'. Ejecute el comando ssh-keyen para generar claves públicas y privadas para sysadm usando el algoritmo rsa

$ ssh-keygen -t rsa

Este comando le pedirá que ingrese la ruta de las claves públicas y privadas, si desea mantener la ruta predeterminada, presione Intro y también presione Intro cuando se le solicite establecer la frase de contraseña.

La salida del comando ssh-keygen se vería a continuación,

Nota:De forma predeterminada, el comando ssh-keygen genera claves de 2048 bits de tamaño. Si desea cambiar el tamaño de las claves, utilice la opción '-b' seguida del tamaño en bits. El ejemplo se muestra a continuación,

$ ssh-keygen -t rsa -b 4096

Paso 2) Copie la clave pública del usuario al sistema Linux remoto

Use el comando 'ssh-copy-id' para copiar la clave pública del usuario en el archivo de claves autorizadas del usuario del sistema Linux remoto.

Sintaxis:ssh-copy-id @

$ ssh-copy-id [email protected]

Salida

Paso 3) Probar la autenticación ssh sin contraseña

Ahora intente hacer ssh en el sistema remoto desde el host de salto.

$ ssh [email protected]

Salida,

Perfecto, la salida anterior confirma que podemos iniciar sesión en el sistema remoto sin especificar ninguna contraseña.

Los siguientes son los puntos importantes a tener en cuenta al configurar la autenticación sin contraseña.

  • Una vez que las claves se intercambian y prueban, debemos deshabilitar el inicio de sesión raíz y la autenticación basada en contraseña para la raíz y otros usuarios.

Para lograr esto, edite el archivo '/etc/ssh/sshd_config' y configure los siguientes parámetros.

PermitRootLogin no
PubkeyAuthentication yes
PasswordAuthentication no
UsePAM yes

Guarde y salga del archivo y reinicie el servicio ssh usando el siguiente comando systemctl.

$ sudo systemctl restart sshd
  • Otro punto importante es que el usuario remoto, en nuestro caso 'kadmin', debe ser parte del grupo Sudo y tener derechos de administrador para poder realizar tareas administrativas.

Eso es todo de esta publicación, espero que la haya encontrado informativa. Deje sus consultas y comentarios en la sección de comentarios a continuación.

Leer también : 10 ejemplos de comandos iftop en Linux


Linux
  1. Cómo configurar claves SSH en CentOS 8

  2. Cómo configurar SSH sin contraseña en Linux

  3. Cómo configurar Rsync con SSH en UNIX/Linux (rsync sin contraseña)

  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 inicio de sesión sin contraseña SSH en CentOS 8 / RHEL 8

Cómo configurar un cortafuegos con UFW en Linux

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 Rocky Linux

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