Configurando o sudo para funcionar sem senha

8

Estou tentando configurar o sudo para permitir que todos os usuários reiniciem o apache sem precisar digitar uma senha.

Preocupações de segurança à parte, por que isso não está funcionando?

Adicionei a linha ao / etc / sudoers: %admin ALL=NOPASSWD: /usr/sbin/apache2ctl

$sudo -l
User aidan may run the following commands on this host:
    (root) NOPASSWD: /usr/sbin/apache2ctl
    (ALL) ALL

$sudo /usr/sbin/apache2ctl
[sudo] password for aidan:

Obrigado por qualquer ajuda.

aidan
fonte
Nos meus testes no Ubuntu 9.10, isso funcionou. Importa-se de publicar todo o seu arquivo sudoers (redações permitidas)?
Scott Pacote

Respostas:

6

Isso deve funcionar bem, desde que você coloque a regra ALL %admin ALL=NOPASSWD: /usr/sbin/apache2ctl depois e seu objetivo é fazer com que os usuários do grupo de administradores exijam uma senha para sudo para tudo, exceto o comando apache2ctl.

O que você provavelmente deseja do que disse, no entanto, é um grupo de usuários que podem iniciar e parar o apache, digamos apachestart. Então:

%apachestart ALL= NOPASSWD: /usr/sbin/apache2ctl

Eu acho que você poderá torná-lo verdadeiramente pessoal, substituindo% apachestart por ALL, mas eu recomendaria isso ainda menos.

Kyle Brandt
fonte
4
Você só precisa sair e fazer login nesta configuração se modificar os grupos do usuário conectado. (Na verdade, você não precisa mesmo de fazer isso, você pode usar newgrpa grupos de mudança.)
MikeyB
Brilhante, obrigado. Eu o tinha antes da regra ALL. Eu não acho que importava, porque eu podia ver minha nova regrasudo -l
Aidan