J'ai deux utilisateurs sur mon système: itsadok
mon utilisateur principal et elasticsearch
un utilisateur avec un ulimit différent pour exécuter ElasticSearch.
Je voudrais pouvoir exécuter des choses en tant qu'utilisateur secondaire sans être invité à chaque fois à saisir mon mot de passe.
J'ai ajouté la ligne suivante à /etc/sudoers
:
itsadok ALL=(elasticsearch:elasticsearch) NOPASSWD: ALL
D'après ce que je comprends, cela devrait permettre à l'utilisateur itsadok, sur n'importe quel hôte, d'exécuter n'importe quelle commande en tant qu'utilisateur (ou groupe) elasticsearch sans mot de passe. Cependant, essayer quelque chose comme
itsadok@dev001$ sudo -u elasticsearch ls
me demande un mot de passe. Le redémarrage de la machine n'a pas aidé.
Qu'est-ce que je fais mal?
MISE À JOUR :
Il s'avère que l'ordre des lignes sudoers
est significatif. J'ai placé la ligne sous "Spécification de privilège utilisateur" qui sonnait comme le bon endroit, mais la ligne pour le %admin
groupe qui vient plus tard remplaçait le paramètre.
Mettre la même ligne à la fin du fichier sudoers a résolu le problème.
root ALL=(ALL:ALL) ALL
sans espace autour des deux points, donc cela ne semble pas correct. Juste pour être en sécurité, j'ai essayé juste(elasticsearch)
. Ça ne marche pas.