Passer au contenu principal

Bases (Linux)

Les permissions

Le modèle de permissions Linux repose sur trois acteurs (user, group, other) et trois droits (read, write, execute) — d'où le rwx. C'est l'un des mécanismes de sécurité les plus fondamentaux du système.

Lire les permissions

La commande ls -la affiche les permissions de chaque fichier :

-rwxr-xr-- 1 romain admins 4096 Feb 23 10:00 script.sh
  • Premier caractère : type (- = fichier, d = répertoire, l = lien symbolique)
  • Caractères 2-4 : droits du propriétaire (user)
  • Caractères 5-7 : droits du groupe (group)
  • Caractères 8-10 : droits des autres (other)

Dans l'exemple : le propriétaire romain a tous les droits (rwx), le groupe admins peut lire et exécuter (r-x), les autres peuvent seulement lire (r--).

Modifier les permissions : chmod

Mode symbolique :

  • chmod u+x script.sh : ajoute le droit d'exécution au propriétaire
  • chmod g-w fichier : retire le droit d'écriture au groupe
  • chmod o=r fichier : définit les droits des autres à lecture seule

Mode octal : chaque droit a une valeur (r=4, w=2, x=1). On additionne pour chaque acteur.

  • chmod 755 script.sh : rwxr-xr-x (propriétaire tout, groupe et autres lecture+exécution)
  • chmod 644 fichier.conf : rw-r--r-- (propriétaire lecture+écriture, autres lecture seule)
  • chmod 600 cle_privee : rw------- (propriétaire seul, aucun accès extérieur)

Modifier le propriétaire : chown

  • chown romain fichier : change le propriétaire
  • chown romain:admins fichier : change propriétaire et groupe
  • chown -R romain:admins /var/www/ : changement récursif

En pratique : chmod 600 est la permission standard pour les clés SSH privées et les fichiers de credentials. Un fichier de configuration accessible en écriture par tous est une faille de sécurité courante. Les droits 755 sur les répertoires web et 644 sur les fichiers sont les valeurs par défaut les plus utilisées.