web-dev-qa-db-fra.com

Comment autoriser l'exécution d'une commande pour un utilisateur particulier sans mot de passe avec le fichier sudoers?

Quelqu'un peut-il expliquer le travail exact de ceux-ci dans /etc/sudoers? (J'ai fait des recherches, donc ne partagez aucun lien)

Je veux m'ajouter (membre de Sudo) pour exécuter une commande sans mot de passe, mais il demande encore un mot de passe.

# User

    root  ALL=(ALL:ALL) ALL

    myself  ALL=(ALL:ALL) NOPASSWD:/bin/apt update, PASSWD:/bin/apt install*

# Groups 

    %Sudo   ALL=(ALL:ALL) ALL
2
Purnendu Nath

Je l'ai presque volé à partir d'ici: Est-il possible de donner à Sudo l'accès à une commande particulière seulement?

Sudo visudo -f /etc/sudoers.d/Username

Et ajoutez cela au fichier:

Username ALL = NOPASSWD: /usr/bin/apt* update
Username ALL = NOPASSWD: /usr/bin/apt* install

Je ne sais pas comment en faire une doublure, cependant. J'espère que cela pourra aider.

3
Patient32Bit

Ceci est mon premier post sur askubuntu mais je suis sûr que vous pourriez le faire comme ça créer un fichier avec votre username dans /etc/sudoers.d/ avec:

username ALL = NOPASSWD: ALL
1
user912780

L'ordre des lignes de configuration a une signification dans le fichier sudoers: la ligne applicable last l'emporte.

Si l'utilisateur myself est membre du groupe Sudo, toutes les commandes émises par cet utilisateur correspondront toujours à la ligne %Sudo ALL=(ALL:ALL) ALL. Comme il n'a pas de NOPASSWD: drapeau, un mot de passe vous sera demandé.

Le correctif consiste à organiser le /etc/sudoers lignes de configuration dans l'ordre de spécificité croissante:

# Groups 

    %Sudo   ALL=(ALL:ALL) ALL

# User

    root  ALL=(ALL:ALL) ALL

    myself  ALL=(ALL:ALL) NOPASSWD:/bin/apt update, PASSWD:/bin/apt install*

Lorsque cette commande est utilisée, si l'utilisateur myself exécute Sudo apt update, il fera correspondre la dernière ligne avec le NOPASSWD: drapeau.

1
telcoM

Vous pouvez simplement ajouter la ligne suivante à votre fichier sudoers:

username ALL=NOPASSWD: command1, command2, command3 [...]

N'oubliez pas de séparer par des virgules toutes les commandes que vous souhaitez exécuter par l'utilisateur sans demander de mot de passe.

0
WilliWonka