User Creation Linux : Guide 2026 – Tutoriel

Créer un compte utilisateur sous Linux tient en une commande, mais le compte obtenu n’est utilisable que si l’on sait ce qu’elle écrit vraiment : un identifiant, un groupe, un répertoire personnel, un shell, une politique de mot de passe. Voici chaque commande, son effet, et la famille de distributions concernée.

La réponse courte
useradd existe sur toutes les distributions mais n’applique que ce qu’on lui demande : sans --create-home ni --shell, vous obtenez un compte sans répertoire personnel et sans shell choisi. Sur la famille Debian/Ubuntu, adduser est une surcouche interactive qui applique la politique de la distribution. Les deux ne sont pas interchangeables.

Vue d’ensemble de la gestion utilisateurs #

Un compte n’est pas un nom, c’est un jeu d’attributs — tels que la page de manuel de useradd les décrit.

  • UID : entier non négatif, unique sur la machine (-u, ou --uid, force sa valeur).
  • Nom de connexion : jusqu’à 256 caractères pour les versions actuelles de useradd ; adduser y ajoute son propre contrôle, plus strict.
  • Groupe principal : le GID rattaché au compte.
  • Répertoire personnel : sous /home, ou la valeur définie dans /etc/default/useradd.
  • Shell de connexion : option -s, sinon la valeur du même fichier.

Comptes système vs comptes utilisateurs #

La séparation tient à des bornes déclarées dans /etc/login.defs, lues à chaque création.

À lire Convertir un fichier MOV en AVI : Guide complet pour changer de format vidéo facilement

  • root : UID 0.
  • Comptes de service : créés avec -r, UID entre SYS_UID_MIN et SYS_UID_MAX — par défaut 101 à UID_MIN moins un. En dessous, valeurs réservées par la distribution. Un tel compte ne reçoit pas de répertoire personnel, quelle que soit l’option passée.
  • Comptes humains : bornes UID_MIN et UID_MAX, par défaut 1000 et 60000.
  • Shell interdit : nologin sert de shell de remplacement pour refuser la connexion ; son chemin diffère selon la distribution, relevez-le sur votre machine.

useradd : la commande de base #

Outil de la suite shadow, présent partout. Il ne pose aucune question : ce que vous ne demandez pas, vous ne l’obtenez pas. Ci-dessous, création du compte et de son répertoire, choix du shell, puis définition du mot de passe.

sudo useradd --create-home --shell /bin/bash --comment "Compte de test" utilisateur1
sudo passwd utilisateur1
  • -m / --create-home : crée le répertoire personnel et y recopie le squelette.
  • -s / --shell : définit le shell de connexion.
  • -c / --comment : champ libre, utilisé pour le nom complet du titulaire.
  • -u / --uid : impose l’UID au lieu du plus petit disponible.

adduser : la surcouche Debian/Ubuntu #

Sur la famille Debian et Ubuntu uniquement, adduser est une couche de politique posée au-dessus des outils précédents. Il n’existe pas tel quel ailleurs.

sudo adduser utilisateur1
  • Il demande le mot de passe et le champ de commentaire, sauf désactivation en ligne de commande.
  • Il recopie les fichiers de /etc/skel dans le répertoire personnel.
  • Il crée un groupe du même nom que l’utilisateur : le mécanisme usergroups, qui sert aux répertoires partagés en écriture.

Gestion des groupes #

Erreur classique : remplacer la liste des groupes secondaires au lieu d’y ajouter une entrée.

  • groupadd <groupe> : crée un groupe.
  • groupdel <groupe> : supprime toutes les entrées qui s’y réfèrent ; le groupe doit exister.
  • gpasswd -a <utilisateur> <groupe> : ajoute un utilisateur au groupe nommé.
  • usermod -aG <groupe> <utilisateur> : -a ne s’utilise qu’avec -G ; sans lui, -G écrase la liste existante.
  • groups <utilisateur> : affiche les groupes d’un compte.

Politique de mot de passe #

Deux mécanismes distincts, souvent confondus : /etc/login.defs gère le vieillissement, PAM gère la qualité. Point rarement signalé : les directives de vieillissement ne sont lues qu’à la création du compte. Les modifier ensuite ne change rien aux comptes existants — il faut passer par chage.

À lire Création User Linux : Guide Complet Commandes

RéglageOùCe qu’il fait
PASS_MAX_DAYS/etc/login.defsDurée de vie maximale ; au-delà, changement imposé.
PASS_MIN_DAYS/etc/login.defsDélai minimal entre deux changements.
PASS_WARN_AGE/etc/login.defsJours d’avertissement avant expiration.
minlenpam_pwquality.soLongueur minimale : contrôlée par PAM, pas par shadow.
  • chage -l <utilisateur> : affiche le vieillissement du compte.
  • chage -M <jours> <utilisateur> : fixe la validité maximale sur un compte existant.

SSH et accès distant #

Créer un compte et lui ouvrir l’accès distant sont deux opérations distinctes. Le serveur vérifie par défaut les droits des fichiers du répertoire personnel : des permissions trop larges font échouer l’authentification par clé sans message clair.

  • Clés publiques : fichier désigné par AuthorizedKeysFile.
  • Permissions : 700 sur .ssh, 600 sur le fichier de clés — c’est le contrôle StrictModes, actif par défaut, qui l’exige.
  • Restreindre les comptes : AllowUsers n’autorise que les noms listés — un UID numérique n’y est pas reconnu.
  • Compte root : PermitRootLogin vaut prohibit-password par défaut et accepte aussi no.
  • Mot de passe : PasswordAuthentication vaut yes par défaut ; à no, seule la clé est acceptée.

Sudo : attribution des privilèges #

Les droits d’administration se donnent par une règle sudoers, jamais en modifiant l’UID d’un compte. Éditez avec visudo, qui contrôle la syntaxe avant d’enregistrer : une erreur écrite en direct peut rendre le système inadministrable.

  • Cibler un groupe : le préfixe % désigne un groupe, comme dans l’exemple %wheel ALL = (ALL) ALL de la page de manuel. Le nom du groupe d’administration dépend de la distribution.
  • Fichiers séparés : la directive @includedir /etc/sudoers.d permet une règle par fichier, sans toucher au fichier principal.
  • Piège de nommage : dans ce répertoire, sudo ignore les noms contenant un point ou finissant par un tilde. Un fichier utilisateur1.conf n’est jamais lu, en silence.
  • Portée minimale : limiter la règle aux commandes réellement nécessaires plutôt qu’un droit global.

Exemple complet : nouvel admin #

L’enchaînement crée le compte, force le changement de mot de passe à la première connexion, prépare .ssh avec les bonnes permissions et y dépose une clé publique. Remplacez le groupe d’administration par celui de votre distribution, et la chaîne de clé par la vôtre.

sudo useradd --create-home --shell /bin/bash --groups sudo utilisateur1
sudo passwd --expire utilisateur1
sudo install -d -m 700 -o utilisateur1 -g utilisateur1 /home/utilisateur1/.ssh
echo "ssh-ed25519 AAAA...CLE_PUBLIQUE_FICTIVE" | sudo tee /home/utilisateur1/.ssh/authorized_keys
sudo chmod 600 /home/utilisateur1/.ssh/authorized_keys
sudo chown utilisateur1:utilisateur1 /home/utilisateur1/.ssh/authorized_keys

passwd --expire expire le mot de passe immédiatement : le titulaire doit en choisir un dès sa prochaine connexion. N’ajoutez le compte qu’aux groupes dont il a besoin — certains groupes techniques donnent indirectement un accès équivalent à celui de root.

À lire Media Creation Tool : Guide installation 2026

Supprimer ou désactiver un compte #

Avertissement avant les commandes de cette section. userdel -r détruit le répertoire personnel, tout son contenu et la boîte aux lettres locale ; les fichiers du compte situés sur d’autres systèmes de fichiers survivent et devront être retrouvés à la main. L’opération est définitive : sauvegardez d’abord, et suspendez plutôt que de retirer tant qu’un doute subsiste.

  • Suspendre : usermod -L <utilisateur> verrouille le mot de passe en plaçant un point d’exclamation devant l’empreinte stockée. Cela ne ferme pas les autres voies d’accès : la page de manuel précise qu’il faut aussi porter la date d’expiration à 1, par exemple chage -E 1 <utilisateur>.
  • Programmer une fin d’accès : chage -E <date> <utilisateur>, au format année-mois-jour.
  • Archiver le répertoire personnel hors de la machine : seule manière de revenir en arrière.
  • Supprimer : userdel -r <utilisateur>, une fois l’archive vérifiée.

Audit et monitoring #

Un inventaire de comptes ne vaut que s’il est relu. Ces commandes suffisent à une revue périodique.

  • last : liste les connexions enregistrées sur le système.
  • lastlog : dernière connexion de chaque compte, ou d’un compte donné.
  • w : qui est connecté à l’instant, et ce que ces sessions exécutent.
  • journalctl : lit le journal systemd, événements d’authentification compris. Le fichier texte équivalent existe, mais son chemin varie selon la distribution.
  • auditd : démon du sous-système d’audit du noyau, pour une trace granulaire.

Bonnes pratiques à tenir dans la durée #

Aucune de ces règles n’est propre à une distribution ni à une version : c’est leur constance qui les rend utiles.

  • Moindre privilège : les droits nécessaires, le temps nécessaire.
  • Pas de travail quotidien en administrateur : un compte ordinaire, l’élévation ponctuelle quand elle est justifiée.
  • Un humain, un compte : le partage rend toute trace d’audit inexploitable.
  • Suspendre plutôt que supprimer quand le départ n’est pas confirmé.
  • Authentification par clé, complétée au besoin par un module PAM à deux facteurs.
  • Revue régulière des comptes et des groupes d’administration.
À retenir
  • useradd existe partout et n’applique que ce qu’on lui demande ; adduser n’existe que sur la famille Debian/Ubuntu.
  • Les directives de vieillissement de /etc/login.defs ne s’appliquent qu’à la création ; ensuite, c’est chage.
  • La longueur minimale du mot de passe relève de PAM (minlen), pas de la suite shadow.
  • usermod -L verrouille le mot de passe, pas le compte entier.
  • userdel -r détruit le répertoire personnel : sauvegarde obligatoire avant.

Conclusion #

La création d’utilisateurs repose sur un socle stable — useradd, usermod, chage, gpasswd — auquel Debian et Ubuntu ajoutent leur surcouche. La difficulté n’est pas de retenir les commandes, mais de savoir où s’arrête leur effet : un mot de passe verrouillé n’est pas un compte fermé, et un répertoire personnel supprimé ne revient pas. Relisez la page de manuel de votre distribution avant toute opération irréversible.

À lire Lancez Votre Boutique en Ligne : Stratégies et Étapes Essentielles

Questions fréquentes #

Faut-il utiliser useradd ou adduser ?
Sur Debian ou Ubuntu, adduser est le plus sûr pour un compte humain : il pose les questions et applique la politique de la distribution. Partout ailleurs, et dans un script, useradd avec ses options explicites reste la référence.
Pourquoi mon nouveau compte n’a-t-il pas de répertoire personnel ?
Parce que useradd n’en crée un que si --create-home est passée, ou si la configuration du système le demande. Un compte créé avec -r n’en reçoit pas, quelle que soit l’option.
Verrouiller un mot de passe suffit-il à fermer un compte ?
Non. usermod -L n’agit que sur le mot de passe : une clé publique déjà déposée reste fonctionnelle. La documentation recommande d’y ajouter une date d’expiration de compte.

Sans rapport avec ce guide, le même réseau publie aussi un blog de cosmétique naturelle et de DIY beauté.

ALJ Création est édité de façon indépendante. Soutenez la rédaction en nous ajoutant dans vos favoris sur Google Actualités :

Dans la même rubrique : Web & Freelance

A lire aussi : agence web 123web · développeur React freelance