8.4. Base de données des utilisateurs et des groupes
The list of users is usually stored in the /etc/passwd
file, while the /etc/shadow
file stores hashed passwords. Both are text files, in a relatively simple format, which can be read and modified with a text editor. Each user is listed there on a line with several fields separated with a colon (“:
”).
8.4.1. Liste des utilisateurs : /etc/passwd
Voici la liste des champs du fichier /etc/passwd
:
identifiant (ou login), par exemple rhertzog
;
mot de passe : il s'agit d'un mot de passe chiffré par la fonction à sens unique (crypt
), qui utilise DES
, MD5
, SHA-256
ou SHA-512
. La valeur spéciale « x
» indique que le mot de passe chiffré est stocké dans /etc/shadow
;
uid
: numéro unique identifiant l'utilisateur ;
gid
: numéro unique du groupe principal de l'utilisateur (Debian crée par défaut un groupe spécifique à chacun) ;
GECOS
: champ de renseignements qui contient habituellement le nom complet de l'utilisateur ;
répertoire de connexion, attribué à l'utilisateur pour qu'il y stocke ses fichiers personnels (la variable d'environnement $HOME
y pointe habituellement) ;
programme à exécuter après la connexion. Il s'agit généralement d'un interpréteur de commandes (shell), donnant libre cours à l'utilisateur. Si l'on précise /bin/false
(programme qui ne fait rien et rend la main immédiatement), l'utilisateur ne pourra pas se connecter.
8.4.2. Le fichier des mots de passe chiffrés et cachés : /etc/shadow
Le fichier /etc/shadow
contient les champs suivants :
8.4.3. Modifier un compte ou mot de passe existant
The following commands allow modification of the information stored in specific fields of the user databases: passwd
permits a regular user to change their password, which in turn, updates the /etc/shadow
file; chfn
(CHange Full Name), reserved for the super-user (root), modifies the GECOS
field. chsh
(CHange SHell) allows the user to change their login shell; however, available choices will be limited to those listed in /etc/shells
; the administrator, on the other hand, is not bound by this restriction and can set the shell to any program of their choosing.
Enfin, la commande chage
(CHange AGE) donnera à l'administrateur la possibilité de modifier les conditions d'expiration du mot de passe (l'option -l utilisateur
listant la configuration actuelle). On pourra d'ailleurs forcer l'expiration d'un mot de passe grâce à la commande passwd -e utilisateur
, qui obligera l'utilisateur à changer son mot de passe à la prochaine connexion.
On peut se trouver dans l'obligation de « bloquer le compte » d'un utilisateur, par mesure disciplinaire, dans le cadre d'une enquête, ou tout simplement en cas de départ prolongé ou définitif de l'utilisateur. Il s'agit en fait de l'empêcher de se connecter à nouveau, sans pour autant détruire son compte et ses fichiers. Cela s'effectue simplement par la commande passwd -l utilisateur
(lock, ou bloquer). La remise en service s'effectue de même, avec l'option -u
(unlock, ou débloquer).
8.4.5. Liste des groupes : /etc/group
La liste des groupes est stockée dans le fichier /etc/group
, simple base de données textuelle au format comparable à celui de /etc/passwd
, qui utilise les champs suivants :
identifiant (le nom du groupe) ;
gid
: numéro unique identifiant le groupe ;
liste des membres : liste des identifiants d'utilisateurs membres du groupe, séparés par des virgules.
The addgroup
and delgroup
commands add or delete a group, respectively. The groupmod
command modifies a group's information (its gid
or identifier). The command gpasswd group
changes the password for the group, while the gpasswd -r group
command deletes it.