[Explained] Comment ajouter des utilisateurs aux Sudoers dans Ubuntu
Avant de nous pencher sur l'ajout d'utilisateurs en tant que sudoers dans Ubuntu, il est essentiel de comprendre le contexte. Par exemple, lorsque vous souhaitez gérer des services ou installer des logiciels sur Ubuntu, avez-vous déjà rencontré un message "Accès refusé" en tentant d'exécuter une commande ?
Ces situations exigent souvent l'exécution de commandes avec les privilèges du superutilisateur ou "root". Cependant, cette pratique n'est pas recommandée en raison des risques de sécurité. Une erreur en mode root pourrait endommager votre système.
Ubuntu, une distribution Linux très populaire, intègre une fonction nommée "sudo" qui permet à un utilisateur d'exécuter des commandes avec des permissions avancées, sans avoir besoin de se connecter en tant que "root".
Cet article clarifie la notion de sudoers, explique pourquoi vous pourriez en avoir besoin et détaille comment les ajouter à votre système Ubuntu.
Qu'est-ce que Sudo et qui sont les Sudoers ?
Pourquoi ne pas simplement utiliser la commande "su" ou "switch user" ? Cette commande vous donne un accès root après avoir saisi le mot de passe. Toutefois, il est facile d'oublier de se déconnecter, et une simple faute de frappe pourrait causer des dommages irréparables à votre système.
L'abréviation "sudo" signifie "super user do". Les sudoers sont des utilisateurs autorisés à exécuter des commandes avec des privilèges élevés, comme l'installation ou la mise à jour de logiciels. L'utilisateur sudo doit préfixer chaque commande avec le mot-clé "sudo". L'avantage est qu'il n'est pas nécessaire de se déconnecter après avoir terminé les opérations.
Sur un système Ubuntu avec plusieurs utilisateurs, tous n'ont pas les privilèges sudo. L'utilisateur créé lors de l'installation initiale dispose par défaut de ces privilèges. Seuls les utilisateurs répertoriés dans le fichier ou le groupe sudoers peuvent utiliser sudo.
- Le fichier sudoers : un fichier de configuration qui définit quels utilisateurs peuvent utiliser sudo et comment.
- Le groupe Sudoers : un groupe spécifique d'utilisateurs disposant de droits sudo.
Quand accorder l'accès sudo ?
Voici quelques exemples où l'accès sudo peut être justifié :
- Votre équipe d'administrateurs ou de développeurs a besoin d'effectuer des tâches nécessitant des privilèges root, comme l'installation ou la mise à jour de logiciels.
- Vous souhaitez limiter l'accès des utilisateurs à certains fichiers ou répertoires, sans leur donner un accès root complet.
- Un utilisateur invité a besoin d'un accès root temporaire pour effectuer une tâche spécifique, par exemple, l'installation d'un logiciel spécialisé.
Pourquoi est-ce important d'accorder des privilèges sudo ?
- Sécurité renforcée : Vous évitez de donner l'accès root, qui pourrait exposer votre système à des risques et des erreurs. Les privilèges sudo permettent un accès ciblé aux ressources nécessaires.
- Personnalisation des autorisations : Vous contrôlez les commandes que chaque sudoer peut exécuter et les moments où il peut le faire. Vous définissez également s'il faut un mot de passe pour ces commandes.
- Suivi simplifié des activités : Le fichier /var/log/auth.log enregistre toutes les commandes exécutées via sudo, facilitant ainsi le suivi des actions des sudoers.
Prérequis pour l'ajout d'un utilisateur au fichier sudoers
- Compte utilisateur avec privilèges sudo : vous devez être connecté avec un compte disposant de privilèges sudo pour ajouter un autre utilisateur.
- Nom d'utilisateur : vous devez connaître le nom de l'utilisateur que vous souhaitez ajouter.
- Un éditeur de texte : Ubuntu utilise Nano par défaut, mais vous pouvez utiliser d'autres éditeurs.
Comment ajouter un utilisateur au fichier sudoers ?
Plusieurs méthodes existent. Commençons par la création d'un nouvel utilisateur.
Prenons l'exemple d'un nouvel utilisateur nommé "titus". Voici les étapes à suivre :
- Connectez-vous avec un compte sudo et exécutez la commande :
sudo adduser titus. Remplacez "titus" par le nom de votre nouvel utilisateur.
- Saisissez votre mot de passe.
- Définissez et confirmez le nouveau mot de passe pour l'utilisateur.

- Suivez les instructions (vous pouvez accepter les valeurs par défaut) et cliquez sur "Y" pour valider.

L'utilisateur "titus" est maintenant créé.
Il existe deux manières d'ajouter un utilisateur aux sudoers dans Ubuntu :
#1 : Ajouter l'utilisateur au groupe sudo
Ajoutez l'utilisateur au groupe sudo via cette commande exécutée en tant qu'utilisateur root ou sudoer :
sudo usermod -aG sudo username
Remplacez "username" par le nom de l'utilisateur que vous souhaitez ajouter. Dans notre exemple :
sudo usermod -aG sudo titus
L'utilisateur est maintenant membre du groupe sudo.
#2 : Ajouter un utilisateur au fichier Sudoers
Comme nous l'avons vu, les systèmes Linux comme Ubuntu ont des utilisateurs avec des droits d'accès différents aux fichiers et répertoires. Ces droits incluent "lire", "écrire" ou "exécuter".
Le fichier sudoers définit qui peut utiliser sudo et de quelle manière. Ce fichier se trouve à l'emplacement suivant : /etc/sudoers.
Voici les étapes si vous avez déjà un utilisateur sans droits sudo :
- Ouvrez votre terminal.
- Utilisez la commande suivante pour ouvrir le fichier :
sudo visudo
Vous devrez saisir votre mot de passe.

- Modifiez le fichier. Après l'exécution de la commande, vous obtiendrez un contenu similaire à celui-ci :

Supposons que nous souhaitions donner tous les privilèges sudo à un utilisateur "kamunya".
Repérez la section suivante :
# User privilege specification root ALL=(ALL:ALL) ALL
Ajoutez une ligne qui accorde à "kamunya" tous les droits sudo, comme ceci :
kamunya ALL=(ALL:ALL) ALL
- Sauvegardez et quittez. Utilisez les raccourcis clavier Ctrl+O pour enregistrer et Ctrl+X pour quitter.
L'utilisateur "kamunya" a maintenant les droits sudo. Pour donner des droits spécifiques, comme la mise à jour de logiciels sans mot de passe, vous pouvez ajouter la ligne suivante :
kamunya ALL=(ALL:ALL) NOPASSWD: /usr/bin/apt-get update, /usr/bin/apt-get upgrade
Comment vérifier si un utilisateur est sudoer ?
Voici comment vérifier si les utilisateurs sont sudoers :
Utiliser la commande sudo
Pour vérifier si "titus" est un sudoer, utilisez la commande suivante :
sudo -l -U titus
Remplacez "titus" par le nom de l'utilisateur que vous voulez vérifier.
Si l'utilisateur est un sudoer, vous obtiendrez un résultat similaire à celui-ci :

Si l'utilisateur n'a pas les droits sudo, vous obtiendrez une erreur de type : "L'utilisateur 'username' n'est pas autorisé à utiliser sudo sur 'nom de votre machine'".
Vérifier les groupes sudo
Lorsqu'un utilisateur est ajouté aux sudoers, il est ajouté à un groupe portant le même nom. Pour vérifier si l'utilisateur "tk" est dans un groupe, utilisez la commande suivante :
groups tk
Remplacez "tk" par le nom de l'utilisateur à vérifier.
Vous obtiendrez un résultat similaire à celui-ci :

Comment supprimer un utilisateur sudo ?
Il peut être nécessaire de supprimer un utilisateur sudo, par exemple en cas d'erreur de configuration ou si l'utilisateur n'a plus besoin des privilèges.
Vous pouvez utiliser l'interface graphique ou la ligne de commande. Voici comment supprimer un utilisateur en utilisant la ligne de commande :
- Exécutez la commande
sudo deluser usernameen remplaçant "username" par l'utilisateur à supprimer. Cette méthode supprime l'utilisateur mais laisse ses fichiers.
J'ai supprimé l'utilisateur "kamunya" :

Pour supprimer également les fichiers de l'utilisateur, utilisez la commande suivante :
sudo deluser --remove-home username
Dans notre exemple :
sudo deluser --remove-home kamunya
Bonnes pratiques pour la gestion des utilisateurs sudoers
- Utiliser la commande visudo : Lorsque vous modifiez le fichier sudoers, utilisez toujours la commande visudo pour éviter les erreurs de syntaxe. Vérifiez, enregistrez et quittez l'éditeur.
- Utiliser des groupes : Au lieu d'ajouter des utilisateurs individuellement, ajoutez-les à des groupes, tels que "administrateurs" ou "développeurs", avec des privilèges adaptés.
- Documenter les accès : Gardez une trace des utilisateurs sudo, de leurs droits et des raisons de ces accès. Cette documentation facilite les changements de personnel.
- Surveiller les accès : Contrôlez régulièrement les activités des utilisateurs sudo et adaptez les privilèges aux besoins.
Conclusion
Ubuntu est largement utilisé par les administrateurs système et les développeurs. Il est crucial de bien gérer les privilèges d'accès pour garantir la sécurité et l'efficacité de votre système.
Vous comprenez maintenant ce que sont les sudoers et comment les ajouter à Ubuntu. Cette approche permet de fournir des accès ciblés plutôt qu'un accès root complet, améliorant ainsi la sécurité et la flexibilité.
Vous pouvez également explorer des commandes Linux pour administrer votre système.