Le fichier /etc/sudoers permet de donner des privilèges précis à des utilisateurs donnés. De façon plus précise, il permet de déterminer quels usagers peuventt utiliser la commande sudo et qu'est-ce que que chacun peut faire avec cette commande.
Par exemple, un usager non administrateur pourrait se voir attribuer le privilège d'éditer le fichier /etc/hosts sans nécessiter de mot de passe, ce qui est normalement réservé à un administrateur.
Il est possible d'éditer directement le fichier /etc/sudoers pour y ajouter les configurations souhaitées mais on préférera utiliser la commande visudo puisqu'elle se charge d'effectuer certaines vérifications avant d'enregistrer les modifications.
sudo visudo
Dans ce fichier, l'ajout d'un privilège est réalisé à l'aide d'une ligne au format :
usager ALL=(utilisateur-cible) OPTION: commande1, commande2
Voici les détails de cette commande :
On aurait aussi pu indiquer le nom d'un seul hôte, par exemple MacBook-Pro-de-Toto.local.
Puisque sur un MacBook, il n'y a généralement qu'un seul hôte, l'utilisation de ALL est correcte.
Par exemple, pour permettre à l'usager toto d'éditer le fichier hosts sans mot de passe (commande /usr/bin/nano /etc/hosts) :
toto ALL=(ALL) NOPASSWD: /usr/bin/nano /etc/hosts
Permettre à l'usager eleve de lancer sans mot de passe tous les exécutables situés dans son dossier ~/Applications :
eleve ALL=(ALL) NOPASSWD: /Users/eleve/Applications/*/Contents/MacOS/*
▼Publicité