Lister les utilisateurs Linux : Comment afficher tous les utilisateurs dans le terminal ?

Lister les utilisateurs Linux est une tâche essentielle de l’administration du système, en particulier si plusieurs développeurs travaillent sur le même environnement de serveur privé virtuel (VPS). Elle permet de simplifier l’audit des comptes et la gestion des autorisations afin de garantir une sécurité optimale.

On peut lister les utilisateurs linux en appliquant des commandes via le terminal, telles que cut, getent et awk. Cependant, ces utilitaires ont des résultats différents, ce qui les rend adaptés à des tâches de gestion et à des scénarios particuliers. 

Cet article explique comment afficher les utilisateurs d’un système d’exploitation Linux à l’aide de différentes commandes. Nous explorerons les conditions préalables et les meilleures pratiques pour assurer une administration de système sans heurts. 

Conditions préalables au listing des utilisateurs de Linux

Avant de lister les utilisateurs Linux, assurez-vous que vous avez accès à l’interface de ligne de commande du système. Pour les machines distantes comme un VPS, connectez-vous à l’aide d’un client SSH comme PuTTY, Terminal ou le Terminal de navigateur d’Hostinger.

Onglet d'accès SSH dans le menu d'aperçu du VPS de hPanel

Vous devez également vous connecter en tant qu’utilisateur root, car la gestion de tous les utilisateurs nécessite un privilège administratif. Les utilisateurs de l’hébergement VPS d’Hostinger peuvent trouver les informations de connexion en allant dans hPanelVPSGérer → onglet Accès SSH. 

Avertissement ! Utilisez l'utilisateur root avec précaution car vous risquez d'exécuter accidentellement des commandes Linux destructrices. Pour plus de sécurité, connectez-vous en tant qu'autre utilisateur disposant de privilèges administratifs et exécutez les commandes avec sudo.

Comment lister les utilisateurs Linux

Dans les distributions Linux, les utilisateurs sont des comptes qui peuvent interagir avec le système d’exploitation et le gérer. Ils sont divisés en deux types : les utilisateurs normaux et les utilisateurs système

Les utilisateurs du système sont créés automatiquement lorsque vous installez le système d’exploitation ou un package. Entre-temps, vous configurez un compte normal manuellement à l’aide de la commande useradd. 

Outre l’origine, ils ont également des identifiants différents. Un utilisateur normal a généralement des numéros à quatre chiffres, tandis que le compte système utilise généralement des numéros de 1 à 999

Chaque distribution Linux stocke tous les utilisateurs et leurs informations dans le fichier /etc/passwd, qui comprend des lignes avec la syntaxe suivante :

username:x:userID:groupID:userinfo:/homedir:/bin/bash

Chaque ligne représente un compte d’utilisateur normal ou système. Voici ce que cela signifie :

  • username – le nom du compte.
  • x – le mot de passe crypté de l’utilisateur. La valeur réelle se trouve dans /etc/shadow.
  • userID – le numéro d’identification de l’utilisateur.
  • groupID – le numéro d’identification du groupe auquel l’utilisateur appartient.
  • Userinfo – informations supplémentaires sur l’utilisateur.
  • /homedir – le répertoire personnel de l’utilisateur.
  • /bin/bash – le shell de connexion par défaut de l’utilisateur. 

Comment lister les utilisateurs à l’aide de la commande cat

La commande cat ou concatenate lit et fusionne le contenu de plusieurs fichiers. Elle vous permet également de lister les utilisateurs linux en imprimant les entrées du fichier /etc/passwd de la manière suivante :

cat /etc/passwd

Par défaut, cette commande Linux imprimera toutes les lignes, montrant plusieurs utilisateurs et leurs détails. 

Une requête dans le fichier /etc/passwd affichera les comptes ordinaires et les comptes système, quel que soit leur statut. Pour lister tous les utilisateurs connectés, exécutez plutôt la commande users.

Comment lister les utilisateurs de Linux à l’aide de la commande getent

La commande getent interroge les entrées des bases de données système configurées dans /etc/nsswitch.conf, y compris passwd. Pour obtenir la liste de tous les utilisateurs, entrez la commande suivante :

getent passwd optional-user

Si vous spécifiez l’utilisateur, getent affichera des informations détaillées sur ce compte particulier. Sinon, il affiche tous les utilisateurs, comme le fait la commande cat.

Vous pouvez également utiliser gentent pour interroger d’autres bases de données, comme group qui contient les groupes système. En outre, cet utilitaire est compatible avec d’autres systèmes d’exploitation UNIX.

Comment lister les utilisateurs avec les commandes awk et cut pour une sortie personnalisée

Si vous souhaitez afficher uniquement les noms d’utilisateur, utilisez la commande awk. Cet utilitaire de traitement de texte vous permet de définir un caractère comme délimiteur pour diviser chaque ligne du fichier /etc/passwd en plusieurs champs.

Nous utiliserons les deux points (:) comme délimiteur à l’aide de l’option -F et nous imprimerons la première colonne de chaque ligne, qui ne contient que les noms d’utilisateur :

awk -F':' '{ print $1}' /etc/passwd

Vous pouvez également utiliser la commande cut. Son fonctionnement est similaire à celui de awk, mais sa syntaxe est différente :

cut -d: -f1 /etc/passwd

Outre les noms d’utilisateur, vous pouvez utiliser les commandes awk ou cut pour imprimer des résultats personnalisés. Par exemple, si vous souhaitez lister tous les identifiants d’utilisateurs, exécutez l’une des commandes suivantes :

awk -F':' '{ print $3}' /etc/passwd
cut -d: -f3 /etc/passwd

Les deux commandes utilisent les deux points comme délimiteur et impriment le troisième champ de chaque ligne, qui contient l’identifiant unique de l’utilisateur.

Bonnes pratiques pour un listing efficace des utilisateurs

Pour améliorer l’efficacité de votre administration système, tenez compte des meilleures pratiques suivantes pour lister les utilisateurs Linux.

Combiner des commandes avec des tuyaux pour une liste d’utilisateurs avancée

Dans un système Linux, un tuyau/pipe (|) vous permet de transmettre la sortie d’une commande à un autre utilitaire. Il est utile pour manipuler des données et imprimer des informations spécifiques. 

Supposons que vous souhaitiez vérifier un numéro d’identification d’utilisateur particulier. Vous pouvez le faire en imprimant toutes les données à l’aide de cat et en passant la sortie à grep pour le filtrage. Voici à quoi ressemble la commande :

cat /etc/passwd | grep JohnDoe

La même commande vous permet également de vérifier si un utilisateur spécifique existe.

Vous pouvez également combiner la commande awk avec l’utilitaire Linux find pour retrouver tous les comptes d’utilisateurs qui possèdent un fichier :

find / -type f -exec stat -c "%U %n" {} + | awk '{print $1}' | sort -u

Utiliser une interface graphique pour la gestion des utilisateurs 

Si vous n’êtes pas familiarisé avec les commandes, utilisez une interface utilisateur graphique (GUI) pour répertorier et gérer les utilisateurs dans un système basé sur Linux. Alors que les distributions de bureau l’offrent par défaut, vous avez besoin d’un outil tiers pour un serveur.

L’utilitaire web le plus courant pour gérer les utilisateurs du système Linux est un tableau de contrôle tel que Webmin, Virtualmin et Plesk. Bien que leurs fonctionnalités varient, ils devraient suffire pour lister et gérer les utilisateurs.

Selon votre hébergeur, les étapes pour les installer diffèrent. Chez Hostinger, vous pouvez le faire en quelques clics en allant dans hPanelVPSParamètresOS & PanelSystème d’exploitation. Cliquez sur OS avec panel, sélectionnez un modèle et cliquez sur Change l’OS.

Avertissement ! Le changement de système d'exploitation et de tableau de contrôle effacera toutes les données de votre VPS. Avant de procéder, sauvegardez vos fichiers via FTP.

Gérer les informations des utilisateurs en toute sécurité

Une bonne gestion des utilisateurs est cruciale pour la sécurité du système et l’intégrité des données. Voici quelques tâches à prendre en compte :

  • Attribuer des privilèges minimaux. N’accordez les privilèges de superutilisateur qu’à un administrateur du système Linux afin d’éviter que des personnes non autorisées ne consultent les informations relatives à l’utilisateur. 
  • Définir des autorisations appropriées. Limitez les autorisations de fichiers et de répertoires importants aux seuls utilisateurs autorisés, en particulier ceux qui contiennent des données personnelles.
  • Appliquer des mots de passe robustes. Assurez-vous que tous les utilisateurs du système et les utilisateurs normaux du VPS utilisent des mots de passe forts avec des lettres majuscules, des chiffres et des symboles.
  • Vérifier régulièrement les utilisateurs. Vérifiez périodiquement tous les comptes d’utilisateurs réguliers de votre système afin de détecter les comptes potentiellement malveillants ou compromis.

Écrire des scripts Bash simples pour les tâches répétitives

Les audits de sécurité vous obligent à afficher régulièrement les utilisateurs pour vérifier s’ils sont suspects. Au lieu de le faire manuellement, les administrateurs de systèmes Linux utilisent un script bash pour automatiser le processus.

Par exemple, vous pouvez créer un script pour répertorier tous les comptes d’utilisateurs dans un fichier TXT à l’aide d’une seule commande. Ensuite, utilisez un cron job pour exécuter la tâche automatiquement à un intervalle ou selon un calendrier spécifique. 

Étant donné que le script variera en fonction de votre tâche, utilisez l’assistant IA VPS de Hostinger pour le générer automatiquement. Accédez à cet outil en cliquant sur Assistant IA dans la barre latérale de la page Aperçu du VPS. 

Conclusion

Lister les utilisateurs d’un système Linux est crucial pour l’administration des serveurs. Vous pouvez le faire en affichant le contenu du fichier /etc/passwd à l’aide de la commande cat. Cette commande affichera tous les noms d’utilisateurs avec des détails tels que leur identifiant, leur répertoire personnel par défaut et leur chemin d’accès à l’interpréteur de commandes.

Vous pouvez également obtenir le même résultat en interrogeant la base de données passwd à l’aide de la commande getent. Entre-temps, exécutez awk -F ou cut -d si vous souhaitez afficher uniquement les noms sans autres détails sur l’utilisateur.

En outre, vous pouvez intégrer la sortie dans une autre commande pour imprimer des données personnalisées. Par exemple, ajoutez la commande grep pour filtrer des entrées spécifiques ou find pour rechercher les propriétaires de fichiers. Vous pouvez également installer un tableau de contrôle comme Webmin pour gérer facilement les utilisateurs à l’aide d’une interface graphique. 

Chez Hostinger, vous pouvez l’installer facilement à l’aide d’un template de tableau de contrôle via hPanel. Nous proposons également un assistant VPS IA qui aide à générer des scripts bash pour automatiser les tâches répétitives d’administration des utilisateurs.

Lister les utilisateurs Linux – FAQ

Pour vous aider à mieux comprendre, cette section répondra à plusieurs questions sur l’établissement de listes d’utilisateurs dans Linux.

Comment lister les utilisateurs sous Linux ?

Utilisez les commandes getent ou cat pour lister les utilisateurs Linux. Pour n’imprimer que les noms d’utilisateur, utilisez les commandes awk ou cut. Vous pouvez également utiliser la commande users pour interroger les utilisateurs connectés.

Puis-je afficher tous les utilisateurs et leurs détails à l’aide d’une seule commande ?

Oui, vous pouvez afficher tous les utilisateurs du système et les utilisateurs réguliers en exécutant la commande cat /etc/passwd. Vous pouvez également utiliser la commande getent pour récupérer les informations directement dans la base de données passwd. La sortie sera identique pour les deux commandes.

Quelle option permet d’afficher uniquement le nom d’utilisateur dans la liste des utilisateurs ?

Les options diffèrent selon la commande. Utilisez -F avec awk pour n’imprimer que le nom d’utilisateur. Elle sépare chaque ligne de /etc/passwd en plusieurs champs et affiche la première colonne. Vous pouvez faire la même chose en utilisant -d avec l’utilitaire cut.

Existe-t-il un moyen de trier la liste des utilisateurs par ordre alphabétique ?

Oui, vous pouvez trier la liste des utilisateurs par ordre alphabétique en envoyant la sortie des commandes awk, cut, getent ou cat dans l’utilitaire de tri. Il utilisera l’ordre décroissant par défaut, mais vous pouvez l’inverser en utilisant l’option -r.

Author
L'auteur

Chaimaa Chakir

Chaimaa est une spécialiste du référencement et du marketing de contenu chez Hostinger. Elle est passionnée par le marketing digital et la technologie. Elle espère aider les gens à résoudre leurs problèmes et à réussir en ligne. Chaimaa est une cinéphile qui adore les chats et l'analyse des films.