Les utilisateurs sont l'un des éléments clés de tout système Linux car avec eux, nous nous connectons et nous pouvons effectuer des tâches en fonction des autorisations qui ont été attribuées (administration, lecture, écriture) et sur cette base, ces utilisateurs auront une certaine autorité dans le système . Un moyen idéal d'avoir un contrôle direct sur ceux-ci et rien de mieux que de le faire en sachant répertorier les utilisateurs sous Linux, ainsi nous saurons en détail quels utilisateurs nous avons qui devraient être modifiés ou simplement supprimés.
Il est important de connaître les utilisateurs que nous avons enregistrés au sein d'une équipe, surtout si nous sommes une organisation et que nous devons annuler ceux qui ne sont pas opérationnels. Au niveau national également, il est intéressant de savoir combien d'utilisateurs nous avons créés pour supprimer ceux qui ne sont pas utiles et qui n'exercent finalement aucune fonction dans notre système.
Solvetic vous donnera les directives pour lister les utilisateurs dans Linus et ainsi avoir un contrôle centralisé sur chacun d'eux.
1. Afficher les utilisateurs sous Linux à l'aide du fichier /etc/passwd
Le fichier /etc/passwd contient les informations de l'utilisateur local, c'est donc un bon mécanisme pour savoir qui est enregistré dans le système Linux, puisque chacune des lignes de ce fichier donne des indications sur les informations de connexion de session de chaque personne.
Étape 1
Pour ce cas, nous pouvons utiliser la commande cat ou les comme suit :
moins / etc / passwd
Étape 2
Si nous utilisons cat, nous verrons ce qui suit :
Étape 3
Ces informations nous donnent des détails spécifiques sur chaque utilisateur tels que :
- Nom d'utilisateur actuel
- Mot de passe crypté (la lettre x indique que le mot de passe est stocké dans le fichier /etc/shadow)
- Numéro d'identification de l'utilisateur (UID)
- Numéro d'identification du groupe d'utilisateurs (GID)
- Nom complet de l'utilisateur (GECOS)
- Répertoire d'accueil de l'utilisateur
- Shell de connexion (par défaut dans / bin / bash)
Étape 4
Dans le cas où nous ne voudrions pas accéder à autant de détails mais voir uniquement le nom d'utilisateur, les commandes awk ou cut sont disponibles pour imprimer uniquement le premier champ (nom d'utilisateur) comme suit :
awk -F: '{print $ 1}' / etc / passwd cut -d: -f1 / etc / passwd
2. Lister les utilisateurs sous Linux avec la commande getent
Une autre option à utiliser pour le contrôle utilisateur est la commande "getent" qui prend les entrées de la base de données qui ont été configurées dans le fichier /etc/nsswitch.conf.
Étape 1
Cela inclut la base de données passwd, où les détails de l'utilisateur sont stockés, pour utiliser cette méthode, nous devons exécuter ce qui suit :
obtenir le mot de passeÉtape 2
En conséquence, nous verrons ce qui suit :
Étape 3
En cas d'utilisation de LDAP pour le problème d'authentification des utilisateurs, getent affichera tous les utilisateurs Linux directement à partir du fichier /etc/passwd et de la base de données LDAP, comme la commande précédente, nous pouvons utiliser awk ou cut pour n'afficher que le premier champ (nom d'utilisateur) avec l'une des options suivantes :
getent mot de passe | awk -F: '{print $ 1}' getent passwd | couper -d: -f1
3. Visualiser la disponibilité et l'existence d'un utilisateur sous Linux
Avec les commandes précédentes, nous avons vu comment afficher tous les utilisateurs du système, mais nous avons également la possibilité de rechercher un utilisateur particulier.
Étape 1
Pour cela, nous pouvons utiliser la syntaxe suivante :
getent mot de passe | utilisateur grep
Étape 2
Si cet utilisateur existe, nous accédons simplement aux informations de connexion, s'il n'existe pas, rien ne sera imprimé dans le terminal, une autre méthode pour voir l'existence d'un utilisateur consiste à exécuter la commande suivante :
getent passwd utilisateur
Étape 3
Une autre option à utiliser sera de définir le nombre de comptes d'utilisateurs actuellement sur Linux, nous y parvenons en filtrant la sortie passtent getent avec la commande wc comme suit. Cette commande indiquera le nombre d'utilisateurs existants.
getent mot de passe | wc -l
4. Afficher les utilisateurs normaux et les utilisateurs système sous Linux
Les utilisateurs système sont les utilisateurs créés au moment de l'installation du système d'exploitation et de ses nouveaux packages et les utilisateurs normaux sont les utilisateurs créés par l'utilisateur root ou par un autre utilisateur avec des privilèges sudo, cela permet à un utilisateur normal d'avoir un shell de connexion et un répertoire personnel (Home).
Étape 1
Pour des raisons d'administration, chaque utilisateur se voit attribuer un identifiant numérique appelé UID, au cas où cela ne serait pas spécifié, l'UID sera automatiquement sélectionné dans le fichier /etc/login.defs en fonction des valeurs UID_MIN et UID_MAX, Nous pouvons vérifier l'UID_MIN et les valeurs UID_MAX avec la commande suivante :
grep -E 'UID_MIN | UID_MAX' /etc/login.defs
Étape 2
Avec ces valeurs, il est déterminé que les utilisateurs normaux sont dans la plage UID entre 1000 et 60000, maintenant nous pouvons connaître les utilisateurs normaux sous Linux avec la commande suivante :
getent mot de passe {1000… 60000}
Étape 3
Les valeurs système UID_MIN et UID_MIN pouvant varier, la commande suivante affiche les résultats de manière globale :
eval getent passwd {$ (awk '/ UID_MIN / {print $ 2}' /etc/login.defs)… $ (awk '/ UID_MAX / {print $ 2}' /etc/login.defs)}
Étape 4
Pour lister uniquement les noms d'utilisateur que nous exécutons :
eval getent passwd {$ (awk '/ UID_MIN / {print $ 2}' /etc/login.defs)… $ (awk '/ UID_MAX / {print $ 2}' /etc/login.defs)} | couper -d: -f1
Grâce à Solvetic vous saurez désormais parfaitement connaître tous les utilisateurs de Linux et ainsi avoir un contrôle plus complet sur eux.