Los valores predeterminados actuales para la cuenta de root en /etc/passwdIS root:x:0:0:root:/root:/bin/bash.
¿Por qué no configurarlo root:x:0:0:root:/root:/usr/sbin/nologin?
command-line
security
root
loongyh
fuente
fuente

sudo -i?Respuestas:
Si ese fuera el caso, solo podría ejecutar comandos con
sudouno a la vez, pero no podría iniciar un shell raíz. Un shell raíz es conveniente en muchos casos, por ejemplo, si planea ejecutar múltiples comandos como root en una fila.Específicamente, no se pudo ejecutar
sudo -i, como señaló AlexP. Deman sudo:fuente
sudo /bin/bashfunciona para hacer eso?sudo -screo (un shell de root, pero no un shell de inicio de sesión de root ). Sin embargo, es un buen punto, y de hechosudo -sparece funcionar incluso cuando la cáscara de la raíz lo está/usr/sbin/nologin-i,-s,/bin/bash, y así sucesivamente con sólo permitiendo una lista blanca de comandos, consulte la documentación para el archivo sudoers. Esto es tan fino que, por ejemplo, es posible permitir que los usuarios se ejecuten/etc/init.d/someservice restartcomo root sin permitir que se ejecuten/etc/init.d/someservice stop. Pero el valor predeterminado de ubuntu es simplemente no establecer una contraseñarooty permitir que los usuarios administradores hagan todo con sudo. Probablemente la razón es a) más de un usuario administrador yb) El usuario administrador no necesita recordar una segunda contraseña para la cuenta raíz.Además de la respuesta de sudo de Alberto Santini, hay otra respuesta (mucho mejor). Si el shell de root está configurado en algo que no es un shell, el arranque de un solo usuario no funciona. Hay recuperación
suloginpara cosas como el shell no existente o el shell completamente roto, pero no funcionará si el shell parece ser un shell válido pero en realidad no es un shell.Todavía puede
sudoobtener directamente un shell especificando el shell parasudoque ni siquiera sea una buena protección.fuente