DevToolBoxGRATUIT
Blog

Permissions Linux Expliquees : Guide Complet du Calculateur chmod

12 min de lecturepar DevToolBox

Les permissions de fichiers Linux sont la base de la securite systeme. Chaque fichier et repertoire sur un systeme Unix porte des metadonnees qui determinent qui peut lire, ecrire ou executer. Que vous deployiez une application web, securisiez un serveur ou debogniez un script de deploiement, comprendre la commande chmod et les numeros de permissions est indispensable. Ce guide complet du calculateur chmod couvre tout, des concepts de base aux bits speciaux, avec un aide-memoire chmod complet.

Essayez notre calculateur chmod interactif pour visualiser les permissions instantanement.

Chmod Calculator →

1. Que Sont les Permissions de Fichiers Linux ?

Chaque fichier et repertoire sous Linux a trois categories d'utilisateurs. Le proprietaire est generalement celui qui a cree le fichier. Le groupe est un ensemble d'utilisateurs partageant des droits. Les autres designent tous les autres utilisateurs du systeme. La commande ls -l revele la chaine de permissions.

Chaque categorie peut recevoir trois types d'acces. Lecture (r) permet de voir le contenu. Ecriture (w) permet de modifier. Execution (x) permet de lancer un fichier ou d'entrer dans un repertoire. Ces neuf bits forment le modele de permissions Unix.

Voici un exemple typique de sortie <code>ls -l</code> :

-rwxr-xr--  1 alice  developers  4096 Feb 20 deploy.sh

 Proprietaire: rwx (7) | Groupe: r-x (5) | Autres: r-- (4)
 Permission: 754

2. Comprendre les Numeros de Permissions (Notation Octale)

Linux represente chaque ensemble de permissions par un chiffre octal de 0 a 7. Le chiffre est la somme des valeurs : Lecture = 4, Ecriture = 2, Execution = 1. Un nombre a trois chiffres comme 755 encode les trois categories.

Voici la table de reference octale pour chaque combinaison possible :

OctalSymboliqueSignification
0---No permission
1--xExecute only
2-w-Write only
3-wxWrite + Execute
4r--Read only
5r-xRead + Execute
6rw-Read + Write
7rwxRead + Write + Execute

Pour calculer un numero complet, calculez chaque chiffre separement. Par exemple, proprietaire lecture+ecriture (4+2=6), groupe lecture (4), autres rien (0) donne 640.

3. Table de Reference des Permissions chmod

Voici une table de reference complete des combinaisons chmod les plus courantes.

OctalSymboliqueSignificationUsage Typique
777rwxrwxrwxAcces total pour tousDebogage temporaire uniquement ; JAMAIS en production
755rwxr-xr-xProprietaire total ; groupe/autres lecture+executionRepertoires, scripts executables, racine du serveur web
750rwxr-x---Proprietaire total ; groupe lecture+execution ; autres rienRepertoires de projet partages
700rwx------Proprietaire uniquementRepertoire ~/.ssh, scripts prives
666rw-rw-rw-Lecture+ecriture pour tous ; sans executionRarement utilise ; fichiers partages temporaires
644rw-r--r--Proprietaire lecture+ecriture ; groupe/autres lectureFichiers HTML, CSS, PHP, configurations
640rw-r-----Proprietaire lecture+ecriture ; groupe lecture ; autres rienFichiers journaux, configs sensibles
600rw-------Proprietaire lecture+ecriture uniquementCles SSH privees, fichiers .env, identifiants
400r--------Proprietaire lecture seuleCertificats SSL, secrets en lecture seule
775rwxrwxr-xProprietaire total ; groupe total ; autres lecture+executionRepertoires de telechargement partages

4. Comment Utiliser la Commande chmod

La commande chmod modifie les permissions. Elle supporte deux modes : numerique (octal) et symbolique.

Mode Numerique

En mode numerique, vous fournissez un nombre octal a trois ou quatre chiffres :

chmod 755 script.sh          # rwxr-xr-x
chmod 644 config.json        # rw-r--r--
chmod 600 id_rsa             # rw-------
chmod 400 cert.pem           # r--------
chmod -R 755 /var/www/html   # Recursive on directory

Mode Symbolique

Le mode symbolique utilise la syntaxe chmod [ugoa][+-=][rwxXst] :

  • Qui : u (proprietaire), g (groupe), o (autres), a (tous)
  • Operateur : + (ajouter), - (retirer), = (definir exactement)
  • Permission : r (lecture), w (ecriture), x (execution)
chmod u+x script.sh          # Add execute for owner
chmod g-w file.txt           # Remove write from group
chmod o+r document.pdf       # Add read for others
chmod a+x run.sh             # Add execute for all
chmod u=rwx,go=rx dir/       # Owner=rwx, group+others=rx (755)
chmod go-rwx secret.key      # Remove all from group+others

chmod Recursif

Utilisez chmod -R pour changer les permissions recursivement :

# Set directories to 755 and files to 644 (web server standard)
find /var/www/html -type d -exec chmod 755 {} \;
find /var/www/html -type f -exec chmod 644 {} \;

# Make all .sh files executable
find /opt/scripts -name "*.sh" -exec chmod 755 {} \;

Utilisez notre calculateur chmod pour generer la commande exacte :

Chmod Calculator →

5. Modeles chmod Courants pour les Developpeurs

Differents types de fichiers necessitent des permissions specifiques. Voici la reference definitive des modeles chmod essentiels.

Fichiers de Serveur Web

Pour Apache et Nginx : 644 pour les fichiers, 755 pour les repertoires :

# Web server document root
chmod 755 /var/www/html
chmod 644 /var/www/html/index.html
chmod 644 /var/www/html/style.css
chmod 644 /var/www/html/.htaccess

# PHP / application files
chmod 644 /var/www/html/app/*.php
chmod 755 /var/www/html/app/storage

Scripts et Executables

Utilisez 755 pour les scripts partages et 700 pour les scripts prives :

# Shared executable scripts
chmod 755 deploy.sh
chmod 755 /usr/local/bin/my-tool

# Private scripts (owner only)
chmod 700 backup-db.sh
chmod 700 cleanup.sh

Cles et Configuration SSH

SSH est tres strict sur les permissions. Voici les parametres requis :

chmod 700 ~/.ssh                 # SSH directory
chmod 600 ~/.ssh/id_rsa          # Private key
chmod 600 ~/.ssh/id_ed25519      # Private key (Ed25519)
chmod 644 ~/.ssh/id_rsa.pub      # Public key
chmod 600 ~/.ssh/authorized_keys # Authorized keys
chmod 600 ~/.ssh/config          # SSH config file

Fichiers d'Environnement et Secrets

Les fichiers contenant des cles API et identifiants doivent etre restreints :

chmod 600 .env                   # Environment variables
chmod 600 .env.production        # Production secrets
chmod 600 database.yml           # Database credentials
chmod 600 credentials.json       # API credentials
chmod 400 ssl-cert.pem           # SSL certificate (read-only)

Repertoires de Telechargement

Les repertoires d'upload necessitent les permissions d'ecriture du groupe :

chmod 775 /var/www/html/uploads
chmod 775 /var/www/html/tmp
chmod 775 /var/www/html/cache

# Ensure web server group owns the directory
# chown www-data:www-data /var/www/html/uploads

6. Permissions Speciales : setuid, setgid, Sticky Bit

Au-dela des neuf bits standard, Linux supporte trois bits speciaux qui modifient le comportement d'execution.

setuid (SUID) -- 4000

Le processus s'execute avec les permissions du proprietaire du fichier. Exemple classique : /usr/bin/passwd. Affiche comme s dans la position d'execution du proprietaire.

setgid (SGID) -- 2000

Sur un repertoire, les nouveaux fichiers heritent automatiquement du groupe du repertoire. Essentiel pour les repertoires de projets partages.

Sticky Bit -- 1000

Seuls le proprietaire du fichier, le proprietaire du repertoire ou root peuvent supprimer les fichiers. Exemple canonique : /tmp (1777).

Definir les permissions speciales :

# SUID: run as file owner
chmod 4755 /usr/bin/passwd
chmod u+s /usr/bin/my-tool

# SGID: inherit group on directory
chmod 2755 /shared/project
chmod g+s /shared/project

# Sticky Bit: prevent deletion by others
chmod 1777 /tmp
chmod +t /shared/uploads

# Combine: SGID + standard permissions
chmod 2775 /team/shared-dir

# Find files with special permissions
find / -perm -4000 -type f 2>/dev/null  # Find SUID files
find / -perm -2000 -type f 2>/dev/null  # Find SGID files
find / -perm -1000 -type d 2>/dev/null  # Find sticky dirs

7. Bonnes Pratiques pour les Permissions

Les permissions sont une couche de defense critique. Suivez ces bonnes pratiques.

Appliquez le principe du moindre privilege. N'accordez que les permissions minimales necessaires.

N'utilisez jamais chmod 777 en production. Cela donne un acces total a tous.

Auditez regulierement les permissions. Utilisez find / -perm -777 -type f.

Utilisez les groupes plutot que les permissions world-readable.

Soyez prudent avec chmod recursif. Verifiez toujours le chemin.

Documentez vos exigences de permissions. Incluez les commandes chmod dans vos scripts.

Utilisez umask pour des valeurs par defaut securisees. Definissez umask 027.

Utilisez notre calculateur chmod pour determiner rapidement les bonnes permissions.

8. Questions Frequemment Posees

Que signifie chmod 755 ?

chmod 755 donne au proprietaire un acces total (rwx = 7), et au groupe et aux autres un acces en lecture et execution (r-x = 5). C'est la permission standard pour les scripts executables et les repertoires.

Quelle est la difference entre chmod 755 et 644 ?

chmod 755 (rwxr-xr-x) accorde l'execution a tous, pour les repertoires et scripts. chmod 644 (rw-r--r--) supprime l'execution et n'accorde l'ecriture qu'au proprietaire, pour les fichiers reguliers.

Comment verifier les permissions sous Linux ?

Executez ls -la pour voir les permissions detaillees. Utilisez stat filename pour une vue plus complete avec les notations octale et symbolique.

Quelle est la permission la plus securisee ?

Pratiquement, 400 (lecture seule proprietaire) ou 600 (lecture+ecriture proprietaire) sont les plus restrictives. Pour les cles SSH, utilisez 600. Pour les certificats SSL, utilisez 400.

Peut-on utiliser chmod sur Mac ?

Oui. macOS est base sur BSD Unix et supporte pleinement chmod avec la meme syntaxe que Linux, en mode numerique et symbolique. macOS supporte aussi les ACL.

Calculez les valeurs chmod exactes avec notre calculateur gratuit en ligne.

Chmod Calculator →
Consultez aussi notre generateur htaccess pour la configuration Apache.Besoin d'un mot de passe fort ? Essayez notre generateur de mots de passe.
𝕏 Twitterin LinkedIn
Cet article vous a-t-il aidé ?

Restez informé

Recevez des astuces dev et les nouveaux outils chaque semaine.

Pas de spam. Désabonnez-vous à tout moment.

Essayez ces outils associés

🔐Chmod Calculator.ht.htaccess Generator🔑Password Generator

Articles connexes

Permissions Linux expliquées : chmod 777, 755, 644 et plus

Comprendre les permissions de fichiers Linux, les commandes chmod et la notation octale.

Linux chmod, chown et chgrp : Guide des permissions

Guide complet des permissions Linux : chmod numérique et symbolique, chown, chgrp, permissions spéciales et ACL.

SSH Keygen : Guide Ed25519 vs RSA

Générer des clés SSH avec ssh-keygen. Comparaison Ed25519 vs RSA, tailles de clés et bonnes pratiques.