Por que o usuário root precisa de permissão sudo?

16
[root@notebook ~]# grep root /etc/sudoers
root    ALL=(ALL)   ALL

Pergunta: Por que o usuário root precisa de permissões sudo? Eu já vi isso em diferentes sistemas operacionais UNIX. Alguém pode explicar isso?

whoisthesomeone
fonte
2
sudo! = raiz.
DisplayName

Respostas:

25

Para que eles possam (na manpágina): -

executar um comando como outro usuário

sudonão se limita a permitir que usuários comuns executem um comando como root. O Root pode executar um comando como outro usuário com: -

sudo -u bloggs <command>

Observe que o root não precisará fornecer a senha do usuário.

garethTheRed
fonte
2
su -c '<comando>' bloggs
Joshua
Sim, é um método substituto e a raiz é apenas um uso muito comum.
Mckenzm
9

Suponha que você tenha um script que faça várias coisas sem a necessidade de privilégios especiais e, em seguida, uma única coisa privilegiada que faça através do sudo.

Se você deseja que este script seja útil também para root, é conveniente que este comando sudo final não recuse o trabalho porque "você é root; root não tem permissão para sudo".

Configurar isso no sudoers em vez de codificar uma isenção para raiz no binário sudo reduz a complexidade do código crítico de segurança no sudo (ainda que ligeiramente), o que é sempre uma coisa boa.

hmakholm deixou sobre Monica
fonte
11
E além disso, eu comecei a mais de uma vez acidentalmente um comando de nível de administrador com sudoenquanto eu já estava raiz, só porque está enraizada em minha memória muscular ...
Shadur
3

O motivo indicado no manual sudo original (desculpe, não sei a versão on-line) foi para registrar os comandos ativos sempre que possível ao efetuar login como root.

Joshua
fonte