Comment vérifier si un utilisateur appartient à un groupe sous Linux

LinuxLinuxBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire (lab), vous apprendrez à vérifier si un utilisateur appartient à un groupe spécifique sous Linux. Comprendre l'appartenance des utilisateurs à des groupes est essentiel pour gérer les autorisations et le contrôle d'accès sur un système Linux.

Vous allez explorer trois méthodes différentes pour vérifier l'appartenance à un groupe : en utilisant la commande groups pour lister les groupes d'un utilisateur, en examinant le fichier /etc/group qui contient les informations sur les groupes, et en utilisant la commande id pour afficher les identités de l'utilisateur et du groupe. À la fin de ce laboratoire, vous serez capable de déterminer les appartenances de groupe d'un utilisateur.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux(("Linux")) -.-> linux/UserandGroupManagementGroup(["User and Group Management"]) linux/BasicFileOperationsGroup -.-> linux/cat("File Concatenating") linux/UserandGroupManagementGroup -.-> linux/groups("Group Displaying") linux/UserandGroupManagementGroup -.-> linux/id("User/Group ID Displaying") subgraph Lab Skills linux/cat -.-> lab-558773{{"Comment vérifier si un utilisateur appartient à un groupe sous Linux"}} linux/groups -.-> lab-558773{{"Comment vérifier si un utilisateur appartient à un groupe sous Linux"}} linux/id -.-> lab-558773{{"Comment vérifier si un utilisateur appartient à un groupe sous Linux"}} end

Lister les groupes d'un utilisateur avec la commande groups

Dans cette étape, nous allons explorer comment lister les groupes auxquels un utilisateur appartient en utilisant la commande groups. Comprendre les groupes d'utilisateurs est fondamental sous Linux car ils sont utilisés pour gérer les autorisations et l'accès aux fichiers et aux ressources.

La commande groups est un utilitaire simple qui affiche les noms des groupes principaux et supplémentaires pour chaque nom d'utilisateur donné, ou pour le processus actuel si aucun nom d'utilisateur n'est spécifié.

Voyons quels groupes l'utilisateur actuel (labex) appartient.

Ouvrez votre terminal s'il n'est pas déjà ouvert. Vous pouvez le faire en cliquant sur l'icône Xfce Terminal sur le côté gauche du bureau.

Maintenant, tapez la commande suivante et appuyez sur Entrée :

groups

Vous devriez voir une sortie similaire à celle-ci :

labex sudo ssl-cert public

Cette sortie montre les groupes dont l'utilisateur labex est membre. Dans cet exemple, l'utilisateur labex appartient aux groupes labex, sudo, ssl-cert et public.

  • Le premier groupe listé est généralement le groupe principal de l'utilisateur.
  • Les groupes suivants sont des groupes supplémentaires.

Être membre du groupe sudo est important car cela permet à l'utilisateur d'exécuter des commandes avec des privilèges de superutilisateur en utilisant la commande sudo, comme vous l'avez fait dans le laboratoire précédent pour installer htop.

Vous pouvez également utiliser la commande groups pour vérifier les groupes d'un autre utilisateur si vous connaissez son nom d'utilisateur. Par exemple, pour vérifier les groupes de l'utilisateur root, vous taperiez :

groups root

La sortie montrerait les groupes auxquels l'utilisateur root appartient, qui est généralement seulement le groupe root :

root

Comprendre à quels groupes appartient un utilisateur vous aide à comprendre quelles autorisations il a sur le système.

Cliquez sur Continuer pour passer à l'étape suivante et vérifier l'exécution de votre commande.

Vérifier l'appartenance à un groupe dans le fichier /etc/group

Dans cette étape, nous allons examiner le fichier /etc/group, qui est un fichier système crucial sous Linux stockant les informations sur les groupes d'utilisateurs. Alors que la commande groups vous donne rapidement la liste des groupes d'un utilisateur, l'examen du fichier /etc/group vous montre quels utilisateurs appartiennent à quels groupes à l'échelle du système.

Le fichier /etc/group contient une ligne pour chaque groupe. Chaque ligne comporte quatre champs séparés par des deux-points :

  1. Nom du groupe : Le nom du groupe.
  2. Champ mot de passe : Généralement 'x', indiquant que les mots de passe de groupe ne sont pas utilisés (ou stockés ailleurs).
  3. Identifiant de groupe (GID) : Un identifiant numérique unique pour le groupe.
  4. Membres : Une liste d'utilisateurs séparée par des virgules qui sont membres de ce groupe. Notez que les utilisateurs dont le groupe principal est ce groupe ne sont pas listés ici.

Nous pouvons utiliser la commande cat pour afficher le contenu de ce fichier. cat est un utilitaire standard Unix qui lit les fichiers séquentiellement et les écrit sur la sortie standard.

Ouvrez votre terminal et tapez la commande suivante pour afficher le contenu du fichier /etc/group :

cat /etc/group

Appuyez sur Entrée.

Vous verrez beaucoup de lignes de sortie, chaque ligne représentant un groupe différent sur le système. Recherchez les lignes qui incluent le nom d'utilisateur labex dans le quatrième champ (la liste des membres).

Par exemple, vous pourriez voir des lignes similaires à celles-ci (la sortie exacte variera) :

...
sudo:x:27:labex
...
ssl-cert:x:121:labex
...
public:x:5002:labex
...

Dans ces lignes d'exemple :

  • Le groupe sudo a labex comme membre.
  • Le groupe ssl-cert a labex comme membre.
  • Le groupe public a labex comme membre.

Notez que le groupe labex lui-même peut ne pas lister labex comme membre dans le quatrième champ si labex est son groupe principal.

La consultation du fichier /etc/group vous donne un aperçu plus détaillé des configurations de groupe par rapport à la simple sortie de la commande groups. C'est un fichier précieux pour les administrateurs système pour comprendre les autorisations des utilisateurs.

Cliquez sur Continuer pour passer à l'étape suivante.

Vérifier les groupes d'un utilisateur avec la commande id

Dans cette étape, nous allons revenir sur la commande id que vous avez utilisée dans le premier laboratoire. La commande id fournit une vue complète de l'identité d'un utilisateur, y compris son Identifiant Utilisateur (UID), son Identifiant de Groupe Principal (GID) et tous les groupes dont il est membre. Cette commande est un moyen rapide de vérifier l'appartenance à des groupes.

Vous avez déjà utilisé id pour voir votre UID et votre GID. Maintenant, concentrons-nous sur la partie groups de sa sortie et comparons-la avec ce que vous avez vu avec la commande groups et dans le fichier /etc/group.

Ouvrez votre terminal et tapez la commande suivante :

id

Appuyez sur Entrée.

Vous verrez une sortie similaire à celle-ci :

uid=XXXX(labex) gid=XXXX(labex) groups=XXXX(labex),XX(sudo),XXX(ssl-cert),XXXX(public)

(Note : XXXX et XX sont des espaces réservés pour les identifiants numériques réels, qui peuvent varier légèrement, mais les noms de groupe devraient être cohérents).

Décortiquons à nouveau la sortie, en nous concentrant sur la section groups :

  • uid=XXXX(labex) : Votre Identifiant Utilisateur et votre nom d'utilisateur.
  • gid=XXXX(labex) : Votre Identifiant de Groupe Principal et le nom de votre groupe principal.
  • groups=XXXX(labex),XX(sudo),XXX(ssl-cert),XXXX(public) : Une liste séparée par des virgules de tous les groupes dont vous êtes membre, y compris votre groupe principal et tous les groupes supplémentaires.

Comparez la liste des noms de groupe dans la section groups= de la sortie de la commande id avec la sortie que vous avez obtenue avec la commande groups à l'Étape 1. Vous devriez voir la même liste de noms de groupe.

La commande id est souvent préférée à la commande groups car elle fournit également les identifiants numériques (UID et GID), qui peuvent être utiles dans les scripts et les tâches d'administration système. Elle vous donne une image complète de l'identité d'un utilisateur et de son appartenance à des groupes en une seule ligne de sortie.

Vous avez maintenant appris trois façons différentes de vérifier l'appartenance à des groupes d'utilisateurs sous Linux : en utilisant la commande groups, en examinant le fichier /etc/group et en utilisant la commande id. Chaque méthode fournit des informations légèrement différentes et est utile dans différents contextes.

Cliquez sur Continuer pour terminer cette étape et le laboratoire.

Résumé

Dans ce laboratoire, nous avons appris à vérifier si un utilisateur appartient à un groupe sous Linux en utilisant trois méthodes différentes. Tout d'abord, nous avons utilisé la commande groups pour lister rapidement les groupes principaux et supplémentaires d'un utilisateur spécifié ou de l'utilisateur actuel, en comprenant que l'appartenance à un groupe détermine les autorisations et l'accès.

Ensuite, nous avons exploré le fichier /etc/group, un fichier système fondamental contenant des informations détaillées sur les groupes, et nous avons appris à interpréter sa structure pour vérifier directement l'appartenance à des groupes. Enfin, nous avons utilisé la commande id, un utilitaire polyvalent qui fournit des informations complètes sur l'utilisateur et les groupes, y compris l'identifiant utilisateur, l'identifiant de groupe principal et tous les identifiants de groupes supplémentaires, offrant ainsi une autre façon de confirmer les appartenances à des groupes.