Você não pode fazer grupos aninhados fora da caixa, como faria no Active Directory. Uma pergunta anterior recebeu uma resposta apontando para Trustees do Linux .
Eu tenho dois grupos na minha máquina, groupa
e groupb
- em groupa
tenho dois usuários, user1a
e user2a
.
Eu gostaria de conceder aos membros de groupa
privs para acessar groupb
resources (executar comandos, ver arquivos etc). Acho que isso provavelmente envolve o uso de visudo
, mas posso estar errado.
O que eu gostaria de alcançar é o equivalente a:
usermod -a -G groupb user1a
usermod -a -G groupb user2a
mas para fazer isso no nível do grupo, de modo que, se no futuro user3a
for adicionado a groupa
, o usuário também terá automaticamente as privs para groupb
.
Como você deve ter adivinhado, o Unix Admin não é minha principal área de operação!
Como faço para isso?
Obrigado antecipadamente
Rich
Você não pode fazer grupos aninhados fora da caixa, como faria no Active Directory. Uma pergunta anterior recebeu uma resposta apontando para Trustees do Linux .
Eu acho que isso não pode ser feito, a não ser definindo seu próprio wrapper para useradd e impondo seu uso ou talvez por um script cron que verifique periodicamente membros do groupa e, se necessário, adicione-os ao groupb.
Usar o sudo para conseguir isso requer que o usuário prefixe todos os seus comandos com sudo -g groupb
. O usuário não estará no grupo groupb
, o usuário só terá permissão para alternar para esse grupo e executar comandos. visudo
é o comando para editar o arquivo sudoers que controla quem tem permissão para usar o sudo para o quê.
Isso exige pelo menos 1.7.0 e abre uma exploração de segurança em versões de até 1.7. 4p3
%groupa ALL = (:groupb) ALL
Provavelmente, é melhor apenas adicionar manualmente o usuário aos dois grupos. Um assistente de PAM pode automatizar esse processo, mas ele só funcionaria para shells de login ou aplicativos que usam o PAM para identificar o usuário, em vez de ler / etc / group e / etc / passwd diretamente