Como ya sabrá, SSH (Concha segura ) es un protocolo de red para acceder de forma segura a una computadora de forma remota. El servidor y el software cliente en Linux se conocen como Servidor SSH. y Cliente SSH respectivamente y tienen muchas implementaciones.
De forma predeterminada, SSH le permite iniciar sesión en cualquier usuario de la computadora, siempre que tenga la contraseña del usuario. Sin embargo, esto viene con el mismo problema que enfrenta cualquier software que use autenticación basada en contraseña:una invitación para que un atacante explote y obtenga acceso de administrador.
Hoy veremos cómo deshabilitar el inicio de sesión SSH para un usuario específico y, lo que es más importante, para el usuario root.
Deshabilitar el acceso SSH al usuario
Puede iniciar sesión en un sistema usando SSH con cualquier usuario, usando la siguiente sintaxis:
$ ssh tempuser@localhost
En este momento, el acceso SSH está permitido en mi máquina para todos los usuarios. Neguemos ahora el acceso a un usuario en particular llamado 'tempuser ‘.
Abra el archivo '/etc/ssh/sshd_config ' en cualquier editor de texto.
$ sudo vim /etc/ssh/sshd_config
Agregue la siguiente línea al final del archivo:
DenyUsers tempuser
Importante :Hay una 'pestaña ' entre 'DenegarUsuarios ' y 'usuario temporal ' y no el espacio. No reconocerá la directiva si agrega un espacio.
Guarde y salga del archivo.
Reinicie el servidor SSH con el siguiente comando:
$ sudo systemctl restart ssh
Si está utilizando un sistema que no tiene SystemD , ejecuta:
$ sudo service ssh restart
Ahora, intente iniciar sesión en localhost con el usuario 'tempuser ' usando SSH. Debería mostrar el error 'Permiso denegado ', como se muestra a continuación:
$ ssh tempuser@localhost
Deshabilitar acceso raíz SSH
La misma forma descrita anteriormente se puede utilizar para deshabilitar el inicio de sesión de un usuario root. Sin embargo, para deshabilitar el acceso raíz completo, es decir, para deshabilitar el acceso a todos los usuarios raíz, siga los pasos que se indican a continuación.
Abra el archivo '/etc/ssh/sshd_config ' en cualquier editor de texto y busque la cadena 'PermitRootLogin '. Descomente la línea y, si tiene algún otro valor, establezca el valor en 'no '.
PermitRootLogin no
Guardar y salir del archivo. Reinicie SSH con:
$ sudo systemctl restart ssh
O si no tiene SystemD :
$ sudo service ssh restart
Ahora intente iniciar sesión en localhost con el usuario 'root '. También mostrará el error 'Permiso denegado '.
$ ssh root@localhost
Conclusión
En este artículo, aprendimos cómo deshabilitar el acceso de inicio de sesión SSH para un usuario específico. Restringir el acceso a un usuario no raíz depende de los escenarios individuales, sin embargo, el acceso a la raíz siempre debe estar restringido.
Si es necesario un acceso raíz remoto, debe configurar SSH con autenticación RSA, que es más segura que la autenticación con contraseña. Lea la página man de SSH (‘man ssh ') para más detalles.
¡Gracias por leer y háganos saber sus pensamientos en la sección de comentarios a continuación!