web-dev-qa-db-fra.com

Sudoers NOPASSWD pour la commande ne fonctionne pas mais ALL est

J'ai essayé d'accorder à www-data d'utiliser Sudo service Apache2 restart sans mot de passe, mais quoi que j'essaie, rien ne fonctionne. J'ai lu quelques centaines de messages à ce sujet sur différents forums, mais rien n'y fait.

Je sais que les autorisations sont ajoutées dans l'ordre, de sorte que la commande spécifique doit aller à la fin de la liste. Voici mon dossier:

#
# 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        env_reset
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification


# User privilege specification
root    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

# See sudoers(5) for more information on "#include" directives:

# includedir /etc/sudoers.d

%www-data ALL=(ALL) NOPASSWD: /usr/sbin/service Apache2 restart

D'après ce que j'ai compris, n'importe qui dans www-data devrait maintenant pouvoir exécuter le service Sudo Apache2 restart et ne pas nécessiter de mot de passe. Il demande toujours un mot de passe. J'ai essayé d'ajouter:

%www-data ALL=(ALL) NOPASSWD: ALL

Et cela fonctionne comme prévu. Je ne peux pas leur donner de mot de passe pour toutes les commandes mais pas pour une. Bien sûr, ce serait vraiment une mauvaise idée.

Toute aide serait appréciée. Ceci est la dernière version d'Ubuntu

2
Deshiknaves

Il s'avère que j'ai eu un alias Sudo dans mon .zshrc. La suppression de l'alias a résolu le problème. Maintenant, cela fonctionne comme il se doit.

Ce lien était utile: les arguments de Sudo ne fonctionnent pas

6
Deshiknaves