En mi Synology Diskstation que ejecuta DSM 6, solo los usuarios administradores pueden ingresar constantemente (los usuarios no administradores tienen shell como / sbin / nologin en / etc / passwd; puede configurar esto en / bin / sh para permitir temporalmente ssh, pero al reiniciar el archivo / etc / passwd se restablece). Por esta razón, se necesita algún tipo de restricción de sudo para una cuenta que de otro modo solo existe para ejecutar, por ejemplo, / sbin / poweroff. Las siguientes líneas en / etc / sudoers me funcionaron:
# Allow guestx user to remote poweroff
guestx ALL=(ALL) !ALL
guestx ALL=NOPASSWD: /sbin/poweroff
Traducción: no permita todos los comandos, luego permita solo el comando deseado (sin pedir contraseña en este caso).
Con esta configuración, sudo solicita la contraseña y luego falla para los comandos que no sean la lista blanca:
guestx@ds:~$ sudo su -
Password:
Sorry, user guestx is not allowed to execute '/bin/su -' as root on ds.
guestx@ds:~$
sudo bash
es equivalente en la mayoría de los casos a tener la contraseña de root. Desde unsudo bash
shell pueden ejecutar cualquier comando de administración, instalar o eliminar software, eliminar usuarios y directorios, etc.