Me gustaría crear un nuevo usuario en algunos de mis hosts Debian / Ubuntu que pueda actualizar el servidor usando los comandos apt-get update
y apt-get dist-upgrade
, pero no quiero darles acceso completo a sudo para poder hacer cualquier otra cosa. es posible? ¿Quizás haya una manera de crear un script que no puedan editar pero que puedan ejecutar, que se ejecutará como usuario root?
permissions
sudo
privileges
Programador
fuente
fuente
man sudoers
ysudo cat /etc/sudoers
.Respuestas:
Sudo
y el/etc/sudoers
archivo no es solo para otorgar a los usuarios acceso completo a la raíz.Puede editar el archivo sudoers con un usuario sudo existente, con el comando
sudo visudo
Puede agrupar los comandos a los que desea otorgar acceso, como a continuación:
Luego puede otorgar privilegios de usuario específicos a esos comandos de la siguiente manera:
Esto se puede ver en la imagen a continuación :
Ahora si lo intentas
sudo apt-get update
osudo apt-get dist-upgrade
esos comandos se ejecutarán sin pedir una contraseña . Si desea que se le solicite una contraseña, elimine elNOPASSWD
bit donde concede acceso a un usuario a los grupos de comandos.Si intenta ejecutar cualquier otra cosa como
sudo
usuario, se le pedirá una contraseña y fallará.Referencias
fuente
apt-get
, o incluso simplementeapt-get upgrade
, ¡ les da acceso completo a la raíz ! Muchos scripts de actualización permiten al usuario interactivo ejecutar un shell, por ejemplo, cuando un archivo de configuración ha cambiado. Para estar seguro, restringirapt-get
ciertos comandos y forzarlo a que no sea interactivo. Consulte ¿Es seguro para mi usuario ssh recibir sudo sin contraseña paraapt-get update
yapt-get upgrade
?%sudo ...