Estou tentando conceder acesso ao grupo www-data a certos comandos sob sudo (ou seja, reiniciar o Apache) e não estou tendo sorte. Passei a maior parte da sexta-feira investigando essa questão e devo ter visto 20 postagens de fóruns e tópicos SO / SF relacionados ao assunto sem sorte.
A seguir está o meu arquivo sudoers (editado via visudo).
#
# This file MUST be edited with the 'visudo' command as root
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
Defaults !requiretty
Defaults env_reset
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:$
# Host alias specification
# User alias specification
# Cmnd alias specification
# User privilege specification
root ALL=(ALL:ALL) ALL
# 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
# Allow members of www-data group access to apache
%www-data ALL= NOPASSWD: /usr/bin/service apache2 *
# See sudoers(5) for more information on "#include" directive
Se eu fizer login como meu usuário jenkins (que faz parte do grupo www-data, conforme mostrado abaixo);
root@ip-REDACTED:~# groups jenkins
jenkins : www-data jenkins
Não consigo executar o "serviço sudo apache2 restart", conforme mostrado abaixo.
jenkins@REDACTED:/root$ sudo service apache restart
[sudo] password for jenkins:
jenkins is not allowed to run sudo on ip-REDACTED. This incident will be reported.
Jenkins não faz parte do grupo sudo, mas eu não quero que seja como então ele terá acesso a tudo. Além disso, não parece estar pegando o sinalizador NOPASSWD que foi configurado em sudoers. Eu tentei tudo o que posso pensar neste momento e estou chegando em branco. Pode valer a pena mencionar que isso está sendo executado em uma instância do EC2, o EC2 impõe restrições adicionais sobre o que pode ser feito com o arquivo sudoers?
Obrigado antecipadamente.