Lorsque je cours en sudo
tant qu'utilisateur normal non privilégié, 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 dont une personne aurait besoin pour exécuter des commandes en tant que root. Alors, comment puis-je sudo
demander le mot de passe root au lieu du mot de passe de l'utilisateur invoquant?
Je sais que ce serait fait avec une ligne /etc/sudoers
, mais je n'arrive jamais à analyser correctement la grammaire BNF dans la page de manuel pour savoir exactement quoi écrire.
Réponses:
Ok, le voici à nouveau pour que vous puissiez définir la coche.
Dans
/etc/sudoers
, ajoutez cette ligne:pour activer le drapeau rootpw, faisant sudo demander le mot de passe root.
la source
visudo
commande au lieu de modifier manuellement le/etc/sudoers
fichier.visudo
valide le fichier pour s'assurer qu'il est correct avant de l'enregistrer, afin que vous ne soyez pas bloqué de sudo si vous faites une erreur de syntaxe ... askubuntu.com/a/81054/166411Vous devez activer le
rootpw
drapeau.la source
/etc/sudoers
pour activer cet indicateur?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 diverses sources - y compris plusieurs réponses à cette question, ces étapes fonctionnent sur Ubuntu-Gnome 16.04 LTS:
sudo passwd
sudo visudo
Defaults rootpw
Juste une note rapide - je voulais également m'assurer que l'utilisateur root ne pouvait pas être utilisé pour se connecter à partir de la connexion graphique, et cherchait donc des moyens d'exclure. Apparemment, l'utilisateur root est exclu par défaut et ne peut pas être utilisé pour se connecter via la connexion graphique Gnome - ce qui est une très bonne chose!
la source
root ALL=(ALL) ALL Defaults targetpw ALL ALL=(ALL) ALL
Autorise sudo root pour tout utilisateur connaissant le mot de passe root. Changer naïvement les deux dernières lignes de votre solutionDefaults rootpw
provoque un verrouillage desudo
. Vous devez également ajouter votre utilisateur àsudoers
aimer ainsi:myusername ALL=(ALL) ALL
ou donner des privilèges similaires à un groupe, puis ajoutermyusername
à ce groupe.Une configuration courante qui nécessite le mot de passe de la cible (pas ce que nous voulons):
La deuxième ligne se lirait à haute voix comme: "TOUS les utilisateurs sur TOUS les hôtes peuvent se faire passer pour (TOUS) les utilisateurs lors de l'exécution de TOUTES les commandes." et les
Defaults targetpw
moyens dont ils ont besoin pour connaître le mot de passe de l'utilisateur dont ils usurpent l'identité.Changer naïvement cette configuration simple en:
ne laisserait aucun utilisateur ou groupe avec le privilège d'exécuter des commandes en tant qu'autre utilisateur.
Une possibilité de travail serait:
En clair, a
myuser
désormais la possibilité d'exécuter TOUTES les commandes comme n'importe quel utilisateur sur TOUS les hôtes, tant que le mot de passe root est connu.Une autre possibilité de travail serait:
Tout membre du
sudousers
groupe aura la possibilité d'exécuter TOUTES les commandes comme n'importe quel utilisateur sur TOUS les hôtes, tant que le mot de passe root est connu. Pour permettremyuser
d'exécuter les commandes sudo,sudousers
il faudrait l'ajouter à ses groupes secondaires.la source
Vous pouvez simplement désactiver sudo et l'utiliser
su -c
.la source
En utilisant
vous permettra d'exécuter autant de commandes que vous le souhaitez.
la source
sudo
pour demander le mot de passe root, cela permettrait quand même à quelqu'un d'accéder à root en ne présentant qu'un seul mot de passe (pas root). Cela ne répond donc pas vraiment au problème de sécurité qui a suscité ma question.