Qual é a diferença entre o grupo 'sudo' e 'admin'?

69

Notei que dois grupos têm permissões de aparência semelhante em /etc/sudoers:

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

Minha conta de usuário com privilégios de "Administrar o sistema" está no admingrupo e não parece haver nenhum usuário no sudogrupo. Para que servem esses dois grupos?

ændrük
fonte

Respostas:

55

Ubuntu 12.04 LTS e posterior

Os administradores são adicionados ao sudogrupo, mas o admingrupo é suportado para compatibilidade com versões anteriores. Nas notas de versão :

Até o Ubuntu 11.10, o acesso de administrador usando a ferramenta sudo era concedido pelo admingrupo Unix. No Ubuntu 12.04, o acesso do administrador será concedido através do sudogrupo. Isso torna o Ubuntu mais consistente com a implementação upstream e o Debian. Para fins de compatibilidade, o admingrupo continuará fornecendo acesso ao sudo / administrador na versão 12.04.

Ele não é criado quando você faz uma nova instalação, embora ainda esteja presente se você atualizou de distribuições anteriores. De qualquer forma, o admingrupo aparece no /etc/sudoersarquivo.

Veja os detalhes da implementação e a documentação oficial .

jordicm
fonte
Legal. Obrigado! Você poderia adicionar uma explicação sobre a diferença entre ALL=(ALL)e ALL=(ALL:ALL)?
wedi
Não importa, acabei de ver a resposta na resposta de Aleksandr abaixo ...
quarta
21

Ubuntu 11.10 e versões anteriores

Por padrão, o sudogrupo não é usado no Ubuntu :

  • o usuário criado durante a instalação pertence ao admingrupo, não sudo;
  • nenhum guia ou manual que eu já li conselhos para usar o sudogrupo;
  • ninguém sente necessidade de usar o sudogrupo, porque o admingrupo pode fazer tudo o que precisa.

Por outro lado, no Debian, o grupo ativado /etc/sudoersé o sudogrupo, e não há admingrupo. Mas o usuário criado durante a instalação não é colocado nesse grupo, porque o Debian tem a rootconta ativada. Você deve fazer isso explicitamente, se quiser.

Além disso, o Fedora é semelhante ao Debian , tendo roothabilitado e sem privilégios padrão para o usuário criar durante a instalação. Mas o grupo administrativo configurado /etc/sudoersé o grupo mais tradicional wheel.

Concluindo, acho que não há utilidade para o sudogrupo no Ubuntu , simplesmente é uma herança do Debian .

enzotib
fonte
No meu sistema Ubuntu, nenhum usuário é membro de sudo: grep '^sudo:' /etc/group(recém-instalado). Não tenho certeza sobre o Debian, acabei de adicionar meu próprio nome ao /etc/sudoersarquivo.
Lekensteyn
11
@Lekensteyn: como eu disse, no Debian você deve adicionar explicitamente um usuário ao sudogrupo para obter privilégios administrativos :, su -c "gpasswd -a $USER sudo"não há necessidade de modificar /etc/sudoers. Ou você pode usar a maneira Debian de usar diretamente a rootconta.
enzotib 17/05
16

Nenhuma diferença de segurança.

Ambos têm 100% de acesso irrestrito a qualquer coisa fornecida pelo sistema operacional.

A diferença de seu / etc / sudoers é (ALL)vs (ALL:ALL). O primeiro significa que você pode executar comandos como qualquer usuário . O segundo - você pode executar o comando como qualquer usuário e como qualquer grupo .

A maneira mostrada em seus / etc / sudoers nos dois grupos precisará digitar sua própria senha para executar comandos como root.

Ambos podem um shell raiz como este:

sudo su
Aleksandr Levchuk
fonte
9
O que não posso fazer sem o bit "como qualquer grupo"?
tudor
Se um programa tiver permissão específica para ser executado apenas por um grupo específico, um usuário com (ALL)esse item, que não pertence a esse grupo, não poderá executar esse comando. Assim como aqui , os usuários que estão no grupo admine não no webusergrupo não podem executar firefox.
Stam Kaly 27/01