Android

Comment créer des utilisateurs sous Linux (commande useradd)

Bash Linux #2 - Gestion des utilisateurs

Bash Linux #2 - Gestion des utilisateurs

Table des matières:

Anonim

Linux est un système multi-utilisateurs, ce qui signifie que plusieurs personnes peuvent interagir avec le même système en même temps. En tant qu'administrateur système, vous avez la responsabilité de gérer les utilisateurs et les groupes du système en créant et en supprimant des utilisateurs et en les affectant à différents groupes.

Sous Linux, vous pouvez créer un compte utilisateur et affecter l'utilisateur à différents groupes à l'aide de la commande useradd . useradd est un utilitaire de bas niveau, les utilisateurs Debian et Ubuntu utiliseront plutôt la commande adduser plus conviviale à la place.

, nous expliquerons comment utiliser la commande useradd et explorer ses options.

Commande useradd

La syntaxe générale de la commande useradd est la suivante:

useradd USERNAME

Pour pouvoir utiliser la commande useradd et créer de nouveaux utilisateurs, vous devez être connecté en tant que root ou en tant qu'utilisateur avec accès sudo.

Lorsqu'il est useradd , useradd crée un nouveau compte d'utilisateur en utilisant les options spécifiées sur la ligne de commande plus les valeurs par défaut spécifiées dans le fichier /etc/default/useradd .

Les variables définies dans ce fichier diffèrent d'une distribution à l'autre, ce qui fait que la commande useradd produit des résultats différents sur différents systèmes.

La commande lit également le contenu du fichier /etc/login.defs . Ce fichier contient la configuration de la suite de mots de passe cachés, comme la politique d'expiration des mots de passe, les plages d'ID utilisateur utilisées lors de la création du système et des utilisateurs réguliers, etc.

Comment créer un nouvel utilisateur sous Linux

Pour créer un nouveau compte utilisateur, tapez useradd suivi du nom d'utilisateur.

Par exemple, pour créer un nouvel utilisateur nommé username d' username vous devez exécuter:

sudo useradd username Dans sa forme la plus simple lorsqu'il est utilisé sans aucune option, useradd créera un nouveau compte d'utilisateur avec les paramètres par défaut spécifiés dans le fichier /etc/default/useradd .

La commande ajoute une entrée aux fichiers /etc/passwd , /etc/shadow, /etc/group et /etc/gshadow .

Pour pouvoir vous connecter en tant qu'utilisateur nouvellement créé, vous devez définir le mot de passe de l'utilisateur. Pour ce faire, exécutez la commande passwd suivie du nom d'utilisateur:

sudo passwd username

Vous serez invité à saisir et à confirmer le mot de passe. Assurez-vous d'utiliser un mot de passe fort.

Changing password for user username. New password: Retype new password: passwd: all authentication tokens updated successfully.

Comment ajouter un nouvel utilisateur et créer un répertoire personnel

Dans la plupart des distributions Linux, lors de la création d'un nouveau compte utilisateur avec la commande useradd le useradd l'utilisateur n'est pas créé.

Utilisez l'option -m ( --create-home ) pour créer le répertoire personnel de l'utilisateur en tant que /home/username :

sudo useradd -m username

La commande ci-dessus crée le répertoire personnel du nouvel utilisateur et copie les fichiers du répertoire /etc/skel répertoire personnel de l'utilisateur. Si vous répertoriez les fichiers dans le répertoire /home/username , vous verrez les fichiers d'initialisation:

ls -la /home/username/

drwxr-xr-x 2 username username 4096 Dec 11 11:23. drwxr-xr-x 4 root root 4096 Dec 11 11:23.. -rw-r--r-- 1 username username 220 Apr 4 2018.bash_logout -rw-r--r-- 1 username username 3771 Apr 4 2018.bashrc -rw-r--r-- 1 username username 807 Apr 4 2018.profile

Dans le répertoire personnel, l'utilisateur peut écrire, modifier et supprimer des fichiers et des répertoires.

Création d'un utilisateur avec un répertoire personnel spécifique

Par exemple, pour créer un nouvel utilisateur nommé username avec un répertoire personnel /opt/username vous devrez exécuter la commande suivante:

sudo useradd -m -d /opt/username username

Création d'un utilisateur avec un ID utilisateur spécifique

Dans les systèmes d'exploitation Linux et Unix, les utilisateurs sont identifiés par un UID et un nom d'utilisateur uniques.

L'identifiant d'utilisateur (UID) est un entier positif unique attribué par le système Linux à chaque utilisateur. L'UID ainsi que d'autres politiques de contrôle d'accès sont utilisés pour déterminer les types d'actions qu'un utilisateur peut effectuer sur les ressources système.

Par défaut, lorsqu'un nouvel utilisateur est créé, le système attribue le prochain UID disponible à partir de la plage d'ID utilisateur spécifiée dans le fichier login.defs .

Utilisez l'option -u ( --uid ) pour créer un utilisateur avec un UID spécifique. Par exemple, pour créer un nouvel utilisateur nommé username d' username avec l'UID de 1500 vous devez taper:

sudo useradd -u 1500 username

Vous pouvez vérifier l'UID de l'utilisateur à l'aide de la commande id :

id -u username

1500

Création d'un utilisateur avec un ID de groupe spécifique

Les groupes Linux sont des unités d'organisation utilisées pour organiser et administrer les comptes d'utilisateurs sous Linux. L'objectif principal des groupes est de définir un ensemble de privilèges tels que l'autorisation de lecture, d'écriture ou d'exécution pour une ressource donnée pouvant être partagée entre les utilisateurs du groupe.

Lors de la création d'un nouvel utilisateur, le comportement par défaut de la commande useradd consiste à créer un groupe avec le même nom que le nom d'utilisateur et le même GID que l'UID.

Utilisez l'option -g ( --gid ) pour créer un utilisateur avec un groupe de connexion initial spécifique. Vous pouvez spécifier le nom du groupe ou le numéro GID. Le nom de groupe ou GID doit déjà exister.

Par exemple, pour créer un nouvel utilisateur nommé username et définir le groupe de connexion sur les users tapez:

sudo useradd -g users username

Pour vérifier le GID de l'utilisateur, utilisez la commande id :

id -gn username

users

Création d'un utilisateur et affectation de plusieurs groupes

Il existe deux types de groupes dans les systèmes d'exploitation Linux: groupe principal et groupe secondaire ou supplémentaire. Chaque utilisateur peut appartenir à exactement un groupe principal et zéro ou plusieurs groupes secondaires.

L'option -G ( --groups ) vous permet de spécifier une liste de groupes supplémentaires dont l'utilisateur sera membre.

La commande suivante créera un nouvel utilisateur nommé username d' username avec les users groupe principal et la wheel et le docker des groupes secondaires.

sudo useradd -g users -G wheel, developers username

Vous pouvez vérifier les groupes d'utilisateurs en tapant

id username

uid=1002(username) gid=100(users) groups=100(users), 10(wheel), 993(docker)

Création d'un utilisateur avec un shell de connexion spécifique

Par défaut, le shell de connexion du nouvel utilisateur est défini sur celui spécifié dans le fichier /etc/default/useradd . Dans certaines distributions Linux comme Ubuntu 18.04, le shell par défaut est défini sur /bin/sh tandis que dans d'autres, il est défini sur /bin/bash .

L'option -s ( --shell ) vous permet de spécifier le shell de connexion du nouvel utilisateur.

Par exemple, pour créer un nouvel utilisateur nommé username d' username avec /usr/bin/zsh comme type de shell de connexion:

sudo useradd -s /usr/bin/zsh username

Vérifiez l'entrée utilisateur dans le fichier /etc/passwd pour vérifier le shell de connexion de l'utilisateur:

grep username /etc/passwd

username:x:1001:1001::/home/username:/usr/bin/zsh

Création d'un utilisateur avec un commentaire personnalisé

L'option -c ( --comment ) vous permet d'ajouter une brève description du nouvel utilisateur. En règle générale, le nom complet de l'utilisateur ou les informations de contact sont ajoutés en tant que commentaire.

Dans l'exemple suivant, nous créons un nouvel utilisateur nommé username d' username avec la chaîne de texte Test User Account tant que commentaire:

sudo useradd -c "Test User Account" username

Le commentaire est enregistré dans le fichier /etc/passwd :

grep username /etc/passwd

username:x:1001:1001:Test User Account:/home/username:/bin/sh

Le champ de commentaire est également appelé GECOS .

Création d'un utilisateur avec une date d'expiration

L'option -e ( --expiredate ) vous permet de définir une heure à laquelle les nouveaux comptes d'utilisateurs expireront. Cette option est utile pour créer des comptes temporaires. La date doit être spécifiée au YYYY-MM-DD .

Par exemple, pour créer un nouveau compte d'utilisateur nommé username d' username avec une heure d'expiration définie sur 22 janvier 2019, vous exécutez:

sudo useradd -e 2019-01-22 username

Vous pouvez utiliser la commande chage pour vérifier la date d'expiration du compte utilisateur:

sudo chage -l username

La sortie ressemblera à ceci:

Last password change: Dec 11, 2018 Password expires: never Password inactive: never Account expires: Jan 22, 2019 Minimum number of days between password change: 0 Maximum number of days between password change: 99999 Number of days of warning before password expires: 7

Création d'un utilisateur système

Il n'y a pas de réelle différence technique entre le système et les utilisateurs réguliers (normaux). Les utilisateurs système sont généralement créés lors de l'installation du système d'exploitation et des nouveaux packages.

Dans certaines situations, vous devrez peut-être créer un utilisateur système qui sera utilisé par certaines applications.

Utilisez l'option -r ( --system ) pour créer un compte utilisateur système. Par exemple, pour créer un nouvel utilisateur système nommé username d' username vous devez exécuter:

sudo useradd -r username

Les utilisateurs du système sont créés sans date d'expiration. Leurs UID sont choisis dans la plage d'ID utilisateur système spécifiée dans le fichier login.defs , qui est différente de la plage utilisée pour les utilisateurs normaux.

Modification des valeurs useradd par défaut

Les options par défaut de useradd peuvent être affichées et modifiées à l'aide de l' --defaults -D , --defaults ou en modifiant manuellement les valeurs dans le fichier /etc/default/useradd .

Pour afficher les options par défaut actuelles, tapez:

useradd -D

La sortie ressemblera à ceci:

GROUP=100 HOME=/home INACTIVE=-1 EXPIRE= SHELL=/bin/sh SKEL=/etc/skel CREATE_MAIL_SPOOL=no

Disons que vous voulez changer le shell de connexion par défaut de /bin/sh en /bin/bash . Pour ce faire, spécifiez le nouveau shell comme indiqué ci-dessous:

sudo useradd -D -s /bin/bash

Vous pouvez vérifier que la valeur par défaut du shell est modifiée en exécutant la commande suivante:

sudo useradd -D | grep -i shell

SHELL=/bin/bash

Conclusion

Dans ce didacticiel, nous vous avons montré comment créer de nouveaux comptes d'utilisateurs à l'aide de la commande useradd . Les mêmes instructions s'appliquent à toute distribution Linux, y compris Ubuntu, CentOS, RHEL, Debian, Fedora et Arch Linux.

N'hésitez pas à laisser un commentaire si vous avez des questions.

groupe d'utilisateurs du terminal