Gestion des utilisateurs Linux : adduser, usermod, sudo | INTROSERV
EUR
european

EUR

usa

USD

French Fr
Ex. VAT Ex. VAT 0%

Gestion des utilisateurs sur un serveur Linux

Niveau : Débutant
Durée estimée : ~30 minutes
Objectif : Découvrir les outils en ligne de commande pour créer et gérer des comptes, configurer l'accès standard aux services et maintenir la disponibilité en toute sécurité.

Introduction

La gestion des utilisateurs sous Linux est une compétence fondamentale pour tout administrateur système. Un contrôle d'accès rigoureux garantit la stabilité, la sécurité et la traçabilité du serveur. Dans ce tutoriel, nous aborderons les bases de l'ajout de comptes, de l'attribution de privilèges (y compris l'élévation de privilèges sous Linux) et du maintien sécurisé de la configuration standard des services.

Prérequis

Avant de commencer, assurez-vous que les conditions suivantes sont remplies :

  • Système d'exploitation : Ubuntu 22.04/24.04 LTS, Debian 12/13, AlmaLinux/Rocky Linux 8/9/10, RHEL 8/9/10
  • Accès : accès sudo ou root au serveur via SSH
  • Système : gestionnaire de paquets fonctionnel
  • Connaissances requises : maîtrise de la ligne de commande Linux

Comprendre les concepts clés

Avant d'apporter des modifications, vous devez comprendre le fonctionnement des comptes :

  • UID (User ID) : un identifiant numérique unique attribué à chaque utilisateur pour suivre la propriété et les permissions.
  • GID (Group ID) : un identifiant numérique principal qui rattache un utilisateur à un groupe donné. Les groupes Linux permettent d'organiser plusieurs utilisateurs pour partager des permissions.
  • Répertoire personnel (home) : le répertoire par défaut (/home/username) où sont stockés les fichiers et configurations personnels d'un utilisateur.
  • Shell de connexion : l'interpréteur de commandes (comme /bin/bash) qui démarre lorsqu'un utilisateur autorisé se connecte. Un utilisateur autorisé est un compte autorisé à accéder au système.
  • Mot de passe : une chaîne secrète de caractères utilisée pour l'authentification des utilisateurs sous Linux. L'authentification est le processus de vérification de l'identité d'un utilisateur.
  • Adduser : un script interactif (front-end) servant à créer des comptes, principalement sur les systèmes Debian/Ubuntu.
  • Useradd : un utilitaire binaire natif et de bas niveau servant à créer des comptes sur toutes les distributions Linux.
  • Verrouillage de compte (Account lock) : l'action de désactiver les connexions par mot de passe afin de sécuriser le serveur.
  • Expiration de compte (Account expiration) : l'action de désactiver automatiquement un compte à une date précise.

Étape 1 : Créer un nouvel utilisateur

Pour créer un nouvel utilisateur, on utilise la commande adduser (sur Debian/Ubuntu) ou la commande useradd (sur RHEL/AlmaLinux).

Dans les exemples ci-dessous, remplacez johndoe par le nom d'utilisateur de votre choix. Exécutez la commande suivante pour créer un utilisateur nommé johndoe :

sudo adduser johndoe

Il vous sera demandé de saisir un mot de passe et des informations facultatives sur l'utilisateur.

Sortie attendue :

La sortie contiendra des lignes relatives à la création du groupe, de l'utilisateur et du répertoire personnel, ainsi qu'à la copie de fichiers depuis /etc/skel. L'UID/GID exact dépend de votre système.

Info

Sur RHEL/AlmaLinux, utilisez sudo useradd -m johndoe (l'option -m garantit la création de /home/johndoe) et définissez le mot de passe manuellement avec la commande passwd : sudo passwd johndoe.

Étape 2 : Comprendre sudo sur un serveur Linux

Les utilisateurs standard ne peuvent ni modifier la configuration du système ni installer de logiciels. La commande sudo de Linux permet aux utilisateurs autorisés d'exécuter des commandes avec les privilèges root.

2.1 Ajouter un utilisateur au groupe sudo

Le moyen le plus simple d'accorder des privilèges consiste à ajouter l'utilisateur au groupe d'administration prédéfini grâce à la commande usermod.

Ubuntu/Debian :

sudo usermod -aG sudo johndoe

RHEL/AlmaLinux :

sudo usermod -aG wheel johndoe

La commande usermod ajoute (-a) l'utilisateur au groupe supplémentaire (-G). L'utilisateur johndoe peut désormais exécuter des tâches d'administration en faisant précéder les commandes de sudo. En cas de succès, la commande n'affiche rien. Vous pouvez le vérifier avec groups johndoe : le groupe sudo (ou wheel) doit apparaître dans la liste.

Étape 3 : Modifier les propriétés d'un utilisateur

Vous pouvez avoir besoin de verrouiller un compte ou de changer son mot de passe.

3.1 Changer un mot de passe

Pour forcer un changement de mot de passe ou remplacer un mot de passe oublié, exécutez ce qui suit avec la commande passwd :

sudo passwd johndoe

Il vous sera demandé de saisir et de confirmer le nouveau mot de passe. Une fois l'opération terminée, l'utilisateur peut se connecter avec ses nouveaux identifiants.

3.2 Verrouiller un compte

Si un utilisateur quitte l'entreprise, vous devez effectuer un verrouillage de compte afin de sécuriser le serveur :

sudo usermod -L johndoe

Le compte est immédiatement verrouillé, ce qui empêche toute nouvelle connexion par mot de passe. Pour le déverrouiller par la suite, utilisez sudo usermod -U johndoe.

Ces deux commandes n'affichent rien. Vous pouvez vérifier l'état avec passwd -S johndoe (état L = verrouillé, P = actif).

3.3 Définir l'expiration d'un compte

Pour désactiver automatiquement un compte à une date précise, définissez une expiration de compte :

sudo usermod -e 2026-12-31 johndoe

Cela garantit que les prestataires temporaires perdent automatiquement leur accès.

Info

Vous pouvez vérifier la date d'expiration avec sudo chage -l johndoe. Elle peut s'afficher avec un jour d'avance en raison du traitement de la limite UTC ; c'est normal et le compte expirera correctement.

Étape 4 : Utiliser la commande sudo de Linux en toute sécurité pour protéger le serveur

Le fichier sudoers (/etc/sudoers) contrôle précisément qui peut utiliser sudo et ce qu'il peut exécuter.

Pour modifier le fichier sudoers, utilisez toujours visudo. Il vérifie les erreurs de syntaxe avant l'enregistrement et évite ainsi de se retrouver verrouillé.

Une bonne pratique recommandée consiste à créer un fichier distinct pour chaque règle plutôt que de modifier le fichier principal :

sudo visudo -f /etc/sudoers.d/johndoe

Cela simplifie le retour arrière des règles et réduit le risque d'endommager la configuration principale de sudoers.

Pour autoriser johndoe à redémarrer le service de synchronisation de l'heure sans mot de passe, ajoutez la ligne adaptée à votre système d'exploitation :

Ubuntu/Debian :

johndoe ALL=(ALL) NOPASSWD: /usr/bin/systemctl restart systemd-timesyncd

RHEL/AlmaLinux :

johndoe ALL=(ALL) NOPASSWD: /usr/bin/systemctl restart chronyd

Enregistrez et quittez. johndoe peut maintenant redémarrer le service sans qu'un mot de passe lui soit demandé.

L'utilisateur johndoe doit exécuter la commande sous la forme sudo systemctl restart systemd-timesyncd (ou chronyd), c'est-à-dire précisément via sudo. Un appel direct pour redémarrer le service sans sudo renverra une erreur polkit exigeant une authentification interactive.

Warning

Ne modifiez jamais les fichiers sudoers directement avec nano ou vim. Une erreur de syntaxe rendra l'accès sudo inutilisable pour l'ensemble du système et nécessitera un démarrage en mode de secours pour la corriger.

Étape 5 : Supprimer un utilisateur

Lorsqu'un compte n'est plus nécessaire, supprimez-le pour garder un serveur propre.

Pour supprimer l'utilisateur tout en conservant ses fichiers :

sudo deluser johndoe

Sur RHEL/AlmaLinux : sudo userdel johndoe

Warning

Exécuter la commande sans --remove-home (ou -r) laisse /home/johndoe et les fichiers de l'utilisateur sur le disque. C'est utile pour archiver des données, mais vous devez avoir conscience des fichiers restants.

Pour supprimer l'utilisateur et son répertoire personnel :

sudo deluser --remove-home johndoe

Sur RHEL/AlmaLinux : sudo userdel -r johndoe

Pour supprimer le fichier sudoers de l'utilisateur, s'il en a été créé un, exécutez :

sudo rm -f /etc/sudoers.d/johndoe

Le compte utilisateur est maintenant complètement supprimé du système.

Info

Avant de supprimer un utilisateur, assurez-vous qu'aucun service en arrière-plan ne dépend de son UID ou de ses groupes Linux.

Vérification

Pour vérifier le nouvel utilisateur et ses appartenances à des groupes, utilisez la commande id :

id johndoe

Sortie attendue :

La sortie affichera l'UID, le GID (qui peut différer de 1001) et une liste de groupes. Vérifiez que le groupe sudo (Debian/Ubuntu) ou wheel (RHEL/AlmaLinux) est présent. Sur Debian/Ubuntu, le groupe users peut également apparaître dans la liste ; c'est normal.

Pour tester l'accès sudo, passez au nouvel utilisateur :

su - johndoe

Exécutez ensuite une commande nécessitant des privilèges :

sudo ls /root

Si le système vous le demande, saisissez le mot de passe de johndoe (celui défini à l'Étape 1), et non celui de root. Vous devriez voir le contenu du répertoire /root.

Dépannage

  • Erreurs de syntaxe dans sudoers : si vous cassez accidentellement le fichier sudoers, vous pouvez souvent le réparer en exécutant pkexec visudo depuis une autre session. Si pkexec n'est pas disponible, vous devrez démarrer le serveur en mode de récupération/mono-utilisateur pour modifier le fichier.
  • Accès sudo perdu : si vous perdez l'accès sudo mais disposez encore du mot de passe root, connectez-vous directement en tant que root (par exemple avec su -) pour corriger les appartenances aux groupes.
  • Vérifier les privilèges d'un utilisateur : pour vérifier précisément quelles commandes un utilisateur peut exécuter, utilisez sudo -l -U johndoe.

Retour arrière (rollback)

Si vous devez annuler les modifications apportées dans ce tutoriel :

  1. Retirez l'utilisateur du groupe sudo : sudo gpasswd -d johndoe sudo (ou wheel).
  2. Annulez tous les ajouts effectués via visudo.
  3. Supprimez l'utilisateur et son répertoire personnel : sudo deluser --remove-home johndoe (ou sudo userdel -r johndoe).
  4. Supprimez son fichier sudoers dédié : sudo rm -f /etc/sudoers.d/johndoe.

Conclusion

Une configuration correcte des comptes vous permet de gérer les utilisateurs sous Linux en toute sécurité, sans compromettre la sécurité du système. En maîtrisant la commande adduser, la commande usermod et la commande passwd, ainsi qu'une configuration sudo sécurisée, vous maintenez un environnement stable et traçable.

Version du document : 1.0
Dernière mise à jour : mai 2026
Propriétaire : Équipe de documentation technique

VAT

  • Other

    Ex. VAT

    0%
  • austria

    Austria

    20%
  • Belgium

    Belgium

    21%
  • Bulgaria

    Bulgaria

    20%
  • Croatia

    Croatia

    25%
  • Cyprus

    Cyprus

    19%
  • Czech Republic

    Czech Republic

    21%
  • Denmark

    Denmark

    25%
  • Estonia

    Estonia

    22%
  • France

    France

    20%
  • Finland

    Finland

    24%
  • Germany

    Germany

    19%
  • Greece

    Greece

    24%
  • Hungary

    Hungary

    27%
  • Ireland

    Ireland

    23%
  • Italy

    Italy

    22%
  • Latvia

    Latvia

    21%
  • Lithuania

    Lithuania

    21%
  • Luxembourg

    Luxembourg

    17%
  • Malta

    Malta

    18%
  • Netherlands

    Netherlands

    21%
  • Poland

    Poland

    23%
  • Portugal

    Portugal

    23%
  • Romania

    Romania

    19%
  • Slovakia

    Slovakia

    20%
  • Slovenia

    Slovenia

    22%
  • Spain

    Spain

    21%
  • Sweden

    Sweden

    25%
  • USA

    USA

    0%
european
states
  • germany
  • Español
  • Italiano
  • Poland
  • Slovenski
  • Türkçe
  • ukraine
  • kingdom
  • French
  • Hrvatska
  • Other
  • Austria
  • Belgium
  • Bulgaria
  • Croatia
  • Cyprus
  • Czech Republic
  • Denmark
  • Estonia
  • Finland
  • France
  • Germany
  • Greece
  • Hungary
  • Ireland
  • Italy
  • Latvia
  • Lithuania
  • Luxembourg
  • Malta
  • Netherlands
  • Poland
  • Portugal
  • Romania
  • Slovakia
  • Slovenia
  • Spain
  • Sweden
  • USA