Linux – Utilisateurs, groupes et droits d’accès

juillet 17, 2014 12:57 Publié par Laissez vos commentaires

Bonjour à tous!
Pour en finir une bonne fois pour toute avec les faux problèmes liés au droits Linux, je vous propose un tuto complet sur la gestion des utilisateurs, des groupes et des accès aux dossiers. Après la lecture de cet article, vous deviendrez incollables sur le sujet!
C’est parti 😉

1. Les groupes

Commençons par les groupes :

Afficher les groupes :

 cat /etc/group

Afficher les groupes d’un utilisateur :

root@ubuntu:~# groups pierre

Ajouter un groupe :

root@ubuntu:~# addgroup test
Adding group `test' (GID 1003) ...
Done.

Supprimer un groupe :

root@ubuntu:~# delgroup test
Removing group `test' ...
Done.

2. Les utilisateurs

ajout d’un user : adduser pierre

Saisissez puis confirmez le mot de passe
La création de l’utilisateur entraine la création de son dossier personnel : /home/pierre

root@ubuntu:~# adduser pierre
Adding user `pierre' ...
Adding new group `pierre' (1002) ...
Adding new user `pierre' (1001) with group `pierre' ...
Creating home directory `/home/pierre' ...
Copying files from `/etc/skel' ...
Entrez le nouveau mot de passe UNIX :
Retapez le nouveau mot de passe UNIX :
passwd: password updated successfully
Changing the user information for pierre
Enter the new value, or press ENTER for the default
        Full Name []: pierre
        Room Number []:
        Work Phone []:
        Home Phone []:
        Other []:
Is the information correct? [Y/n] y

Suppression d’un user :

userdel pierre

Suppression d’un user avec son dossier perso :

userdel -r pierre

l’argument -r permet la suppression du dossier perso

Changer le mot de passe

root@ubuntu:~# passwd pierre
Entrez le nouveau mot de passe UNIX :
Retapez le nouveau mot de passe UNIX :
passwd: password updated successfully

Modifions à présent le groupe de notre utilisateur Pierre ( il fait parti par défaut du groupe pierre)
pour changer Pierre de groupe nous utiliserons la commande usermod:

root@ubuntu:~# usermod -g pierre test
root@ubuntu:~# groups pierre
pierre : test

Pierre ne fait donc plus partie du groupe pierre mais du groupe test.
avec l’agument -G en majuscule, il est possible d’affecter à Pierre plusieurs groupes :

root@ubuntu:~# usermod -G pierre,test pierre
root@ubuntu:~# groups pierre
pierre : test pierre

Ajoutons à présent un groupe à la liste des groupes déjà existant pour l’utilsateur Pierre ( il n’est plus question de remplacer le ou les groupes).
Pour cela nous allons ajouter l’argument -a :

root@ubuntu:~# usermod -a -G sambashare pierre
root@ubuntu:~# groups pierre
pierre : test sambashare pierre

3. Les droits

Pour afficher les droits sur un dossier ou sur un fichier, il faut utiliser la commande ls -l:

root@ubuntu:/tmp# ls -l
total 4
drwxr-xr-x 2 root root 4096 2014-07-16 15:25 test
root@ubuntu:/tmp#

Étudions le premier groupe : drwxr-xr-x
drwxr-xr-x : la première lettre signifie qu’il s’agit d’un dossier. (d pour dossier, l pour lien et – pour fichier).
Les lettres r-w-x signifient quant à elles respectivement « read« , « write » et « execute« .

la suite est composé de 9 caractères que nous allons segmenter en 3 groupes de 3 :

drwxr-xr-x : le premier, rwx concerne les autorisations du propriétaire ( celui ci peut donc lire, écrire et exécuter)
drwxr-xr-x : le second, r-x concerne les autorisations du groupe ( le groupe peut uniquement lire et exécuter.
drwxr-xr-x : Enfin le dernier, r-x concerne les autorisations du reste du monde ( lecture et exécution également).

-* Modifier les autorisations avec un chmod octal

C’est maintenant l’heure des additions. A chaque lettre correspond une valeur :
r = 4
w = 2
x = 1

Nous allons à présent additionner ces valeurs pour déterminer les droits de chacun.
Commençons par le propriétaire du dossier, qui doit donc avoir la possibilité d’écrire, de lire et d’exécuter :
r+w+x = 4+2+1 = 7
Maintenant le groupe ( lecture et exécution)
r+x = 4+1 = 5
Idem pour les autres utilisateurs
r+x = 4+1 = 5

Nous allons concaténer ces 3 résultats et nous obtenons donc 755
Appliquons les droits :

chmod 755 test

Un chmod 777 appliquera donc droits maximum sur le dossier :

root@ubuntu:/tmp# chmod 777 test
root@ubuntu:/tmp# ls -l
total 4
drwxrwxrwx 2 root root 4096 2014-07-16 15:25 test

N’oubliez pas le -R si vous voulez appliquez les droits aux sous dossiers!

-* Modifier les autorisations avec chmod + lettres

les entités ayant accès au dossier sont représentées par une lettre:
u = user ( propriétaire)
g = groupe
o = others

Puis les lettres rwx auxquelles nous affecterons les signes suivants :
+ = ajouter un droit
– = supprimer un droit
= affecter un droit ( pas de modifications)

Reprenons notre exemple :
propriétaire : u+rwx
groupe : g+rx-w
others : o+rx-w

Ce qui nous donne :

root@ubuntu:/tmp# chmod u+rwx,g+rx-w,o+rx-w test
root@ubuntu:/tmp# ls -l
total 4
drwxr-xr-x 2 root root 4096 2014-07-16 15:25 test

Un peu de gymnastique au début puis tout deviendra vite intuitif 😉

à noter que pour rendre un script exécutable il faut utiliser la commande suivante :

chmod +x nomduscript.sh

-* Utilisation de chown

la deuxième colonne, (root) représente le nom du propriétaire du dossier.
pour changer de propriétaire, nous allons exécuter la commande chown ( change owner) :

root@ubuntu:/tmp# chown -R pierre test
root@ubuntu:/tmp# ls -l
drwxr-xr-x 2 pierre root   4096 2014-07-16 15:25 test

Nous voyons que Pierre est à présent propriétaire du dossier test. L’argument -R (majuscule) marque la récursivité, les sous dossiers seront donc également modifiés.

La troisième colonne (root) correspond aux autorisations du groupe sur le dossier.
Changeons à présent le groupe à l’aide de la commande chgrp :

root@ubuntu:/tmp# chgrp -R sambashare test
root@ubuntu:/tmp# ls -l
drwxr-xr-x 2 pierre sambashare 4096 2014-07-16 15:25 test

Vous pouvez également changer le propriétaire avec une seule commande :

root@ubuntu:/tmp# chown -R root:root test

Fini!!!

Si vous avez lu ce tuto en entier, en plus d’être courageux, vous êtes capables à présent d’administrer correctement les droits des utilisateurs sur les dossiers linux!

à bientôt pour d’autres tutos!

Classés dans :

Cet article a été écrit par admin

Laisser un commentaire