Linux regorge de commandes depuis le terminal, il en va de même pour gérer les utilisateurs et groupes : adduser, addgroup, usermod, passwd, etc).
Vous pouvez donc ajouter ou supprimer un nouvel utilisateur et groupe facilement en ligne de commandes.
Ce tutoriel vous explique comment ajouter un utilisateur/groupe sur Linux en ligne de commandes.
Table des matières
- 1 Le fonctionnement des utilisateurs dans Linux
- 2 Les commandes pour gérer les utilisateurs Linux
- 2.1 adduser : ajouter un utilisateur Linux
- 2.2 deluser : supprimer un utilisateur Linux
- 2.3 addgroup : ajouter un utilisateur à un groupe
- 2.4 usermod : modifier la configuration utilisateur
- 2.5 groupmod : modifier la configuration d’un groupe utilisateur
- 2.6 passwd : changer/supprimer le mot de passe d’un utilisateur
- 2.7 ID, chage : afficher les informations d’un utilisateur Linux
- 3 Le fichier /etc/adduser.conf
- 4 Liens
Le fonctionnement des utilisateurs dans Linux
Comme tout OS, Linux permet de créer des utilisateurs pour se connecter ou des utilisateurs systèmes.
Le fonctionnement est relativement simple et documenté dans cet article :
Linux stocke les données des utilisateurs dans plusieurs fichiers de configuration dans le dossier /etc.
On y trouve :
- /etc/passwd : stocke la liste des utilisateurs, avec leur UID, dossier home
- /etc/group : stocke la liste des groupes
- /etc/shadow : stocke les mots de passe
- /etc/gshadow contient les mots de passe des groupes utilisateurs Linux
Les commandes pour gérer les utilisateurs Linux
Voici les commandes les plus utiles pour gérer les utilisateurs linux :
- adduser ou useradd : pour ajouter un utilisateur linux
- userdel ou deluser : supprimer un utilisateur linux
- usermod : La commande usermod modifie les fichiers d’administration des comptes du système selon les modifications qui ont été indiquées sur la ligne de commande
- groupmod : pour modifier la configuration d’un groupe utilisateur
- passwd : changer le mot de passe d’un utilisateur Linux
adduser : ajouter un utilisateur Linux
La commande adduser peut s’utiliser de manière très simple.
Dans ce cas, les paramètres vont être pris par défaut par exemple le dossier home sera /home/toto :
adduser toto
Ici l’identifiant sera 1002, c’est le suivant libr qui est pris.
Il ne reste plus qu’à saisir le mot de passe de l’utilisateur.
A partir de là, ce dernier est ajouté dans la configuration utilisateur /etc/passwd.
Mais on peut aller plus loin en utilisant divers paramètres afin de pouvoir créer l’utilisateur comme on le souhaite.
Par exemple ici on fixe le shell, l’uid et le répertoire du home de l’utilisateur
adduser toto --shell /bin/bash --home /home/supertoto --uid 2000 --disabled-password
L’option –disabled-password permet d’interdire l’identification par mot de passe, cela peut-être intéressant pour un utilisateur SSH afin de forcer l’authentification par clé RSA.
La commande ID permet d’afficher les informations d’un utilisateur (UID, home, shell, …)
Ajouter un utilisateur Linux dans un groupe
Enfin adduser vous permet d’ajouter un utilisateur Linux dans un groupe utilisateur.
La syntaxe est la suivante :
adduser NomUtilisateur NomGroupe
Mais on peut aussi utiliser usermod pour ajouter un utilisateur dans un ou plusieurs groupes.
Cela donne :
usermod -a -G groupe1,groupe2 NomUtilisateur
usermod -a -G sys,adm toto
deluser : supprimer un utilisateur Linux
Cette commande permet de supprimer un utilisateur.
Rien d’extraordinaire là dans son utilisation :
deluser nomUtilisateur
Cela ne supprime pas son home, ainsi il faudra le faire manuellement.
Par exemple :
sudo rm -R /home/utilisateur
addgroup : ajouter un utilisateur à un groupe
Le commande addgroup permet de créer un groupe.
Ce dernier va donc être ajouté aux fichiers /etc/group
La syntaxe est la suivante pour créer un groupe utilisateur.
Si vous ne spécifié pas l’ID, Linux prendra le numéro libre suivant.
addgroup [--gid ID] NomDuGroupe
Enfin pour créer un groupe système :
addgroup --system [--gid ID] NomDuGroupe
usermod : modifier la configuration utilisateur
usermod permet donc de modifier la configuration d’un utilisateur.
Plus haut on a vu qu’il pouvait modifier l’appartenance à un group utilisateur.
Mais il permet aussi de modifier le nom d’un utilisateur ou UID.
Ajouter des informations à un utilisateur Linux :
usermod -c "C'est un super utilisateur" nomUtilisateur
Pour changer l’identifiant d’un utilisateur :
usermod --login nouvelIdentifiant
usermod -l nouvelIdentifiant #autre syntaxe
On peut aussi déplacer le contenu du home :
usermod --login nouvelIdentifiant --home /nouveauHome--move-home ancienIdentifiant
usermod -d /nouveauHome -m /home #autre syntaxe
Modifier l’UID d’un utilisateur Linux :
usermod -u 888 nomUtilisateur
Changer le shell d’un utilisateur :
usermod -s /bin/shell nomUtilisateur
Enfin usermod permet de jouer sur les dates d’expirations du mot de passe.
Par exemple pour verrouiller un compte utilisateur :
usermod --expiredate 1 nomUtilisateur usermod -e YYY-MMM-DD nomUtilisateur #avec une date usermod -L -e 1 nomUtilisateur #autre syntaxe
Pour le réactiver :
usermod --expiredate "" nomUtilisateur
usermod -U nomUtilisateur #autre syntaxe
groupmod : modifier la configuration d’un groupe utilisateur
groupmod permet de modifier la configuration d’un groupe utilisateur.
Par exemple pour changer le nom d’un groupe :
groupmod -n new-name nouveauNomGroupe nomGroupeActuel
Ou encore modifier le GID d’un groupe :
groupmod -g nouveauID nomGroupe
passwd : changer/supprimer le mot de passe d’un utilisateur
Enfin la commande passwd permet de changer le mot de passe d’un utilisateur linux.
Le nouveau mot de passe sera demandé en confirmation.
Mais la commande passwd va plus loin.
Par exemple pour supprimer un mot de passe d’un stérilisateur :
passwd -l nomUtilisateur
Enfin pour remettre en place le mot de passe :
passwd -u nomUtilisateur
Mais aussi verrouiller un utilisateur :
passwd -l nomUtilisateur
Mettre une date d’expiration de l’utilisateur qui sera verrouillé ensuite :
passwd -e YYYY-MM-DD nomUtilisateur
On peut aussi l’utiliser pour réinitialiser le mot de passe root.
Les articles suivants vous guident en cela :
- Mot de passe perdu ou oublié sur Ubuntu
- Réinitialiser le mot de passe root perdu ou oublié avec un Live USB de secours
ID, chage : afficher les informations d’un utilisateur Linux
La commande chage permet d’afficher les dates d’expirations d’un utilisateur Linux.
Alors que la commande ID affichage le shell, Home, UID, etc.
Le fichier /etc/adduser.conf
Le fichier /etc/adduser.conf contient les valeurs par défaut des programmes adduser, addgroup, deluser et delgroup.
Chaque option est de la forme option = valeur.
Cela permet de définir les homes, shell et autres valeurs par défaut.
Liens
- Le fonctionnement des utilisateurs et groupes sur Linux
- Gérer les utilisateurs/groupes sur Linux en ligne de commandes (adduser, addgroup, usermod, passwd, …)
- Le fichier /etc/group dans Linux
- Le fichier /etc/passwd dans Linux
- Comment utiliser la commande passwd de Linux avec des exemples
- La commande useradd : utilisations et exemples
- Utilisateur et groupes Ubuntu : comment ajouter, supprimer
- Ubuntu : comment passer un utilisateur en administrateur
- Comment lister les utilisateurs de Linux
- Comment lister les groupes dans Linux
- Comment utiliser la commande su avec des exemples sur Linux
- sudo : comment utiliser le configurer sudoers sur Linux (Debian, Ubuntu, Mint …)
- Comment ajouter un utilisateur à sudo (sudoers) dans Ubuntu ou Debian
- Comment utiliser la commande su avec des exemples sur Linux
- Qu’est-ce que /etc/shadow et son rôle