Économisez 15% sur tous les services d'hébergement

Testez vos compétences et obtenez Réduction sur tout plan d'hébergement

Utilisez le code : Skills Commencer
Sections
Administration Linux

Comment afficher tous les utilisateurs disponibles dans Linux : Guide complet pour les administrateurs VPS

La gestion des comptes utilisateurs est l’une des responsabilités les plus fondamentales de tout administrateur système Linux. Que vous fassiez un audit des permissions d’accès, que vous dépanniez des problèmes de connexion ou que vous renforciez la posture de sécurité de votre serveur, savoir exactement quels utilisateurs existent sur votre système est une compétence essentielle. Ce guide vous guide à travers chaque méthode pratique pour lister et inspecter les utilisateurs Linux — de la lecture des fichiers système bruts à l’utilisation de puissants utilitaires en ligne de commande.

Si vous exécutez un environnement VPS Hosting avec AlexHost, ces techniques s’appliquent directement à votre serveur Ubuntu, Debian ou CentOS et vous aideront à maintenir un contrôle total sur qui a accès à votre infrastructure.

Pourquoi l’affichage des utilisateurs Linux est important pour la sécurité du serveur

Avant de plonger dans les commandes, il vaut la peine de comprendre *pourquoi* cette tâche est si importante. Sur n’importe quel serveur Linux — en particulier celui hébergeant des applications web comme WordPress, Laravel, ou des API personnalisées — plusieurs comptes utilisateur s’accumulent au fil du temps :

  • Utilisateurs système créés automatiquement par les services installés (par exemple, www-data, mysql, nginx)
  • Utilisateurs administratifs avec sudo ou des privilèges au niveau root
  • Utilisateurs d’application liés à des piles logicielles spécifiques
  • Comptes oubliés ou orphelins laissés après la suppression de logiciels ou les changements de personnel

L’audit régulier de ces comptes vous aide à :

  • Détecter les comptes non autorisés ou suspects
  • Appliquer le principe du moindre privilège
  • Respecter les politiques de sécurité et les exigences d’audit
  • Identifier les shells mal configurés ou les répertoires personnels

Avec l’accès root d’AlexHost, le stockage NVMe et la protection DDoS intégrée, l’exécution de ces commandes est rapide, fiable et sûre — même sur les systèmes de production sous charge.

Comprendre le fichier /etc/passwd

Toutes les informations de compte utilisateur dans Linux sont stockées dans le fichier /etc/passwd. Il s’agit d’une base de données en texte brut que le système d’exploitation lit lors des opérations d’authentification et de gestion des utilisateurs. Chaque ligne du fichier représente un seul compte utilisateur et suit ce format structuré :

username:password:UID:GID:comment:home_directory:shell

Voici ce que signifie chaque champ :

ChampDescription
usernameLe nom de connexion de l’utilisateur
passwordHistoriquement stocké ici ; maintenant remplacé par x (le hash réel est dans /etc/shadow)
UIDNuméro d’ID utilisateur (0 = root, 1–999 = utilisateurs système, 1000+ = utilisateurs réguliers)
GIDID du groupe principal
commentDescription optionnelle ou nom complet (champ GECOS)
home_directoryChemin d’accès au dossier personnel de l’utilisateur
shellLe shell par défaut assigné à l’utilisateur

Une entrée typique ressemble à ceci :

alexadmin:x:1001:1001:Alex Admin,,,:/home/alexadmin:/bin/bash

Comprendre cette structure rend chaque méthode ci-dessous beaucoup plus facile à interpréter.

Méthode 1 : Afficher tous les utilisateurs en lisant /etc/passwd directement

L’approche la plus directe consiste à imprimer l’intégralité du contenu de /etc/passwd dans votre terminal. Vous avez deux options principales selon la façon dont vous souhaitez naviguer dans la sortie.

Utilisation de cat (meilleur pour les sorties courtes ou le piping)

cat /etc/passwd

Cela vide l’intégralité du fichier vers la sortie standard. Sur un serveur typique, vous verrez des dizaines d’entrées — la plupart d’entre elles sont des comptes système.

Utilisation de less (meilleur pour la navigation interactive)

less /etc/passwd

Le pager less vous permet de faire défiler le fichier de manière interactive. Appuyez sur q pour quitter, / pour rechercher, et utilisez les flèches pour naviguer.

Exemple de sortie

root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
alexadmin:x:1001:1001::/home/alexadmin:/bin/bash
deploy:x:1002:1002::/home/deploy:/bin/bash

Conseil : Les comptes avec /usr/sbin/nologin ou /bin/false comme shell ne peuvent pas se connecter de manière interactive — ce sont des comptes de service utilisés par les démons système.

Méthode 2 : Utiliser getent pour interroger la base de données utilisateur

La commande getent (abréviation de *get entries*) récupère les enregistrements des bases de données système définies dans /etc/nsswitch.conf. C’est la méthode préférée dans les environnements Linux modernes car elle fonctionne correctement même lorsque les comptes utilisateur proviennent de répertoires externes comme LDAP ou NIS — pas seulement du fichier /etc/passwd local.

getent passwd

Le format de sortie est identique à /etc/passwd, mais getent garantit que vous voyez *tous* les utilisateurs quel que soit l’endroit où ils sont stockés. Sur un VPS AlexHost standard, la sortie correspondra à /etc/passwd, mais l’utilisation de getent est considérée comme une bonne pratique pour la portabilité et l’exhaustivité.

Filtrer pour un utilisateur spécifique

getent passwd alexadmin

Cela retourne uniquement l’enregistrement de l’utilisateur alexadmin — utile pour vérifier rapidement qu’un compte existe et vérifier sa configuration.

Méthode 3 : Extraire uniquement les noms d’utilisateurs avec cut

Lorsque vous avez besoin d’une liste propre de noms d’utilisateurs — sans UIDs, répertoires home ou informations de shell — combinez getent avec la commande cut pour isoler le premier champ.

getent passwd | cut -d: -f1

Comment cela fonctionne :

  • getent passwd affiche la base de données utilisateur complète
  • | cut -d: -f1 envoie cette sortie à cut, qui utilise : comme délimiteur (-d:) et extrait uniquement le premier champ (-f1) — le nom d’utilisateur

Exemple de sortie

root
daemon
bin
sys
www-data
alexadmin
deploy
backup

Cette liste propre est idéale pour les scripts, la journalisation ou l’analyse rapide de comptes inattendus.

Afficher uniquement les utilisateurs humains (connexion)

Les comptes système ont généralement des UIDs inférieurs à 1000. Pour filtrer uniquement les utilisateurs humains réguliers, combinez awk avec une vérification d’UID :

awk -F: '$3 >= 1000 && $1 != "nobody" {print $1}' /etc/passwd

Ceci est particulièrement utile sur les environnements d’hébergement partagé ou les serveurs avec de nombreux comptes de service.

Méthode 4 : Utiliser awk pour une sortie personnalisée et sélective

La commande awk est un outil de traitement de texte puissant qui vous donne un contrôle total sur les champs à afficher et leur formatage. Ceci est inestimable lorsque vous avez besoin d’un aperçu rapide des comptes utilisateur à des fins d’administration ou d’examen de sécurité.

Afficher les noms d’utilisateur et les répertoires personnels

getent passwd | awk -F: '{print "Username: " $1 "t Home Directory: " $6}'

Exemple de sortie

Username: root           Home Directory: /root
Username: www-data       Home Directory: /var/www
Username: alexadmin      Home Directory: /home/alexadmin
Username: deploy         Home Directory: /home/deploy

Afficher les noms d’utilisateur, les UID et les shells

getent passwd | awk -F: '{print "User: " $1 "t UID: " $3 "t Shell: " $7}'

Afficher uniquement les utilisateurs avec un shell de connexion valide

getent passwd | awk -F: '$7 == "/bin/bash" || $7 == "/bin/sh" {print $1, $6, $7}'

Cette commande est particulièrement utile pour les audits de sécurité — elle révèle chaque compte qui peut réellement ouvrir une session shell interactive sur votre serveur.

Méthode 5 : Compter le nombre total d’utilisateurs

Besoin d’un décompte rapide de tous les comptes utilisateur du système ?

getent passwd | wc -l

Pour compter uniquement les utilisateurs humains (UID ≥ 1000) :

awk -F: '$3 >= 1000' /etc/passwd | wc -l

Method 6: Check Which Users Have Sudo Privileges

Savoir qui peut escalader les privilèges est essentiel pour la sécurité. Utilisez ces commandes pour identifier les comptes privilégiés :

Check the sudo group members

getent group sudo

Check the wheel group (common on CentOS/RHEL)

getent group wheel

List all sudoers (requires root)

sudo cat /etc/sudoers

On your VPS with cPanel or any managed control panel environment, some users may have sudo rights granted through panel-specific configuration files in /etc/sudoers.d/.

Méthode 7 : Afficher les utilisateurs actuellement connectés

Pour voir qui est *activement* connecté à votre serveur en ce moment, utilisez la commande who ou w :

who
w

La commande w fournit plus de détails, y compris ce que chaque utilisateur exécute actuellement, son heure de connexion et sa durée d’inactivité. C’est une excellente première étape lors de l’investigation d’une activité suspecte sur votre serveur.

Practical Security Workflow: Auditing Users on Your Linux VPS

Voici un flux de travail recommandé que vous pouvez exécuter périodiquement sur n’importe quel serveur AlexHost pour maintenir un environnement utilisateur propre et sécurisé :

# Step 1: List all human users
awk -F: '$3 >= 1000 && $1 != "nobody" {print $1}' /etc/passwd

# Step 2: Check who has sudo access
getent group sudo wheel

# Step 3: Identify accounts with login shells
getent passwd | awk -F: '$7 ~ /bash|sh/ {print $1, $7}'

# Step 4: See who is currently logged in
w

# Step 5: Review recent login history
last | head -20

Exécuter cet audit régulièrement — ou l’automatiser avec une tâche cron — est un moyen simple mais efficace de maintenir votre serveur sécurisé. C’est particulièrement important si votre VPS héberge plusieurs applications web ou si vous avez accordé un accès SSH à des développeurs ou des prestataires.

Gérer les utilisateurs au-delà de la visualisation : étapes suivantes

Une fois que vous avez identifié vos utilisateurs, vous devrez peut-être prendre des mesures. Voici les commandes de gestion des utilisateurs les plus courantes :

TâcheCommande
Ajouter un nouvel utilisateursudo adduser newusername
Supprimer un utilisateursudo deluser --remove-home username
Verrouiller un comptesudo passwd -l username
Modifier le shell d’un utilisateursudo chsh -s /usr/sbin/nologin username
Ajouter un utilisateur au groupe sudosudo usermod -aG sudo username

Ces opérations sont entièrement prises en charge dans les environnements VPS Linux d’AlexHost, où vous avez un accès root illimité pour gérer votre système exactement comme vous le souhaitez.

Choisir le bon hébergement AlexHost pour vos besoins

Les commandes et techniques de ce guide s’appliquent à tous les environnements de serveurs Linux, mais le bon plan d’hébergement fait une différence significative en termes de performance et de gérabilité :

  • Hébergement VPS — Accès root complet, ressources dédiées et stockage NVMe. Idéal pour les développeurs et les entreprises ayant besoin d’un contrôle total sur leur environnement Linux.
  • Serveurs dédiés — Performance maximale et isolation pour les applications à fort trafic ou les charges de travail sensibles à la sécurité nécessitant un contrôle d’accès utilisateur strict.
  • Hébergement Web partagé — Environnement géré pour les projets plus simples où la gestion des utilisateurs au niveau du serveur est assurée par l’équipe d’AlexHost.
  • Panneaux de contrôle VPS — Simplifiez la gestion des utilisateurs et des serveurs grâce à des interfaces graphiques intuitives comme cPanel, Plesk ou DirectAdmin.

Conclusion

Afficher et auditer les comptes utilisateur sur un serveur Linux n’est pas seulement une tâche administrative de routine — c’est un pilier de la bonne hygiène de sécurité. En maîtrisant les méthodes couvertes dans ce guide, vous obtenez une visibilité claire sur chaque compte de votre système :

  • /etc/passwd et getent passwd vous donnent l’image complète
  • cut réduit la sortie aux seuls noms d’utilisateur
  • awk vous permet de créer des rapports personnalisés et lisibles
  • who et w révèlent les sessions actives en temps réel
  • Les requêtes de groupe exposent les risques d’escalade de privilèges

Que vous soyez un administrateur système chevronné ou que vous commenciez tout juste à gérer des serveurs Linux, ces outils sont indispensables. Combinez-les avec l’infrastructure robuste d’AlexHost — dotée d’un stockage NVMe, d’un accès root complet et d’une protection DDoS de classe entreprise — et vous avez tout ce dont vous avez besoin pour exécuter un serveur rapide, sécurisé et bien administré.

Prêt à prendre le contrôle total de votre environnement Linux ? Explorez AlexHost VPS Hosting et commencez dès aujourd’hui.