Comment vérifier l’UID et le GID d’un utilisateur sous Linux : Le guide complet

Dans la gestion des utilisateurs et des groupes sur un système Linux, l’identifiant d’utilisateur (UID) et l’identifiant de groupe (GID) sont des concepts fondamentaux et critiques. Ces identifiants sont utilisés pour identifier de manière unique les utilisateurs et les groupes sur le système. Ils ont un impact direct sur la gestion des permissions des utilisateurs et le contrôle d’accès aux fichiers, ainsi, les administrateurs système et les développeurs doivent vérifier et comprendre efficacement ces identifiants. Cet article fournit une explication détaillée de comment vérifier facilement ces identifiants en utilisant des outils en ligne de commande et des fichiers système.

Sommaire

Que sont l’UID et le GID

L’UID (Identifiant d’Utilisateur) et le GID (Identifiant de Groupe) sont des identifiants numériques utilisés pour distinguer les utilisateurs et les groupes dans un système Linux. Le système utilise ces identifiants pour gérer la propriété des fichiers et des répertoires et contrôler les droits d’accès.

  • UID (Identifiant d’Utilisateur) : Un numéro unique attribué à chaque compte utilisateur. Cet identifiant détermine les opérations qu’un utilisateur peut effectuer sur le système. Par exemple, l’UID de l’utilisateur root est généralement 0, qui possède toutes les permissions sur le système.
  • GID (Identifiant de Groupe) : Un numéro unique attribué à chaque groupe d’utilisateurs. Un groupe sur le système fait référence à un ensemble d’utilisateurs partageant des permissions spécifiques. Un utilisateur peut appartenir à plusieurs groupes, héritant des permissions de ces groupes.

Sous Linux, les UIDs et les GIDs sont automatiquement attribués au moment de la création de l’utilisateur, mais les administrateurs système peuvent changer ces valeurs si nécessaire. Dans le système de fichiers, les fichiers et les répertoires sont gérés en fonction de l’UID et du GID du propriétaire, et les droits d’accès sont définis sur cette base.

Comment vérifier l’UID et le GID depuis la ligne de commande

Dans un système Linux, vous pouvez facilement vérifier l’UID et le GID d’un utilisateur en utilisant des outils en ligne de commande. La méthode la plus commune et directe est d’utiliser la commande id. Cette commande affiche l’UID, le GID et les IDs des groupes auxquels appartient l’utilisateur actuel ou spécifié.

Utilisation de base de la commande `id`

L’exécution de la commande id sans arguments affiche l’UID et le GID de l’utilisateur qui opère la session de shell actuelle, ainsi que les IDs des groupes auxquels il appartient.

id

Cette commande produit une sortie comme celle-ci :

uid=1000(nom_utilisateur) gid=1000(nom_groupe) groups=1000(nom_groupe),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),108(lxd),998(docker)

Ici, uid représente l’identifiant de l’utilisateur, gid représente l’identifiant du groupe principal de l’utilisateur, et groups liste les identifiants des groupes supplémentaires auxquels l’utilisateur appartient.

Vérifier l’UID et le GID pour un utilisateur spécifique

Pour vérifier l’UID et le GID pour un utilisateur spécifique, passez le nom d’utilisateur comme argument à la commande id.

id nom_utilisateur

Par exemple, pour vérifier les informations pour un utilisateur nommé alice, vous exécuteriez :

id alice

Cette méthode est utile pour vérifier rapidement les informations d’identification de n’importe quel utilisateur sur le système. La commande id est l’un des outils fréquemment utilisés par les administrateurs système, s’avérant très pratique pour configurer les permissions des utilisateurs et pour le dépannage.

Trouver l’UID et le GID dans le fichier /etc/passwd

Dans les systèmes Linux, le fichier /etc/passwd contient des informations sur tous les comptes utilisateur du système. Vous pouvez également vérifier l’UID et le GID d’un utilisateur à partir de ce fichier. Le fichier /etc/passwd est basé sur du texte et écrit dans un format lisible par l’homme, chaque ligne contenant des informations sur un utilisateur.

Structure du fichier `/etc/passwd`

Chaque entrée dans le fichier /etc/passwd est notée dans le format suivant :

nom_utilisateur:x:UID:GID:GECOS:répertoire_personnel:shell

Ici,

  • nom_utilisateur indique le nom d’utilisateur.
  • x est le champ du mot de passe, qui est maintenant géré par le système de mot de passe shadow dans le fichier /etc/shadow.
  • UID est l’identifiant d’utilisateur.
  • GID est l’identifiant de groupe principal de l’utilisateur.
  • GECOS est un champ contenant le nom complet de l’utilisateur ou d’autres informations.
  • répertoire_personnel est le chemin vers le répertoire personnel de l’utilisateur.
  • shell indique le shell qui se lance lors de la connexion de l’utilisateur.

Recherche de l’UID et du GID à l’aide de la ligne de commande

Pour trouver l’UID et le GID d’un utilisateur spécifique à partir du fichier /etc/passwd, utiliser la commande grep peut être pratique. Par exemple, pour vérifier l’UID et le GID de l’utilisateur nommé alice, exécutez :

grep 'alice' /etc/passwd

Exemple de sortie :

alice:x:1001:1001:Alice Exemple:/home/alice:/bin/bash

Dans cet exemple, à la fois l’UID et le GID de l’utilisateur alice sont 1001. De plus, le répertoire personnel de alice est /home/alice, et le shell par défaut est /bin/bash.

Se référer directement au fichier /etc/passwd est particulièrement utile pour vérifier les informations de tous les utilisateurs enregistrés sur le système ou dans des situations où une interface graphique n’est pas disponible. Cependant, comme les informations de mot de passe sont stockées dans le fichier /etc/shadow pour des raisons de sécurité, des privilèges administratifs sont nécessaires pour un accès direct.

Exemples pratiques : Comment vérifier l’UID et le GID d’un utilisateur spécifique

Il existe plusieurs façons de vérifier l’UID (Identifiant d’Utilisateur) et le GID (Identifiant de Groupe) d’un utilisateur spécifique sur un système Linux, mais ici, nous expliquerons pratiquement les deux méthodes les plus courantes.

Méthode 1 : Utilisation de la commande `id`

La méthode la plus simple et la plus directe est d’utiliser la commande id. Cette commande affiche l’UID spécifique de l’utilisateur, le GID, et les IDs des groupes auxquels ils appartiennent.

Pour obtenir les informations pour un utilisateur spécifique, entrez ce qui suit dans la ligne de commande :

id nom_utilisateur

Par exemple, si le nom d’utilisateur est alice, cela ressemblerait à ceci :

id alice

Cette commande fournit les informations sur l’UID, le GID et l’affiliation aux groupes de alice.

Méthode 2 : Examen du fichier `/etc/passwd`

Toutes les informations sur les comptes utilisateur du système sont stockées dans le fichier /etc/passwd. Vous pouvez également examiner directement ce fichier pour l’UID et le GID.

Pour rechercher les informations d’un utilisateur spécifique, utilisez la commande grep :

grep 'nom_utilisateur' /etc/passwd

Par exemple, si le nom d’utilisateur est alice, vous entreriez :

grep 'alice' /etc/passwd

Cela affiche l’entrée alice du fichier /etc/passwd, qui inclut l’UID et le GID de alice dans cette ligne.

Ces méthodes permettent de vérifier facilement l’UID et le GID d’un utilisateur spécifique sur un système Linux. Pour les administrateurs système et les professionnels de la sécurité, ces informations jouent un rôle crucial dans la gestion des permissions et l’audit du système.

Utilisation de scripts pour vérifier en masse l’UID et le GID de plusieurs utilisateurs

Si vous avez besoin de vérifier efficacement l’UID et le GID pour plusieurs utilisateurs, écrire un petit script shell peut automatiser ce processus. Ici, nous présentons un exemple simple de script pour récupérer en masse l’UID et le GID de plusieurs utilisateurs sur un système Linux.

Exemple de script

Ci-dessous se trouve un script shell qui affiche l’UID et le GID pour une liste spécifiée d’utilisateurs. Ce script énumère les noms d’utilisateur séparés par des espaces et exécute la commande id pour chaque utilisateur.

#!/bin/bash

# Liste des noms d'utilisateur
utilisateurs="alice bob charlie"

# Affiche l'UID et le GID pour chaque utilisateur
for utilisateur in $utilisateurs; do
  echo "Utilisateur : $utilisateur";
  id $utilisateur
  echo ""; # Imprime une ligne vide
done

Pour utiliser ce script, ouvrez d’abord un éditeur de texte et collez le code ci-dessus, puis enregistrez le fichier (par exemple, afficher_uid_gid.sh). Ensuite, déplacez-vous dans le répertoire où le fichier de script est enregistré dans le terminal et donnez au script les permissions d’exécution.

chmod +x afficher_uid_gid.sh

Ensuite, exécutez le script.

./afficher_uid_gid.sh

L’exécution du script affiche l’UID et le GID pour chaque utilisateur spécifié. Cette méthode est particulièrement utile lors de la conduite d’enquêtes ou d’audits sur des groupes d’utilisateurs spécifiques au sein du système. De plus, en modifiant la liste des utilisateurs dans le script, vous pouvez effectuer cette opération pour tout ensemble d’utilisateurs selon le besoin.

Résumé

Il existe plusieurs façons efficaces de vérifier l’UID (Identifiant d’Utilisateur) et le GID (Identifiant de Groupe) d’un utilisateur sous Linux, y compris en obtenant directement ces informations depuis la ligne de commande à l’aide de la commande id, en examinant le fichier /etc/passwd, et en utilisant des scripts pour récupérer en masse les informations pour plusieurs utilisateurs. Chaque méthode est efficace selon vos besoins et votre situation.

En comprenant et en utilisant correctement ces méthodes, vous pouvez améliorer considérablement l’efficacité de la gestion des utilisateurs dans l’administration des systèmes Linux et l’audit de sécurité. Surtout pour les administrateurs système et les professionnels de la sécurité, maîtriser ces opérations de base est important car elles deviennent une partie des tâches quotidiennes.

En fin de compte, comprendre avec précision les concepts des utilisateurs et des groupes, et gérer correctement des éléments de base comme l’UID et le GID, sont essentiels pour travailler de manière sûre et efficace sur les systèmes Linux. Cet article espère servir de guide précieux pour les utilisateurs et les administrateurs Linux.

Sommaire