Lorsque j'exécute Sudo
en tant qu'utilisateur normal sans privilège, il me demande mon mot de passe, pas le mot de passe root. C'est souvent pratique, mais cela réduit la quantité d'informations qu'une personne devrait posséder pour exécuter des commandes en tant que root. Alors, comment puis-je demander à Sudo
de demander le mot de passe root au lieu du mot de passe de l'utilisateur qui appelle?
Je sais que cela se ferait avec une ligne dans /etc/sudoers
, mais je n'arrive jamais à analyser correctement la grammaire BNF dans la page de manuel pour savoir exactement quoi écrire.
Ok, la voici à nouveau pour que vous puissiez cocher la case.
Dans /etc/sudoers
, ajoutez cette ligne:
Defaults rootpw
pour activer le drapeau rootpw, obligeant Sudo à demander le mot de passe root.
Vous devez activer l'indicateur rootpw
.
Je sais que cette question est ancienne, mais c’est la question la plus concise que j’ai trouvée pour ce cas d’utilisation (qui est un pourcentage mineur, vrai, mais néanmoins légitime et utile dans le bon scénario).
Après avoir rassemblé toutes les étapes de différentes sources, y compris les réponses multiples à cette question, ces étapes fonctionnent sous Ubuntu-Gnome 16.04 LTS:
Sudo passwd
Sudo visudo
Defaults rootpw
Juste une petite remarque - je voulais aussi m'assurer que l'utilisateur root ne pourrait pas être utilisé pour se connecter à partir de la connexion graphique, et je cherchais donc des moyens d'exclure. Apparemment, l'utilisateur root est exclu par défaut et ne peut pas être utilisé pour se connecter via le login graphique Gnome - ce qui est une très bonne chose!
Une configuration commune qui nécessite le mot de passe de la cible (pas ce que nous voulons):
Defaults targetpw
ALL ALL=(ALL) ALL
La deuxième ligne se lirait comme: "TOUS les utilisateurs de TOUS les hôtes peuvent emprunter l'identité de (TOUT) utilisateurs lors de l'exécution de TOUTES les commandes". et Defaults targetpw
signifie qu’ils ont besoin de connaître le mot de passe de l’utilisateur qu’ils empruntent pour le faire.
Changer naïvement cette configuration simple en:
Defaults rootpw
ne laisserait aucun utilisateur ou groupe avec le privilège d'exécuter des commandes en tant qu'utilisateur différent.
Une possibilité de travail serait:
Defaults rootpw
myuser ALL=(ALL) ALL
En clair, myuser
permet désormais d’exécuter TOUTES les commandes en tant qu’utilisateur sur TOUS les hôtes, à condition de connaître le mot de passe root.
Une autre possibilité de travail serait:
Defaults rootpw
%sudousers ALL=(ALL) ALL
Tous les membres du groupe sudousers
pourront exécuter TOUTES les commandes en tant qu’utilisateur de TOUS les hôtes, à condition de connaître le mot de passe root. Pour permettre à myuser
d’exécuter des commandes Sudo, sudousers
devra être ajouté à ses groupes secondaires.
su
usermod -a -G sudousers myuser
exit
Vous pouvez simplement désactiver Sudo et utiliser su -c
.