DevOps

Administration Utilisateurs Linux

La gestion des utilisateurs et des groupes dans les systèmes Linux revêt une importance cruciale, contribuant à la sécurité, à la gestion des ressources et à la facilitation de l’administration du système. Comprendre les mécanismes sous-jacents à la configuration des utilisateurs et des groupes dans un environnement Linux est essentiel pour les administrateurs système et les utilisateurs avancés.

Tout d’abord, il convient de souligner que dans les systèmes d’exploitation de type Unix, y compris Linux, chaque utilisateur est associé à un identifiant utilisateur (UID) unique, et chaque groupe est identifié par un identifiant de groupe (GID) unique. Ces identifiants sont utilisés par le système d’exploitation pour suivre et gérer les permissions et les accès aux ressources.

La première étape lors de la configuration des utilisateurs consiste à créer un nouvel utilisateur. Cela peut être accompli à l’aide de la commande « adduser » ou « useradd », selon la distribution Linux spécifique. Par exemple, sur les distributions basées sur Debian, telles que Ubuntu, la commande « adduser » est souvent utilisée.

bash
adduser nom_utilisateur

Cette commande demande à l’administrateur de saisir des informations telles que le mot de passe pour le nouvel utilisateur, ainsi que des détails facultatifs tels que le nom complet, le numéro de téléphone, etc. Une fois l’utilisateur créé, un répertoire personnel correspondant est généralement créé dans le répertoire /home.

Pour définir un mot de passe pour un utilisateur existant, la commande « passwd » peut être utilisée.

bash
passwd nom_utilisateur

L’ajout d’un utilisateur à un groupe spécifique peut être réalisé à l’aide de la commande « usermod ». Par exemple, pour ajouter un utilisateur à un groupe appelé « groupe1 », la commande suivante peut être utilisée :

bash
usermod -aG groupe1 nom_utilisateur

Cette commande ajoute l’utilisateur spécifié au groupe indiqué, tout en préservant les autres appartenances aux groupes.

La liste des utilisateurs existants peut être consultée à l’aide de la commande « cat » avec le fichier /etc/passwd ou en utilisant la commande « getent passwd ». Cela affiche une liste détaillée des utilisateurs, y compris leurs UID, GID, répertoires personnels, et d’autres informations pertinentes.

bash
cat /etc/passwd

ou

bash
getent passwd

Il est important de noter que la modification directe du fichier /etc/passwd n’est généralement pas recommandée, car elle peut entraîner des erreurs de configuration système.

Concernant la gestion des groupes, la création d’un groupe peut être réalisée avec la commande « groupadd ». Par exemple, pour créer un groupe appelé « groupe1 », la commande suivante peut être utilisée :

bash
groupadd groupe1

Pour afficher la liste des groupes existants, la commande « cat » avec le fichier /etc/group ou la commande « getent group » peut être utilisée.

bash
cat /etc/group

ou

bash
getent group

L’ajout d’utilisateurs à un groupe existant a déjà été mentionné précédemment à l’aide de la commande « usermod ».

La gestion des droits et des permissions est un aspect crucial de la configuration des utilisateurs et des groupes. Le système Linux utilise un système de permissions basé sur trois catégories : propriétaire, groupe, et autres. La commande « chmod » est couramment utilisée pour modifier les permissions d’un fichier ou d’un répertoire.

bash
chmod options permissions fichier_ou_répertoire

Par exemple, pour accorder des droits de lecture, écriture et exécution au propriétaire d’un fichier, des droits de lecture au groupe et aucun droit aux autres, la commande suivante peut être utilisée :

bash
chmod 750 fichier

Il est également possible d’utiliser la commande « chown » pour changer le propriétaire d’un fichier ou d’un répertoire, et la commande « chgrp » pour changer le groupe associé.

bash
chown nouveau_propriétaire fichier_ou_répertoire
bash
chgrp nouveau_groupe fichier_ou_répertoire

En résumé, la configuration des utilisateurs et des groupes dans un environnement Linux implique la création, la modification et la gestion des comptes utilisateurs, des groupes et des permissions associées. Les commandes telles que « adduser », « usermod », « groupadd », « chmod », « chown », et « chgrp » sont des outils essentiels pour accomplir ces tâches. Comprendre ces concepts et commandes est fondamental pour assurer une administration système efficace, garantissant la sécurité et la gestion efficace des ressources.

Plus de connaissances

Pour approfondir davantage la gestion des utilisateurs et des groupes dans un environnement Linux, il est essentiel de comprendre le fichier /etc/passwd, qui stocke les informations sur les comptes d’utilisateurs, ainsi que le fichier /etc/group, qui contient les détails des groupes.

Le fichier /etc/passwd est une base de données textuelle qui répertorie les utilisateurs du système. Chaque ligne du fichier représente un utilisateur et contient plusieurs champs séparés par des deux-points (:). Ces champs incluent le nom d’utilisateur, le mot de passe (ou un caractère x indiquant que le mot de passe est stocké dans le fichier /etc/shadow), l’UID (identifiant utilisateur), le GID (identifiant du groupe principal), le nom complet de l’utilisateur, le répertoire personnel, et le shell par défaut.

Par exemple, en affichant le contenu du fichier /etc/passwd, on peut obtenir des informations sur les utilisateurs du système :

bash
cat /etc/passwd

Le fichier /etc/group, quant à lui, stocke les informations relatives aux groupes du système. Chaque ligne de ce fichier contient le nom du groupe, le mot de passe du groupe (ou x s’il est stocké dans /etc/gshadow), le GID du groupe, et une liste d’utilisateurs supplémentaires appartenant à ce groupe.

bash
cat /etc/group

La gestion des utilisateurs et des groupes se fait également à travers le fichier /etc/shadow, qui stocke les mots de passe chiffrés des utilisateurs. Ce fichier est essentiel pour assurer la sécurité des comptes d’utilisateurs. L’accès direct à ce fichier est généralement réservé aux utilisateurs root.

bash
cat /etc/shadow

En ce qui concerne les droits d’accès, il est essentiel de comprendre les notations de permission dans Linux. Chaque fichier ou répertoire a des droits spécifiques pour le propriétaire, le groupe et les autres. La commande « ls -l » permet d’afficher ces permissions de manière détaillée.

bash
ls -l nom_fichier_ou_répertoire

Le résultat affiche quelque chose comme ceci :

css
-rw-r--r-- 1 utilisateur groupe 1024 févr. 4 10:00 fichier.txt

Dans cet exemple, le propriétaire a des droits de lecture et d’écriture, le groupe a des droits de lecture, et les autres ont également des droits de lecture seulement.

La commande « chown » permet de changer le propriétaire d’un fichier ou d’un répertoire, tandis que la commande « chgrp » permet de changer le groupe associé.

bash
chown nouveau_propriétaire fichier_ou_répertoire chgrp nouveau_groupe fichier_ou_répertoire

La gestion des utilisateurs et des groupes peut également impliquer la création de comptes système, qui sont utilisés pour exécuter des services ou des applications spécifiques. Ces comptes système ont généralement un UID inférieur à 1000 et n’ont pas de mot de passe. Ils sont créés lors de l’installation de certaines applications ou services.

La commande « userdel » permet de supprimer un utilisateur, tandis que la commande « groupdel » supprime un groupe.

bash
userdel nom_utilisateur groupdel nom_groupe

En résumé, la gestion des utilisateurs et des groupes dans un environnement Linux est un aspect fondamental de l’administration système. Comprendre les fichiers /etc/passwd, /etc/group et /etc/shadow, ainsi que les commandes associées telles que « adduser », « usermod », « groupadd », « chmod », « chown », et « chgrp », permet une administration système efficace, garantissant la sécurité, la cohérence et la gestion optimale des ressources du système.

Bouton retour en haut de la page