Administrez les comptes utilisateurs et les groupes

De nombreux collaborateurs se partagent le système Linux, vous allez donc devoir créer des comptes distincts et structurer tout cela pour éviter le moindre accès non autorisé à nos dossiers sensibles.

Dans un premier temps, nous allons décrypter la façon dont Linux gère techniquement cette cohabitation. Ensuite, on vous montrera comment générer et configurer ces nouveaux accès directement depuis votre terminal, avant d'organiser les équipes grâce aux groupes.

Comprenez le modèle multi-utilisateurs de Linux

Dès sa conception, Linux a été pensé pour être utilisé par plusieurs personnes simultanément, chacune disposant d'une identité propre.

Qu'est-ce que cela signifie concrètement pour l'infrastructure de l'entreprise ?

Grâce à la gestion des comptes utilisateurs, plusieurs collaborateurs peuvent utiliser le même système Linux sans interférer entre eux.

Par exemple, une collègue du service conformité peut être connectée directement sur la machine pour consulter des rapports sensibles. Pendant ce temps, un collègue du service gestion peut accéder au système à distance via SSH afin de lancer un traitement automatisé sur des données financières. Un administrateur système peut également ouvrir une session en bureau distant pour effectuer des opérations de maintenance.

Chacun travaille dans sa propre session et manipule uniquement ses fichiers.

Que vos collègues à la conformité et à la gestion peuvent se connecter en même temps, lancer leurs applications et manipuler leurs documents, sans jamais interférer avec le travail des autres. La stricte séparation entre les comptes est d'ailleurs l'un des fondements absolus de la sécurité de votre environnement.

En coulisses, le système ne reconnaît pas les humains par leur prénom, mais se base sur des identifiants numériques uniques :

C'est grâce à ces identifiants que Linux structure la séparation rigoureuse entre les membres de vos équipes et les processus internes de la machine.

Où le système garde une trace de tout cela ?

Rassurez-vous, vous n'aurez pas à les manipuler pour le moment, mais à titre informatif, sachez que Linux enregistre les informations des comptes utilisateurs et des groupes dans des fichiers internes au système, tels que/etc/passwd, /etc/group   ou encore/etc/shadow. Chacun a un rôle précis, et l’ensemble doit rester cohérent pour que le système fonctionne correctement. Bonne nouvelle, c'est la machine qui gère cette mécanique interne pour vous !

Rosa insiste toujours sur un point fondamental :

À mes débuts, cette gestion millimétrée des accès me semblait un peu contraignante. J'avais même pris la mauvaise habitude de configurer un seul compte générique pour toute une équipe... jusqu'au jour où un collaborateur a malencontreusement supprimé le mauvais répertoire de travail ! Le problème ? Impossible de savoir qui avait effectué la manipulation, puisque tout le monde utilisait le même compte. C'est là que j'ai véritablement assimilé la philosophie de ce système.

Retenez cette règle d'or : sous Linux, la sécurité repose d’abord sur la séparation des utilisateurs, pas sur la complexité des outils. Chacun dispose de son propre compte, ce qui permet d’identifier clairement qui réalise quelles actions sur le système.

Créez et gérez des utilisateurs depuis le terminal

Passons à la pratique. Lorsqu'un nouveau collaborateur intègre le département, c'est à vous de lui préparer son espace de travail. Évidemment, n'importe qui ne peut pas décider d'ajouter des personnes sur la machine : la création et la modification des comptes utilisateurs nécessitent impérativement des privilèges administrateur. Pour obtenir ces droits d'accès supérieurs et agir sur le cœur du système, vous avez deux options :

  1. précéder votre action de la commandesudo, ce qui permet d'exécuter une seule instruction avec les droits maximums avant de redevenir un utilisateur standard,

  2. basculer intégralement sur une session administrateur à l'aide de la commandesudo -i, ce qui maintient vos privilèges pour toutes les commandes suivantes.

Certaines distributions Linux proposent des interfaces graphiques pour gérer les comptes utilisateurs. Ici, nous utiliserons cependant la ligne de commande. C’est la méthode la plus couramment utilisée par les administrateurs système, notamment parce qu’elle fonctionne aussi sur les serveurs sans interface graphique. La commande useraddpermet de créer rapidement un nouvel utilisateur.

Au moment de l'exécution de cette commande, le système fait deux choses essentielles. 

  1. D'une part, il attribue à ce collaborateur un identifiant unique (l'UID).

  2. D'autre part, en utilisant les bonnes options, il va lui provisionner un répertoire personnel (le fameux home directory), qui constituera son espace de travail strictement privé au sein du système.

Cependant, un compte nouvellement créé ressemble à une porte sans poignée. Pour que votre collègue puisse s'y connecter, son mot de passe doit être défini ou modifié avec la commandepasswd . Sans cette étape cruciale, le compte existe bel et bien, mais il demeure verrouillé.

Enfin, une bonne administration passe toujours par le contrôle. Vous devrez systématiquement vérifier que le compte a bien été créé, que le répertoire personnel est à sa place, et que la connexion fonctionne.

Il est temps de voir cela en action. Regardez comment enchaîner ces manipulations directement sur le terminal pour intégrer un nouveau membre dans l'équipe.

Dans cette vidéo, on a :

  1. activé les privilèges administrateur indispensables avecsudo,

  2. créé un nouvel utilisateur et généré son répertoire de travail grâce àuseradd - m,

  3. vérifié son identité système avecid(ou via /etc/passwd) et la présence de son dossier personnel avec ls /home,

  4. configuré un mot de passe sécurisé via la commandepasswd,

  5. confirmé que tout fonctionnait en basculant directement sur ce nouveau compte avecsu - nouvel_utilisateur.

L'opération est rapide, mais elle implique des responsabilités. Rosa vous partage d'ailleurs un conseil :

Créer un utilisateur doit toujours répondre à un besoin précis et se faire dans un cadre maîtrisé. On ne crée pas de comptes "pour voir" ou pour faire des tests aléatoires sur un environnement de production. Chaque compte est une nouvelle porte d'entrée sur le système !

Organisez les utilisateurs à l’aide des groupes

Maintenant que vos utilisateurs sont opérationnels, il va falloir organiser leur collaboration. Dans le contexte de l'entreprise, les responsables conformité et les chargés de gestion administrative ont besoin de consulter certains documents sensibles conjointement, sans que le profil support n'y accède. Comment allez-vous gérer cela ? Il serait fastidieux d'accorder des permissions personne par personne. C'est précisément là que les groupes interviennent : ils permettent de gérer des droits communs à plusieurs utilisateurs de façon centralisée.

Sous Linux, chaque utilisateur possède obligatoirement un groupe principal (pour primary group) et peut appartenir à plusieurs groupes secondaires. Bien comprendre cette différence est indispensable pour maîtriser le comportement de création des fichiers et l'impact réel de votre modèle collaboratif.

Pour bien visualiser cette mécanique, prenons l’exemple de Nadia qui est chargée de gestion administrative. Dans le cadre de ses fonctions sur ce poste Linux partagé, c'est elle qui aura la responsabilité de créer et de modifier les documents sensibles au quotidien pour faire avancer ses dossiers, contrairement aux profils de conformité ou de support.

Son compte est rattaché à son groupe principal "nadia" pour la création de ses fichiers, et à ses groupes secondaires "gestion" et "conformite" pour accéder aux dossiers partagés. 

Schéma des groupes Linux : groupe principal de Nadia pour ses fichiers, et groupes secondaires (gestion, conformité) pour accéder à des ressources partagées.
Distinction entre groupe principal et groupes secondaires

Pour mettre de l'ordre sur la machine partagée et créer ces structures, vous allez vous appuyer sur plusieurs commandes dédiées. Au lieu de détailler chaque option textuellement, découvrez comment regrouper les collaborateurs en utilisant ces commandes en conditions réelles. On va notamment créer un groupe, y associer un utilisateur, puis vérifier que tout a bien été pris en compte par le système.

Dans cette vidéo, on a :

  • créé une nouvelle structure de groupe adaptée au département avec la commandegroupadd,

  • rattaché un compte utilisateur à ce groupe spécifique en utilisant l'outil d'administrationusermod(en utilisant impérativement l'option-aGpour ajouter sans écraser les groupes existants),

  • vérifié le succès de la manœuvre en consultant les identifiants actifs avec la commandeid. C'est votre outil de diagnostic numéro un.

  • vérifié que le groupe a bien été enregistré dans le système en affichant la fin du fichier avec tail -n 5 /etc/group.

Les groupes sont l’outil privilégié pour gérer les droits : on attribue des permissions à des groupes, pas à des individus. Le jour où un membre de l'équipe sera muté ou remplacé, vous n'aurez qu'à retirer ou ajouter son compte au groupe correspondant, sans avoir à modifier manuellement les accès de milliers de documents sensibles !

Déléguez des privilèges administrateur avec sudo

Jusqu’ici, vous avez utilisé la commande sudo pour exécuter certaines actions avec des privilèges administrateur, par exemple lors de la création d’un utilisateur ou d’un groupe. Mais une question essentielle se pose : qui a réellement le droit d’utiliser sudo sur le système ?

Dans un environnement professionnel, tout le monde ne doit évidemment pas pouvoir modifier les comptes utilisateurs, installer des logiciels ou intervenir sur la configuration du système. Ces opérations sensibles doivent être réservées à certains profils techniques.

Linux repose ici sur la même logique que pour l’accès aux fichiers : la gestion par groupes. Sur de nombreuses distributions comme Debian ou Ubuntu, les utilisateurs autorisés à exécuter des commandes administratives via sudo appartiennent simplement au groupe sudo.

Grâce à ce mécanisme, l’administration du système reste simple à gérer : il suffit d’ajouter ou de retirer un utilisateur du groupe sudo pour modifier ses privilèges.
Par exemple, pour autoriser l’utilisateur admin à exécuter des commandes administratives, il suffit de l’ajouter au groupe sudo :

sudo usermod -aG sudo admin

La logique reste donc la même : Linux utilise les groupes pour gérer les privilèges, qu’il s’agisse d’accès aux fichiers ou d’administration du système.

Comment peut-on vérifier qu’un utilisateur possède ou non des privilèges administrateur ?

Comme vous l’avez déjà vu, la commande id permet d’afficher les groupes associés à un utilisateur. Par exemple :

id nadia

Si l’utilisateur possède des privilèges administrateur, le groupe sudo apparaîtra dans la liste des groupes secondaires. Cela permet de vérifier rapidement si un utilisateur peut exécuter des commandes avec  sudo.

À vous de jouer

Contexte 

C’est le moment de passer derrière le clavier ! Rosa vient de vous montrer la marche à suivre. Mais attention, le véritable poste Linux partagé, lui, est encore totalement vierge et doit être prêt à accueillir l'équipe avant demain matin.

Votre mission est de prendre le relais et de configurer la machine de A à Z. Vous allez devoir créer les groupes pour nos deux métiers, puis préparer les comptes de Nadia (à la gestion), de Bruno (à la conformité) et du profil support. Gardez bien en tête la contrainte majeure de notre environnement : le profil support, qui interviendra ponctuellement pour la maintenance technique, ne doit sous aucun prétexte être rattaché à un groupe métier afin de protéger nos données sensibles. Enfin, pour administrer la machine au quotidien, vous allez également préparer un compte dédié à l’administration du système.

Consignes

Toutes les actions doivent être réalisées avec les droits administrateur grâce à la commandesudo  .

  1. Créez les deux groupes correspondant aux métiers :gestionetconformite.

  2. Créez les utilisateurs suivants :nadia(gestion),bruno(conformite),support(sans groupe métier) etadmin,

  3. Associez chaque utilisateur à son groupe. Le comptesupportne doit appartenir à aucun groupe métier (ni gestion ni conformité) : laissez-le uniquement avec son groupe par défaut.

  4. Donnez à l’utilisateur adminla possibilité d’exécuter des commandes administratives en l’ajoutant au groupe sudo.

  5. Vérifiez pour chaque utilisateur son identité et ses groupes à l'aide de vos outils de diagnostic.

  6. Vérifiez que les groupes ont bien été créés au niveau du système en inspectant les fichiers internes.

En résumé

  • Linux repose sur un modèle multi-utilisateurs où chaque personne possède une identité distincte définie par un UID (User Identifier) pour l’utilisateur et un GID (Group Identifier) pour le groupe. 

  • Les informations des comptes et des groupes sont enregistrées dans des fichiers système comme /etc/passwd, /etc/groupet/etc/shadow, ce qui structure la séparation et la sécurité des accès.

  • La création et la gestion des utilisateurs s’effectuent depuis le terminal avec des privilèges administrateur viasudo, notamment grâce aux commandesuseradd,passwdetsu.

  • Les groupes permettent d’attribuer des droits de manière centralisée, chaque utilisateur disposant d’un groupe principal et pouvant appartenir à plusieurs groupes secondaires.

  • Les commandesgroupadd,usermod-aGetidfacilitent l’organisation et la vérification des appartenances aux groupes afin de garantir un contrôle d’accès cohérent et sécurisé.

  • Pour accorder des privilèges administrateur, il suffit d'ajouter l'utilisateur au groupe systèmesudo. 

Vos utilisateurs sont créés, regroupés et prêts à travailler ! Mais pour l'instant, un problème de taille subsiste : ils naviguent sur la machine sans aucune restriction spécifique sur les documents. Nous allons utiliser l'architecture de ces fameux groupes pour verrouiller l'accès à nos données sensibles. Vous apprendrez à configurer les permissions standards pour contrôler très exactement qui a le droit de lire, de modifier ou d'exécuter nos fichiers.

Ever considered an OpenClassrooms diploma?
  • Up to 100% of your training program funded
  • Flexible start date
  • Career-focused projects
  • Individual mentoring
Find the training program and funding option that suits you best