Droits et permissions des utilisateurs sous Linux

Sous Linux, la sécurité est primordiale. Quand un fichier est créé, il est marqué par des règles strictes. Ainsi, on sait précisément ce qu’un utilisateur a le droit de faire ou non sur un fichier. Les permissions sont toujours liées à un utilisateur propriétaire et un groupe d’utilisateur.

Les Permissions.

Chaque fichier et répertoire Linux est défini par une combinaison de trois types d’autorisations possibles représentés par des lettres :

  • r (read) : Autorisation de lecture.
  • w (write) : Autorisation d’écriture.
  • x (execute) : Autorisation d’exécution.
  • : le tiret est utilisé à la place d’une lettre pour indique que la permission n’est pas accordée.

Comportement différent entre répertoire et fichier

PossibilitéFichierDossier
r
(read)
Lire le contenu du fichier.Consulter le contenu du dossier.
w
(write)
Modifier le contenu du fichier.Créer, supprimer ou modifier le nom du contenu (fichiers, dossier, etc.)
x (execute)Exécuter le fichier (si il s’agit d’un exécutable). Parcourir le contenu du dossier.

Exemple de permission

r-x fichier -> Ce fichier peut être lu et exécuté, mais ne peut pas être modifié.
rw- fichier -> Ce fichier peut être lu ou modifié, mais ne peut pas être exécuté.
--- fichier -> Ce fichier ne peut pas être lu, modifié ni même exécuté.

permissions, propriétaire et groupe

Pour consulter les permissions indiquées sur les fichier et dossier, la commande « ls » est utilisée comme ceci :

ls -l

On obtient la liste des éléments du dossier courant avec des détails sur les permissions accordées, le nom du propriétaire « coderocks » et le groupe « admin » :

drwxr-xr-x 6 coderocks admin 4096 déc.   8 12:32 dossier
-rwxr-xr-x 6 coderocks admin 4096 déc.   8 12:32 fichier.txt

Vous remarquez certainement qu’il y’a bien plus de trois caractères affichés pour les permissions de ces éléments.

La colonne se compose d’une première lettre pour indiquer ce que représente l’élément (fichier, dossier, lien symbolique ? etc..). La suite représente le système de permission « rwx » répété trois fois respectivement pour l’utilisateur, le groupe et tous les autres.

Exemple :

drwxr-xr-x 6 coderocks admin 4096 -rwxr-xr-x 6 coderocks admin 4096 déc.   8 12:32 fichier.txt
  • d : indique que l’élément nommé « dossier » est un répertoire
  • rwx : indique que l’utilisateur « coderocks » a tous les droits sur ce dossier.
  • r-x : indique que le groupe « admin » a le droit de lire et d’exécuter dans ce dossier.
  • r-x : Indique que tous les autres ont le droit de lire et d’exécuter dans ce dossier.

Utilité de l’utilisateur, du groupe et de tous les autres

Dicter ce qu’un utilisateur a le droit de faire sur un élément est utile mais limité. Dans le cas d’un travail en équipe sur des fichiers communs, il devient nécessaire d’établir des « stratégies » de règles pour l’utilisateur, un groupe d’utilisateur et tous les autres ne faisant partie d’aucun des deux précédents.

Exemple

nifnif, nafnaf et noufnouf sont un groupe d’écrivains, il ont le droit d’écrire leur propre livre et uniquement lire celui des deux autres. Le reste du monde ne doit jamais pouvoir lire ni écrire leurs œuvres.

Après réflexion sur la stratégie à adopter:

  • On crée un groupe nommé : « lecteur ».
  • On ajoute nifnif, nafnaf et noufnouf dans ce groupe « lecteur ».
  • On créer trois fichiers respectivement au nom de nos trois compères et de leur groupe.

Résultat :

-rw-r----- 6 nifnif lecteur 4096 déc.   8 12:32 livre-de-nifnif.txt
-rw-r----- 6 nafnaf lecteur 4096 déc.   8 12:32 livre-de-nafnaf.txt
-rw-r----- 6 noufnouf lecteur 4096 déc.   8 12:32 livre-de-noufnouf.txt

la première ligne nous montre que :

  • : l’élément est un fichier. Ce fichier est nommé livre-de-nifnif.txt
  • rw- : l’utilisateur nommé « nifnif » plus loin dans la ligne, a le droit de lecture et de modification sur ce fichier.
  • r– : le groupe « Lecteur » contenant les utilisateurs nifnif, nafnaf et noufnouf ont le droit de lire ce fichier.
  • — : que tous les autres utilisateur n’appartenant ni au groupe ni au nom d’utilisateur indiqué, n’a aucun droit sur ce fichier.