Aller au contenu

Calculateur chmod : droits Linux 755, 644, 777

Traduisez les droits Linux entre cases à cocher, notation octale (755, 644) et symbolique (rwxr-xr-x), et obtenez la commande chmod.

Droits par catégorie d’utilisateur
Droit Propriétaire Groupe Autres
Lecture (r = 4)
Écriture (w = 2)
Exécution (x = 1)

Commande

chmod 755 fichier

Cochez les droits voulus ou saisissez directement une valeur octale comme 644 ou 755 : le calculateur affiche la notation symbolique et la commande chmod correspondante, prête à copier.

Comment lire les droits Linux

Sous Linux et sur les serveurs web, chaque fichier et dossier possède trois séries de droits :

  • propriétaire (u, user) : l’utilisateur à qui appartient le fichier ;
  • groupe (g, group) : les membres du groupe associé au fichier ;
  • autres (o, others) : tous les autres utilisateurs du système.

Pour chacune, trois droits peuvent être accordés : lecture (r, valeur 4), écriture (w, valeur 2) et exécution (x, valeur 1). On additionne les valeurs pour obtenir un chiffre par série : lecture et écriture donnent 6, lecture et exécution donnent 5, les trois droits donnent 7.

Pour un dossier, le droit d’exécution signifie le droit d’y entrer et d’accéder à son contenu : un dossier sans « x » ne peut pas être parcouru, même s’il est lisible.

Les valeurs chmod les plus courantes

Valeur Symbolique Usage typique
644 rw-r–r– Fichiers d’un site web : le propriétaire modifie, tout le monde lit.
755 rwxr-xr-x Dossiers et scripts exécutables : le propriétaire modifie, les autres lisent et exécutent.
600 rw——- Fichiers sensibles : clés SSH privées, fichiers de configuration contenant des mots de passe.
700 rwx—— Dossiers privés, par exemple le dossier .ssh d’un utilisateur.
640 rw-r—– Fichier lisible par un groupe de service (serveur web) mais pas par les autres.
775 rwxrwxr-x Dossier partagé entre membres d’un même groupe.
777 rwxrwxrwx Tous les droits pour tout le monde : à éviter, voir plus bas.

Pourquoi éviter chmod 777

La valeur 777 permet à n’importe quel utilisateur ou processus du serveur de modifier le fichier ou le dossier. Sur un serveur web, cela signifie qu’un script compromis peut écrire partout où ces droits sont appliqués. Quand une application réclame des droits d’écriture, la bonne solution consiste à attribuer le dossier au bon propriétaire (avec chown) plutôt qu’à tout ouvrir.

Utiliser la commande chmod

  • chmod 644 fichier.txt : applique les droits 644 à un fichier.
  • chmod -R 755 dossier/ : applique 755 au dossier et à tout son contenu (l’option -R rend la commande récursive).
  • chmod u+x script.sh : ajoute le droit d’exécution au propriétaire, en notation symbolique.
  • chmod go-w fichier : retire le droit d’écriture au groupe et aux autres.

Attention avec -R : appliquer 755 ou 644 à tout un dossier donne les mêmes droits aux fichiers et aux sous-dossiers. Pour distinguer les deux, on combine souvent find et chmod : find dossier -type d -exec chmod 755 {} + pour les dossiers, et find dossier -type f -exec chmod 644 {} + pour les fichiers.

Les droits spéciaux (quatrième chiffre)

Une valeur peut comporter quatre chiffres, par exemple 2755. Le premier chiffre active les droits spéciaux : setuid (4), setgid (2) et sticky bit (1). Le sticky bit, appliqué au dossier /tmp, empêche par exemple un utilisateur de supprimer les fichiers des autres. Ces droits sont rarement nécessaires sur un serveur web.

Sources

  • Manuel GNU Coreutils, chmod : gnu.org
  • Manuel GNU Coreutils, modes de fichiers : gnu.org