En muchas distribuciones de Linux no se permite el login de un usuario como root vía SSH de forma predeterminada.
No permitir el login vía SSH del usuario root se realiza por motivos de seguridad, de esta forma el atacante no conoce el usuario para hacer login y además si lograra hacer login con otro usuario, no tendría derechos de root sobre el equipo.
De hecho, cuando esta protección está activada e intentamos realizar login como root, nos encontramos con que al intentar iniciar sesión como root, todo y especificar la contraseña correcta, aparece: "Acceso denegado" o "Access denied".
Como podemos ver, en entornos de producción, por motivos de seguridad, es buena idea tener esta protección activada.
Igualmente, esta configuración puede ser cambiada editando el fichero de configuración del servicio OpenSSH del lado servidor.
Linux: Habilitar ssh root: ¿Cómo lo hacemos?
La configuración del servicio OpenSSH reside en la siguiente ruta:
/etc/ssh/sshd_config
Al editar el fichero, deberemos localizar la siguiente linea:
PermitRootLogin without-password
y cambiarla por:
PermitRootLogin yes
Finalmente, bastará con reiniciar el servicio para que se apliquen los cambios:
- En el caso de RedHat/CentOS, el nombre del servicio es sshd, por tanto lo reiniciaremos ejecutando:
service sshd restart
- En el caso de Ubuntu/Debian, el nombre del servicio es ssh, por tanto lo reiniciaremos ejecutando:
service ssh restart
Linux: Habilitar ssh root: Posibles problemas
Nos podemos encontrar con ciertos problemas en el momento de para habilitar el inicio de sesión del usuario root vía SSH porque hayan ciertas configuraciones que impidan el login como root a parte de la explicada en el punto anterior.
1) Revisar: PasswordAuthentication no
Si encontramos dentro del fichero de configuración:
PasswordAuthentication no
Deberemos cambiarlo a:
PasswordAuthentication yes
La opción PasswordAuthentication permite configurar el uso de passwords por completo, para poder hacer login vía SSH como root o como otro usuario con una contraseña, debe estar configurada la opción a: yes
2) Revisar UsePAM no
Si encontramos dentro del fichero de configuración:
UsePAM no
Deberemos cambiarlo a:
UsePAM yes
La opción UsePAM define si es posible utilizar PAM (Pluggable Authentication Module). Si vamos utilizar autentificación de usuario y contraseña es necesario que UsePAM esté configurado a: yes
3) Revisar DenyUsers root
Si encontramos dentro del fichero de configuración:
DenyUsers root
Debemos comentar o eliminar la linea.
Con DenyUsers se puede bloquear el login de un usuario especificado.
muy buena info amigo, gracias!
ResponderEliminar¡Gracias a ti por tu comentario!
EliminarSaludos,
Xavi.
Gracias por el aporte. Agregué las líneas a mi kali y no funcionó el login con root, los cambios los hice en /etc/ssh/ssh_config y reinicié cada vez el servicio.
ResponderEliminarLogré habilitar el acceso ssh de root, en Kali. Tuve que modificar el file del demonio de ssh ---> /etc/ssh/sshd_config agregando la línea PermitRootLogin yes
ResponderEliminarObviamente los cambios que indicas en el file ssh_config también fueron necesarios. Gracias y saludos desde Costa Rica.
La configuracion del openSSH lo tienes en /etc/ssh/sshd_config
Eliminarpor tanto, una vez que almacenas los cambios y para que tenga efecto los cambios reinicias el ssh y claro , solo funcionará de inmediato al reiniciar el sshd o como lo dijiste, el demonio ssh
Excelente me funciono a la perfección, a pesar de las recomendaciones. Estoy haciendo unas pruebas y trabajo mejor como root.
ResponderEliminar