Comment gérer les utilisateurs depuis la ligne de commande dans Linux

Une des principales responsabilités de l’administration Linux est la gestion des utilisateurs. Grâce à l’utilisation de la ligne de commande, la création d’utilisateurs peut être effectuée à distance ou de manière programmatique. Une fois que vous avez créé un utilisateur, vous pouvez ensuite les ajouter à des groupes ou leur donner des privilèges escaladés. De plus, vous pouvez conserver une trace des audits sur ce qui a été fait sur votre serveur et sur tout problème potentiel.
Si vous avez développé des logiciels ou programmé pour le Web, vous êtes peut-être familier avec la politique de ne jamais faire confiance aux utilisateurs. Ce même principe s’applique dans d’autres domaines de l’utilisation des ordinateurs en ce qui concerne l’implication des utilisateurs. Ne donnez l’accès qu’à ceux qui en ont besoin et quand ils en ont besoin. Une délégation généreuse de privilèges pourrait permettre un accès non spécifié et non autorisé aux informations et aux données essentielles d’autres.
Visualisation des utilisateurs existants
L’un des moyens les plus rapides de visualiser les utilisateurs est d’utiliser les commandes cat (concaténer) ou more (pagination) pour afficher la liste des utilisateurs sur le système. Le fichier que vous devrez consulter est le fichier “/etc/passwd”. Ce fichier stocke tous les comptes d’utilisateurs et les informations de connexion des utilisateurs.
sudocat/etc/passwdUtilisation de la commande useradd
useradd est un binaire de bas niveau disponible sur la plupart des distributions. Cette commande est généralement moins utilisée en raison de son caractère moins convivial et intuitif par rapport à la commande adduser. Cependant, il y a très peu de différences et l’une ou l’autre peuvent être utilisées.
Pour en savoir plus sur useradd, exécutez la commande man ou ajoutez --help pour obtenir un aperçu rapide.
man useradduseradd --help
Pour ajouter un utilisateur en utilisant useradd, tapez useradd et le nom de la connexion que vous souhaitez créer.
sudo useradd --create-home testuserDans le cas ci-dessus, l’utilisateur “testuser” sera créé. Par défaut, cette commande ne fera que créer l’utilisateur et rien d’autre. Si vous avez besoin d’un répertoire personnel pour cet utilisateur, ajoutez le flag --create-home pour créer le répertoire personnel pour l’utilisateur.
Utilisation de la commande adduser
La commande adduser est un script perl qui créera l’utilisateur de manière similaire à la commande useradd. Ce qui le rend différent, c’est qu’il s’agit d’une commande interactive et qu’elle vous invitera à définir le mot de passe, le chemin du répertoire personnel, etc. Notez que sur certaines distributions, comme Red Hat et CentOS, adduser est un lien symbolique vers useradd, et sur d’autres distributions comme Arch Linux, adduser est un package qui n’est pas installé par défaut.
L’utilisation de cette commande créera un groupe pour l’utilisateur en utilisant le login de l’utilisateur par défaut. D’autres valeurs par défaut peuvent généralement être trouvées dans le fichier useradd à “/etc/default”.
Dans ce fichier, vous pouvez modifier les paramètres par défaut pour les utilisateurs créés avec useradd, tels que le shell et le répertoire personnel.

Exécutez la commande adduser de manière similaire à ce qui suit :
sudo adduser testuser
Cela vous invitera alors concernant les valeurs par défaut que vous souhaitez définir et vous demandera le mot de passe.
À lire également : Comment gérer votre mot de passe utilisateur depuis le terminal sous Linux
Mots de passe et sécurité
Ajouter un mot de passe pour un utilisateur nécessitera d’exécuter la commande passwd.
sudopasswd testuserSans privilèges superutilisateur, exécuter passwd ne changera que le mot de passe de l’utilisateur connecté. Cette commande testera la complexité du mot de passe. Sur Ubuntu, les exigences en matière de mot de passe sont définies dans le fichier common-password situé dans “/ec/pam.d.” Plus d’informations sur la mise à jour de la complexité peuvent être trouvées dans la page de manuel pour pam-auth-update.

Mise à jour des informations utilisateur
Une fois qu’un utilisateur est sur le système, vous pouvez consulter le fichier “/etc/passwd” pour voir les informations de l’utilisateur et le mot de passe chiffré. Si vous avez besoin d’apporter des modifications à un utilisateur, vous devrez utiliser la commande usermod.

Par exemple, pour changer l’identifiant de l’utilisateur pour le compte testuser4 créé ci-dessus, vous exécuteriez la commande :
sudo usermod -u2022 testuser2Vous pouvez ensuite revoir les changements dans le fichier “/etc/passwd”.
Soyez prudent lors de la modification d’informations critiques telles que le nom de connexion, ou dans ce cas, l’identifiant utilisateur. Consultez la page de manuel pour usermod pour voir ce que vous devrez faire si ces éléments sont changés.
Ajout des utilisateurs à un groupe
Il arrive parfois que vous deviez ajouter des utilisateurs à un groupe afin qu’ils aient les autorisations nécessaires pour exécuter certaines tâches.
Pour ajouter un utilisateur à un groupe :
sudo usermod -a-G groupname usernameNotez que le flag -a est nécessaire pour “ajouter” le groupe pour l’utilisateur. Sinon, vous risquez de retirer l’utilisateur du groupe “sudo” si l’utilisateur est censé avoir des privilèges de superutilisateur.
Alternativement, vous pouvez utiliser la commande gpasswd pour ajouter/enlever un utilisateur d’un groupe.
sudo gpasswd -a username groupnamePour retirer un utilisateur d’un groupe :
sudo gpasswd -d username groupnameSuppression des utilisateurs
Tout comme les autres commandes utilisateur, la suppression d’un utilisateur est précédée de “user” et de l’action. Dans ce cas, vous devrez utiliser la commande userdel.

Notez que userdel ne supprimera pas un utilisateur si des processus utilisent le compte de cet utilisateur.
sudo userdel testuser4Visualisation des journaux utilisateurs
En fonction de votre distribution, vous vérifieriez soit le journal d’authentification, soit le journal de sécurité situé dans “/var/log” pour examiner les connexions des utilisateurs. Ce fichier journal vous donnera les connexions sur votre système dès qu’elles se produisent. C’est un élément crucial pour surveiller les événements en cas de violation et juste pour s’assurer que tout fonctionne comme souhaité.
sudotail/var/log/auth.logLa gestion des utilisateurs est une partie cruciale de la gestion des serveurs Linux s’il y a plus d’une personne qui utilisera votre système. L’utilisation de la ligne de commande vous permettra d’administrer rapidement les utilisateurs, ainsi que d’avoir un historique de la création et des modifications de comptes. Peut-être l’une des meilleures utilisations serait d’automatiser la création avec un script shell si plusieurs comptes sont nécessaires en même temps.
Quoi qu’il en soit, assurez-vous de passer en revue vos comptes sur une base régulière et de supprimer les comptes qui ne sont plus nécessaires. Assurez-vous que l’accès est accordé uniquement à ceux qui ont actuellement besoin d’accès et surveillez vos journaux fréquemment.