Show Table of Contents
5.2. La commande sudo
La commande
sudo offre une autre approche pour donner un accès administratif aux utilisateurs. Lorsque des utilisateurs de confiance ajoutent sudo avant une commande administrative, il leur est demandé leur propre mot de passe. Puis, lorsqu'ils ont été authentifié et en supposant que la commande soit autorisée, la commande administrative est exécutée comme s'ils étaient un utilisateur root.
Le format de base de la commande
sudo est comme suit :
sudo command
Dans l'exemple ci-dessus, command sera remplacé par une commande normalement réservée à l'utilisateur
root, telle que mount.
La commande
sudo offre un haut niveau de flexibilité. Par exemple, seuls les utilisateurs répertoriés dans le fichier de configuration /etc/sudoers sont autorisés à utiliser la commande sudo et la commande est exécutée dans le shell de l'utilisateur, et non dans un shell root. Cela signifie que le shell root peut être complètement désactivé, comme indiqué dans le Guide de sécurité Red Hat Enterprise Linux 7.
Chaque authentification réussie en utilisant la commande
sudo est journalisée sur le fichier /var/log/messages et la commande passée avec le nom d'utilisateur de son émetteur est journalisée sur le fichier /var/log/secure. Si davantage de détails sont requis, veuillez utiliser le module pam_tty_audit pour activer les audits TTY pour des utilisateurs spécifiques en ajoutant la ligne suivante à votre fichier /etc/pam.d/system-auth :
session required pam_tty_audit.so disable=pattern enable=pattern
où pattern représente une liste séparée par des virgules d'utilisateurs avec un usage optionnel de globs. Par exemple, la configuration suivante activera les audits TTY pour l'utilisateur
root et les désactivera pour tous les autres utilisateurs :
session required pam_tty_audit.so disable=* enable=root
Important
Configurer le module PAM
pam_tty_audit pour les audits TTY n'enregistre que les entrées TTY. Cela signifie que, lorsque l'utilisateur audité se connecte, pam_tty_audit enregistre les saisies de touches précises de l'utilisateur dans le fichier /var/log/audit/audit.log. Pour plus d'informations, voir la page man pam_tty_audit(8).
Un autre avantage de la commande
sudo est qu'un administrateur peut autoriser différents utilisateurs à accéder à des commandes spécifiques en fonction de leurs besoins.
Les administrateurs souhaitant modifier le fichier de configuration
sudo, /etc/sudoers, doivent utiliser la commande visudo.
Pour octroire à quelqu'un la totalité des privilèges administratifs, veuillez saisir
visudo et ajoutez une ligne similaire à la suivante dans la section de spécification des privilèges utilisateur :
juan ALL=(ALL) ALL
Dans cet exemple, l'utilisateur
juan peut utiliser sudo à partir de n'importe quel hôte et peut exécuter n'importe quelle commande.
L'exemple ci-dessous illustre le niveau de granularité possible lors de la configuration de
sudo :
%users localhost=/usr/sbin/shutdown -h now
Cet exemple montre que tout membre du groupe de système
users peut exécuter la commande /sbin/shutdown -h now tant que c'est à partir de la console.
La page man
sudoers offre une liste détaillée des options pour ce fichier.
Important
Il existe plusieurs risques potentiels à ne pas oublier lors de l'utilisation de la commande
sudo. Vous pouvez les éviter en modifier le fichier de configuration /etc/sudoers en utilisant visudo, comme indiqué ci-dessus. Laisser le ficher /etc/sudoers dans son état par défaut donnera à tout utilisateur du groupe wheel un accès root illimité.
- Par défaut,
sudostocke le mot de passe de l'utilisateur sudo pour une période de cinq minutes. Toute utilisation de la commande pendant cette période ne demandera pas à l'utilisateur de saisir à nouveau le mot de passe. Ceci peut être exploité par une personne malveillante si l'utilisateur laisse son poste de travail connecté, sans surveillance et déverrouillé. Ce comportement peut être modifié en ajoutant la ligne suivante au fichier/etc/sudoers:Defaults timestamp_timeout=value
où value est la longueur souhaitée du délai en minutes. Définir value sur 0 amènesudoà réclamer un mot de passe à chaque fois. - Si le compte sudo d'utilisateur est compromis, une personne malveillante peut utiliser
sudopour ouvrir un nouveau shell avec des privilèges administratifs :sudo /bin/bashL'ouverture d'un nouveau shell en tant qu'utilisateurrootde cette manière, ou d'une manière similaire, peut offrir un accès administratif à une personne malveillante sur une durée théoriquement illimitée, outrepassant ainsi la limite de la durée du délai spécifiée dans le fichier/etc/sudoerset il ne sera pas demandé à cette personne malveillante de ressaisir le mot de passesudotant que la session ouverte n'est pas fermée.

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.