Linux – Utilisateurs, groupes et droits d’accès
juillet 17, 2014 12:57 Laissez vos commentairesBonjour à 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 :Linux
Cet article a été écrit par admin