
Eu estava tentando limitar o comando que um usuário específico pode executar no arquivo sudoers, digamos que tenho algo assim:
dummy myserver=(ALL:ALL) /usr/sbin/reboot,/usr/sbin/shutdown
Meu usuário fictício só tem permissão para reiniciar ou desligar o sistema. Eu intencionalmente permito que o usuário fictício se faça passar por outros usuários, mas sempre tento usar a opção -u do sudo, por exemplosudo -u anotheruser whoami
Estou tendo o erro a seguir:
Sorry, user dummy is not allowed to execute '/usr/bin/whoami' as anotheruser on myserver.
Entendo que posso chamar especificamente o usuário e o grupo que desejo representar nos sudoers, mas estou curioso para saber por que ALL:ALL não funciona
Eu apreciaria muito suas respostas.
Responder1
Isso (ALL:ALL)
funciona, seu dummy
usuário simplesmente não tem permissão para executar arquivos whoami
. Você deve adicionar comandos /usr/bin/whoami
à lista de comandos permitidos. Sua regra atual diz que dummy
pode executar /usr/sbin/reboot
ou /usr/sbin/poweroff
comoqualquerusuário equalquergrupo. Você tem permissão para ligar sudo -u anotheruser /usr/sbin/reboot
, a falha na reinicialização do sistema não terá nada a ver comsudo.
Além disso, provavelmente não existem /usr/sbin/reboot
executáveis /usr/sbin/poweroff
em seu sistema. Esses são comandos essenciais, portanto devem estar no formato /sbin
.
Resumindo: seu /etc/sudoers
arquivo deve conter uma linha como esta:
dummy myserver=(ALL:ALL) /sbin/reboot, /sbin/poweroff, /usr/bin/whoami