4 types de comptes existent:
root le superutilisateur qui a tous les droits (uid 0).
nobody, pour les personnes non authentifiées, a très peu de droits (uid 65534).
Les comptes systèmes et d’application qui sont utilisés pour faire fonctionner certaines applications comme les démons (les services) pour pouvoir contrôler aisément leurs droits et limiter les risques encourus dans la cas où ils fonctionneraient avec le compte root et une personne mal intentionnée réussirait à exploiter un faille de sécurité. Cette personne disposerait alors des droits d’administration. Les uid de ces comptes sont entre 1 et 999.
Les comptes standards pour les utilisateurs humains (uid à partir de 1000, inclus).
La commande de création d’un utilisateur est useradd
Vous devez avoir les droits d’administrateur pour exécuter cette commande.
Elle prend au moins un paramètre qui est le login de l’utilisateur à créer.
Exemple: création de l’utilisateur user1.
# useradd bob
Voici les opérations effectuées par la commande useradd:
Ajout d’un utilisateur dans le fichier /etc/passwd
Un uid généré par le système est attribué à cete utilisateur et stocké dans /etc/passwd
.
Un groupe du même nom est créé dans lequel sera placé l’utilisateur. Il s’agit du groupe principal de l’utilisateur. Ce groupe sera le groupe propriétaire des fichiers et répertoires créés par l’utilisateur.
Le groupe principal d’un utilisateur sera le groupe propriétaire des fichiers créés par cet utilisateur.
Le répertoire de base de l’utilisateur est créé avec les droits corrects: /home/bob
.
Le contenu de /etc/skel
est copié dans le répertoire de base de l’utilisateur.
Un répertoire de réception de courriels est créé dans /var/spool/mail
.
Aucun mot de passe n’est créé pour cet utilisateur.
On peut ensuite visualiser l’utilisateur qui vient d’être créé dans /etc/passwd
:
$ tail -1 /etc/passwd bob:x:1002:1002::/home/bob:/bin/bash
Voici différentes options de la commande useradd
:
Avec un uid spécifique:
# useradd -u 1502 user2
En spécifiant un groupe principal et des groupes secondaires:
# useradd -g vboxfs -G wheel,users user3
Pour ajouter un commentaire:
# useradd -c "Mon commentaire" user4
Pour spécifier une date d’expiration:
# useradd -e 2016-07-15 user5
Pour définir le shell:
# useradd -s /bin/tcsh user6
Pour choisir son répertoire personnel:
# useradd -d /home/toto user7
L’uid est le user identification.
Le gid est le group identification.
La commande id permet de visualiser l’uid d’un utilisateur et ses gid.
Exemple:
N’afficher que l’uid
$ id -u
N’afficher que le gid
$ id -g
Afficher tous les id de groupe
$ id -G
Afficher les groupes avec leur nom
$ id -Gn
Pour changer votre mot de passe, utilisez simplement la commande passwd
.
Tous les utilisateurs peuvent changer leur propre mot de passe. root peut changer le mot de passe de tous les utilisateurs. Personne ne peut retrouver un mot de passe oublié.
# passwd bob
Le mot de passe est alors modifié dans le fichier /etc/shadow
.
bob:$6$E.LZdOtE$0C4ZcVN7TL1RjVnOZTqkD5WgiDFIXqDnnUeTQ.qvbBJsbrHlEFx0lhtvqXMhz7Bucrm0GV2RCExOqA54RUvhb.:17999:0:99999:7:::
La commande passwd
permet aussi d’attribuer un mot de passe à un utilisateur nouvellement créé
La commande userdel
permet de supprimer un utilisateur.
Exemple:
Pour supprimer un utilisateur sans supprimer son répertoire de base:
# userdel utilisateur
Pour supprimer l’utilisateur et son répertoire de base:
# userdel -r utilisateur
Ce sera avec la commande usermod.
Exemple:
Modifier le répertoire de base:
# usermod -d /utilisateurs/user1 user1
Modifier le shell:
# usermod -s /bin/tcsh user1
Modifier le groupe principal :
# usermod -g nouveauGroup user1
Il existe plusieurs méthodes pour désactiver un utilisateur:
# usermod -L user1 (désactive) # usermod -u user1 (réactive)
usermod
que l'on place un utilisateur dans un groupe.
Un utilisateur peut appartenir à un ou plusieurs groupes.
Le groupe principal de l’utilisateur est utilisé lorsqu’il crée des fichiers, des droits lui sont attribués.
L’appartenance à des groupes permettra de définir quelles sont les autorisations dont dispose un utilisateur lorsqu’il tente d’accéder à un fichier.
Comme les utilisateurs, les groupes ont un identifiant unique appelé GID.
Les groupes sont stockés dans le fichier /etc/group
Comme pour les utilisateurs, il existe différents types de groupe:
Le groupe root (gid 0)
Les groupes pour les utilisateurs pouvant faire fonctionner les démons
Le groupe nobody (gid 65534)
Les groupes standards liés à des utilisateurs standards (gid supérieurs à 1000).
C’est la commande groupadd qui permet de créer un groupe.
Exemple:
Création d’un groupe:
# groupadd monGroupe
Création d’un groupe avec un gid spécifique:
# groupadd -g 1560 monGroupe
On retrouve le groupe dans /etc/group
:
monGroup:x:1003:
Pour supprimer un groupe, on utilise la commande groupdel
.
Exemple:
# groupdel nomGroupe
La commande groupmod
permet de modifier un groupe.
Pour changer de nom:
# groupmod -n <Nouveau nom> <nom du groupe à modifier>
Pour changer le gid:
# groupmod -g gid nomGroup
Utilisateurs
Créer un utilisateur nommé exercice1.
Quel est son groupe principal?
Modifier son groupe principal pour qu’il appartienne au groupe root.
Placez le dans le groupe secondaire wheel.
Affichez la liste des groupes auquel appartient l’utilisateur.
Ajoutez le groupe exercice1 à la liste des groupes secondaires.
Groupes
Quelle commande permet de modifier la liste des utilisateurs appartenant à un groupe?
Créer un groupe nommé principal1.
Placer l’utilisateur exercice1 (exercice précédent) dans ce groupe (il doit être son groupe principal).
Supprimer le groupe principal1.
Quel est le groupe principal de exercice1 maintenant?