Qual é a diferença entre adicionar um usuário a /etc/sudoers
e usermod -a -G sudo
? Qual método deve ser usado para conceder sudo?
Qual é a diferença entre adicionar um usuário a /etc/sudoers
e usermod -a -G sudo
? Qual método deve ser usado para conceder sudo?
Respostas:
Se você puder evitá-lo, nunca conceda privilégios de sudo a usuários individuais. Sempre conceda privilégios a um grupo e adicione usuários a esse grupo.
Para servidores baseados no Ubuntu, em vez de adicionar linhas /etc/sudoers
, adicione fragmentos de arquivo de configuração no /etc/sudoers.d
. Isso é mais flexível, mais fácil de entender, mais resiliente diante das atualizações e funciona melhor com sistemas gerenciados por sistemas de gerenciamento de configuração.
NOTA: nunca edite /etc/sudoers
diretamente. Em vez disso, use visudo
, que executará a verificação de sintaxe em suas edições, impedindo que você quebre sua configuração do sudo com sintaxe inválida.
/etc/sudoers
?
usermod -a -G sudo
visudo
. Algumas pessoas não percebem que existe um motivo /etc/sudoers
marcado como somente leitura.
Acabei de encontrar este pequeno detalhe por aí ... parece que você precisa ter um cuidado especial ao usar a -G
opção no Ubuntu, em particular na -g
opção combinada . Então:
usermod -aG
para adicionar o (s) usuário (s) a um grupo. $ sudo
visudo
comando (chama automaticamente um editor privilegiado com verificação de sintaxe).Aqui estão as informações sobre a -aG
opção no Ubuntu, obtidas aqui http://ubuntuforums.org/showthread.php?t=1240477 :
'Estou lendo a "Bíblia de scripts e linha de comando do Linux" do Wiley - e eles disseram que o usermod -G "anexa" um grupo a qualquer conta de usuário que você esteja modificando. Descobri que isso é falso no Ubuntu, não sei se é diferente em outras distribuições ou um erro de digitação no livro. Ele o remove de TODOS os outros grupos aos quais você pertence, exceto o seu grupo de usuários padrão (modificado pela opção -g). Consegui me remover do grupo de administradores e não consegui mais sudo nada. Graças a Deus pelo modo de recuperação ... '
A opção correta é usermod -aG . Lição aprendida...
Você não nos diz qual o tamanho do seu ambiente, mas se for mais de uma máquina, convém considerar a configuração sudo
usando LDAPs como uma alternativa para editar localizadores de sudoers localmente (por meio visudo
ou usando o /etc/sudoers.d
método de fragmentos).
A configuração LDAP é uma maneira bem testada de garantir que várias máquinas tenham a mesma sudo
configuração e apresente um bom ambiente unificado (com gerenciamento central de um importante mecanismo de autorização). Como bônus, se você já usa LDAP (ou AD) para autenticação / autorização em seu ambiente, pode tirar proveito da infraestrutura existente (e, se não o considerar, deve considerá-la seriamente - a centralização tem muitos benefícios).
Tudo o que as pessoas já disseram nas outras respostas sobre a criação de grupos autorizados ainda permanece - é mais fácil conforme você aumenta os privilégios para um grupo e gerencia os membros do grupo do que lidar com os direitos de gerenciamento de usuários individuais.
/etc/sudoers
sob quaisquer condições. Em vez disso, adicione fragmentos de configuração ao/etc/sudoers.d
diretório. O uso da pasta de fragmentos facilita a atualização desde que você modificou um conffile.