Utilisateurs et droits d'accès
Je donne ici un exemple d'utilisation de certaines commandes Linux. Pour obtenir la description complète et notamment la liste des options consultez les pages de man
Structure des fichiers /etc/passwd
et /etc/group
/etc/passwd
nom_de_login:mot_de_passe:UID:GID:commentaire:repertoire_de_travail:shell
/etc/group
nom_de_groupe:mot_de_passe:GID:[membre,membre,...]
Principe de la gestion des droits d'accès
Un fichier ou un répertoire appartient :
- à un utilisateur
- au membre d'un groupe
- l'utilisateur propriétaire (u)
- le groupe propriétaire (g)
- les autres utilisateurs (o)
- lire : r (read) -> valeur numérique : 4
- écrire : w (write) -> valeur numérique : 2
- exécuter : x (execute) -> valeur numérique : 1
- Lister le contenu d'un répertoire : r sur le répertoire.
- Effacer un fichier d'un répertoire : w sur le répertoire (cette opération ne nécessite aucun droit sur les fichiers du répertoire).
- Accéder à un répertoire : x sur le répertoire.
- Copier un fichier : r sur le fichier
Ajouter un groupe : groupadd
Exemple d'utilisation : création du groupe professeur avec l'identifiant 5000
root@debian:~# groupadd -g 5000 professeur root@debian:~# cat /etc/group | grep professeur professeur:x:5000:
Supprimer un groupe : groupdel
Exemple d'utilisation : supression du groupe professeur
root@debian:~# cat /etc/group | grep professeur professeur:x:5000: root@debian:~# groupdel professeur root@debian:~# cat /etc/group | grep professeur
Modifier un groupe : groupmod
Exemple d'utilisation : modification de l'identifiant du groupe professeur
root@debian:~# groupadd -g 5000 professeur root@debian:~# cat /etc/group | grep professeur professeur:x:5000: root@debian:~# groupmod -g 6000 professeur root@debian:~# cat /etc/group | grep professeur professeur:x:6000:
Ajouter un utilisateur : useradd
Exemple d'utilisation : création de l'utilisateur :
- option
-u 6001
: d'identifiant 6001 - option
-g professeur
: ayant pour groupe princpalprofesseur
- option
-c "John Martin"
: un commentaire, ici nom et prénom de l'utilisateur - option
-s /bin/bash
: permet d'utiliser le shell(interpréteur de commandes)bash
au lieu desh
. Ce shell permet la complétion des noms de fichiers. - option
-m
: demande de la création de son répertoire de travail - aucune option précisée pour le répertoire de travail : il sera donc créé dans
/home
- jmartin : nom de connexion de l'utilisateur
root@debian:/home# useradd -u 6001 -g professeur -c "John Martin" -s /bin/bash -m jmartin root@debian:~# cat /etc/passwd | grep jmartin jmartin:x:6001:6000:John Martin:/home/jmartin:/bin/bash root@debian:~# ls -l /home | grep jmartin drwxr-xr-x 2 jmartin professeur 4096 nov. 15 13:18 jmartin
Modifier un utilisateur : usermod
Exemple d'utilisation 1 : ajout d'un groupe secondaire à jmartin
root@debian:~# cat /etc/group | grep TS1 TS1:x:7000: root@debian:~# usermod -aG TS1 jmartin root@debian:~# cat /etc/group | grep TS1 TS1:x:7000:jmartin
Exemple d'utilisation 2 : modification du commentaire de jmartin
root@debian:~# cat /etc/passwd | grep jmartin jmartin:x:6001:6000:John Martin:/home/jmartin:/bin/bash root@debian:~# usermod -c "Jean Martin" jmartin root@debian:~# cat /etc/passwd | grep jmartin jmartin:x:6001:6000:Jean Martin:/home/jmartin:/bin/bash
Supprimer un utilisateur : userdel
Exemple d'utilisation : supression de l'utilisateur jmartin
- option
-r
: suppression du répertoire de travail de l'utilisateur
root@debian:~# cat /etc/passwd | grep jmartin jmartin:x:6001:6000:Jean Martin:/home/jmartin:/bin/bash root@debian:~# userdel -r jmartin root@debian:~# cat /etc/passwd | grep jmartin root@debian:~# ls -l /home | grep jmartin
Attribuer un mot de passe à un utilisateur : passwd
Exemple d'utilisation : attribution d'un mot de passe à l'utilisateur jmartin
root@debian:~# passwd jmartin Entrez le nouveau mot de passe UNIX : Retapez le nouveau mot de passe UNIX : passwd : le mot de passe a été mis à jour avec succès
Modifier l'utilisateur et le goupe propriétaire d'un répertoire : chown, chgrp
Exemple d'utilisation 1: changement de l'utilisateur et du groupe propriétaire
root@debian:/home/jmartin# ls -l | grep rep2 drwxr-xr-x 2 root root 4096 nov. 16 09:42 rep2 root@debian:/home/jmartin# chown jmartin:professeur rep2 root@debian:/home/jmartin# ls -l | grep rep2 drwxr-xr-x 2 jmartin professeur 4096 nov. 16 09:42 rep2
Exemple d'utilisation 2: changement de l'utilisateur puis du groupe propriétaire
root@debian:/home/jmartin# ls -l drwxr-xr-x 2 root root 4096 nov. 16 09:43 rep2 root@debian:/home/jmartin# chown jmartin rep2 root@debian:/home/jmartin# ls -l | grep rep2 drwxr-xr-x 2 jmartin root 4096 nov. 16 09:43 rep2 root@debian:/home/jmartin# chgrp professeur rep2 root@debian:/home/jmartin# ls -l | grep rep2 drwxr-xr-x 2 jmartin professeur 4096 nov. 16 09:43 rep2
Modifier les droits sur un répertoire
Exemple d'utilisation : passer les droits sur le répertoire rep1
à rwxrwx---
doe@debian:~$ ls -l | grep rep1 drwxr-xr-x 2 doe doe 4096 nov. 15 12:58 rep1 doe@debian:~$ chmod 770 rep1 doe@debian:~$ ls -l | grep rep1 drwxrwx--- 2 doe doe 4096 nov. 15 12:58 rep1