O groupmems
comando que nos permite editar a associação de grupo tem uma característica peculiar: quando executado como root, ele novamente solicita a senha de root ao tentar editar qualquer associação de grupo para qualquer usuário do sistema.
Na verdade, ele até age pela senha do root preventivamente, antes de verificar se tal grupo existe (verifica se o usuário existe antes de solicitar a senha)
Se você, por exemplo, executar groupmems -g 12345 -a nobody
como root, ele solicitará que você digite a senha de root de qualquer maneira, antes de informar que o grupo 12345 não existe.
Por que (e na verdade como também) é feito dessa maneira para esse comando específico, dada a onipotência de root
quando se trata passwd
/etc/sudoers
e bem... todo o resto.
Além disso, esta parte tirada diretamente doman groupmems
O comando groupmems permite que um usuário administre sua própria lista de membros de grupo sem o requisito de privilégios de superusuário. O utilitário groupmems é para sistemas que configuram seus usuários para estarem em seu próprio grupo primário (ou seja, convidado / convidado).
Apenas o superusuário, como administrador, pode usar groupmems para alterar as associações de outros grupos.
me faz pensar o que aconteceria se eu removesse root
do grupo root
. O root então possivelmente perderia privilégios para se adicionar de volta ao grupo root
com groupmems
? (Eu não queria tentar isso ainda não sabendo como esse groupmems
comando se comporta
Quando tentei ler sobre isso e os grupos usando, man
acabei chegando a este boato interessante:
O arquivo /etc/group é um arquivo de texto que define os grupos no sistema. Há uma entrada por linha, com o seguinte formato:
group_name:password:GID:user_list
Eu pessoalmente nunca defini uma senha para um group
no linux. O que faria/realizaria/ajudaria? Quando seria perguntado em vez da senha do usuário com privilégios particulares? A senha de cada usuário que pertence a esse grupo específico funcionaria como a senha do grupo também?
Uma última coisa da man group
e esta da qual podemos pelo menos rir:
Como a página de manual do 4.2BSD initgroups(3) diz: ninguém parece manter o /etc/group atualizado.
O "como" é através de uma chamada para
pam_authenticate
. Não tenho ideia do porquê, mas o comportamento pode ser eliminado criando um arquivo chamado/etc/pam.d/groupmems
contendo o seguinte:Recompilar
groupmems
sem suporte a PAM é outra maneira de se livrar do prompt.