19.3. Permettre aux utilisateurs non privilégiés d'exécuter certaines commandes
En tant qu'administrateur, vous pouvez autoriser les utilisateurs non privilégiés à entrer certaines commandes sur des postes de travail spécifiques en configurant une stratégie dans le répertoire /etc/sudoers.d/
.
Par exemple, vous pouvez permettre à l'utilisateur <example.user> d'installer des programmes sur la station de travail host.example.com
en utilisant la commande dnf
avec les privilèges sudo
.
Conditions préalables
-
Vous devez avoir accès au système à l'adresse
root
.
Procédure
En tant que
root
, créez un nouveau répertoiresudoers.d
sous/etc/
:# mkdir -p /etc/sudoers.d/
Créez un nouveau fichier dans le répertoire
/etc/sudoers.d
:# visudo -f /etc/sudoers.d/<example.user>
Le fichier s'ouvre automatiquement.
Ajoutez la ligne suivante au fichier
/etc/sudoers.d/<example.user>
la ligne suivante :<example.user> <host.example.com> = /usr/bin/dnf
Pour autoriser plusieurs commandes sur le même hôte sur une même ligne, vous pouvez les énumérer en les séparant par une virgule
,
suivie d'un espace.Facultatif : Pour recevoir des notifications par courrier électronique chaque fois que l'utilisateur <example.user> tente d'utiliser les privilèges de
sudo
, ajoutez les lignes suivantes au fichier :Defaults mail_always Defaults mailto="<email@example.com>"
- Enregistrez les modifications et quittez l'éditeur.
Vérification
Pour vérifier si l'utilisateur <example.user> peut exécuter la commande
dnf
avec les privilèges desudo
, changez de compte :# su <example.user> -
Entrez la commande
sudo dnf
:$ sudo dnf [sudo] password for <example.user>:
Saisissez le mot de passe
sudo
pour l'utilisateur <example.user>.Le système affiche la liste des commandes et des options de
dnf
:... usage: dnf [options] COMMAND ...
Si le système renvoie le message d'erreur
<example.user> is not in the sudoers file. This incident will be reported
vous n'avez pas créé le fichier pour <example.user> dans/etc/sudoers.d/
.Si vous recevez le message d'erreur
<example.user> is not allowed to run sudo on <host.example.com>
vous n'avez pas effectué la configuration correctement. Assurez-vous que vous êtes bien connecté en tant queroot
et que vous avez bien suivi les étapes.
Ressources supplémentaires
-
sudo(8)
,visudo(8)
, etsudoers(5)
pages de manuel