Mar 03, 2025
Chaimaa C.
3minutes de lecture
La commande sudo permet aux utilisateurs non root d’exécuter d’autres commandes Linux qui nécessiteraient normalement des privilèges de super utilisateur, tandis que le fichier sudoers indique au système comment gérer la commande sudo. Dans ce tutoriel, nous vous montrerons les bases de la commande sudo et comment éditer le fichier sudoers.

Pour montrer comment fonctionne sudo, accédez d’abord à votre VPS via SSH.
Par défaut, l’ utilisateur root n’a pas besoin d’utiliser le préfixe sudo. Il dispose déjà de tous les privilèges possibles. En revanche, si un utilisateur non root souhaite ajouter un autre utilisateur, il doit ajouter le préfixe sudo à la commande useradd, comme suit :
sudo useradd edward
Si l’utilisateur n’utilise pas le préfixe sudo, il recevra un message de refus de permission.

La commande sudo est configurée par le biais d’un fichier situé dans /etc/ appelé sudoers.
Grâce à la commande sudo, vous accordez des privilèges de niveau administratif à des utilisateurs ordinaires. Normalement, le premier utilisateur que vous créez lors de l’installation d’Ubuntu a les droits sudo. Dans un environnement VPS, il s’agit de l’utilisateur racine par défaut. Vous pouvez configurer d’autres utilisateurs pour qu’ils puissent également exécuter la commande sudo. Cela peut être fait en éditant sudoers.
Important ! Notez que des erreurs ou une mauvaise syntaxe dans votre fichier sudoers peuvent entraîner le verrouillage de tous les utilisateurs de votre distribution.
Vous pouvez ouvrir le fichier avec votre éditeur de texte préféré. Nous utiliserons vi :
vi /etc/sudoers
Le fichier de notre VPS ressemble à ceci :

Examinons quelques-uns des formats et des règles à respecter lors de l’édition de sudoers :
Une autre ligne intéressante est #includedir /etc/sudoers.d, ce qui signifie que nous pouvons ajouter des configurations au fichier sudoers.d et le lier ici.
Pour modifier le fichier /etc/sudoers, utilisez la commande suivante :
sudo visudo -f /etc/sudoers
Il est recommandé d’utiliser visudo pour éditer le fichier sudoers. Visudo s’assure que sudoers est édité par un seul utilisateur à la fois et fournit les vérifications syntaxiques nécessaires.
Pour voir quels utilisateurs font partie du groupe sudo, nous pouvons utiliser la commande grep :
grep ‘sudo’ /etc/group
La liste des noms d’utilisateurs s’affiche.
Pour ajouter un utilisateur appelé bill au groupe sudo, nous utilisons la commande adduser dans la ligne de commande, comme suit :
adduser bill sudo
Si nous utilisons la commande grep pour vérifier qui est dans le groupe, nous verrons le nom d’utilisateur bill.
Si vous voulez donner à quelqu’un les privilèges de la racine, il suffit de l’ajouter à sudo.
Pour supprimer un utilisateur de sudo :
deluser bill sudo
La commande deluser supprime bill du groupe sudo.
Désormais, l’utilisateur bill ne peut plus effectuer d’actions nécessitant des privilèges sudo.
Que se passe-t-il si nous voulons que Bill ne puisse exécuter que certains types de commandes avec les privilèges sudo, comme la mise en réseau ?
Pour ce faire, nous créons un fichier de configuration dans /etc/sudoers.d/ appelé networking.
Utilisez la commande suivante pour créer le fichier :
sudo visudo -f /etc/sudoers.d/networking
Ajouter le texte suivant dans le fichier :
Cmnd_Alias CAPTURE = /usr/sbin/tcpdump
Cmnd_Alias SERVERS = /usr/sbin apache2ctl, /usr/bin/htpasswd
Cmnd_Alias NETALL = CAPTURE, SERVERS
%netadmin ALL=NETALL
Exécutez ensuite la commande :
addgroup netadmin
Dans le fichier ci-dessus, nous avons créé un groupe netadmin. Les utilisateurs du groupe netadmin peuvent exécuter les commandes spécifiées dans NETALL. NETALL comprend à son tour toutes les commandes sous les alias CAPTURE et SERVERS. La commande tcpdump se trouve sous l’alias CAPTURE, c’est-à-dire /usr/sbin/tcpdump.
Ensuite, nous ajoutons l’utilisateur bill au groupe netadmin :
sudo adduser bill netadmin
Désormais, l’utilisateur bill pourra exécuter la commande tcpdump ainsi que d’autres commandes liées au réseau.
Si vous travaillez avec plusieurs utilisateurs, il est indispensable de comprendre la commande sudo et le fichier sudoers. Dans ce tutoriel, vous avez appris toutes les bases pour prendre le contrôle des privilèges de votre système !
Comment tester la connexion avec la commande Ping
Comment gérer les processus sous Linux
Comment utiliser la commande Dig pour la recherche DNS
Comment changer les mots de passe des utilisateurs sous Linux
Tout le contenu des tutoriels de ce site est soumis aux normes éditoriales et aux valeurs rigoureuses de Hostinger.