Les permissions de fichiers WordPress doivent généralement être configurées à 755 pour les dossiers, 644 pour les fichiers, et 600 ou 640 pour le fichier critique wp-config.php. Ces réglages assurent à WordPress l’accès nécessaire pour fonctionner tout en limitant les possibilités de modification non autorisée par des utilisateurs externes sur les thèmes, extensions ou fichiers du noyau. En résumé, la règle fondamentale du chmod sécurisé est : donnez le minimum de permissions nécessaires au fonctionnement du site, rien de plus.
La sécurité WordPress ne se résume pas à un mot de passe fort, des extensions à jour ou un certificat SSL. Une mauvaise configuration des permissions système de fichiers peut permettre à des attaquants d’injecter des fichiers PHP malveillants, de modifier les thèmes, de lire les données du wp-config.php ou d’ajouter une porte dérobée sur votre site. Les paramètres chmod sont donc une pierre angulaire de la protection, surtout pour les sites en hébergement mutualisé, VPS, cloud ou WordPress managé. Pour une infrastructure WordPress moderne, le choix du bon hébergement est primordial : Forfaits d'hébergement WordPress
Qu’est-ce que les permissions de fichiers WordPress ?
Les permissions de fichiers WordPress déterminent qui peut lire, écrire ou exécuter les fichiers ou dossiers sur le serveur. Sur les hébergements Linux, elles sont gérées via la commande chmod. Les valeurs chmod représentent trois types principaux d’autorisations : lecture, écriture, exécution, chacune définie séparément pour le propriétaire, le groupe et les autres utilisateurs.
Un système comme WordPress, basé sur PHP, exige un équilibre fin. Des permissions trop strictes peuvent bloquer le fonctionnement (impossibilité d’ajouter des médias, de mettre à jour des extensions ou de générer le cache). Des permissions trop larges, comme 777, exposent à de graves vulnérabilités : tout le monde peut écrire et charger des fichiers malveillants.
Comment lire les valeurs chmod ?
Les valeurs chmod sont exprimées par trois chiffres. Chaque chiffre représente un niveau : le premier pour le propriétaire, le second pour le groupe, le troisième pour les autres utilisateurs. La valeur de chaque chiffre résulte de la somme des autorisations :
- 4 : Permission de lecture
- 2 : Permission d’écriture
- 1 : Permission d’exécution
- 7 : Lecture + écriture + exécution
- 6 : Lecture + écriture
- 5 : Lecture + exécution
Par exemple, 755 donne au propriétaire la lecture, l’écriture et l’exécution, tandis que le groupe et les autres n’ont accès qu’à la lecture et l’exécution. 644 offre au propriétaire la lecture et l’écriture, et aux autres uniquement la lecture. L’exécution sur les dossiers (nécessaire pour les parcourir) justifie l’usage du 755 pour ceux-ci.
Permissions recommandées pour WordPress
Un site WordPress sécurisé doit fonctionner sans accorder de permissions d’écriture inutiles. Voici un tableau synthétique des réglages les plus sûrs en pratique :
| Fichier ou dossier | Permission conseillée | Description |
|---|---|---|
| Dossiers WordPress | 755 | Accessible, sans écriture universelle. |
| Fichiers WordPress | 644 | Lecture autorisée, écriture réservée au propriétaire. |
| wp-config.php | 600 ou 640 | Doit être particulièrement protégé (infos base de données). |
| .htaccess | 644 ou 640 | Contient des règles serveur, aucune écriture superflue. |
| wp-content | 755 | Dossier des thèmes, plugins et médias ; sous-dossiers à surveiller. |
| wp-content/uploads | 755 | Écriture possible pour les médias ; éviter absolument 777. |
| Fichiers de thème | 644 | Ne doivent pas être modifiables par tous. |
| Fichiers d’extension | 644 | Réduit les risques de modification non autorisée. |
Ces valeurs sont adaptées à la majorité des hébergeurs cPanel, LiteSpeed, Apache ou Nginx. Attention, chaque serveur possède ses particularités : PHP-FPM, suPHP, mod_php, conteneurs, gestion des utilisateurs/groupes… Toujours sauvegarder et tester le site avant tout changement. Pour l’organisation de vos sauvegardes : Guide de sauvegarde de site Web
Pourquoi éviter le 777 ?
La permission 777 signifie que tout le monde peut lire, écrire et exécuter le dossier ou fichier. Si certains anciens tutoriels la recommandent pour « résoudre rapidement » des problèmes, elle est en réalité une faille majeure de sécurité pour WordPress. Un dossier en 777 permet à n’importe qui d’y injecter du code ou d’y charger un script PHP malveillant.
La plus grosse erreur consiste à mettre 777 sur wp-content/uploads : ce dossier doit uniquement contenir des images, PDF ou vidéos. Si un attaquant exploite une faille d’extension pour charger un fichier PHP dans uploads, et que le dossier est exécutable, il peut alors exécuter ce code sur le serveur. Ici, c’est à la fois la faille de l’extension et l’excès de permissions qui aggravent le problème.
Que faire au lieu de 777 ?
Dans la plupart des cas, 755 suffit pour les dossiers. Si WordPress ne peut pas charger des médias ou effectuer des mises à jour, le réflexe ne doit pas être de passer en 777. Il faut plutôt vérifier la propriété des fichiers. Si ceux-ci appartiennent au mauvais utilisateur, le serveur web ne peut pas écrire. Il vaut mieux corriger le propriétaire avec chown ou l’outil de réparation du panneau d’hébergement, que de relâcher les permissions.
Propriété des fichiers et relation avec chmod
Les réglages chmod ne suffisent pas : il est tout aussi essentiel que les fichiers appartiennent au bon utilisateur et groupe. Même avec 644, si la propriété est incorrecte, WordPress peut échouer lors des mises à jour. Idem pour l’upload de médias dans uploads.
Idéalement, les fichiers WordPress doivent appartenir à l’utilisateur du compte d’hébergement. Sur un hébergement mutualisé, cela est souvent géré automatiquement. Sur VPS ou serveur dédié, il faut configurer correctement les utilisateurs du serveur web et du pool PHP-FPM. Attribuer un utilisateur Linux par site diminue le risque de propagation d’une faille à l’ensemble des sites. Sur des projets à fort trafic, cette séparation est aussi cruciale que les permissions.
Contrôler les permissions WordPress étape par étape
Vous pouvez gérer les permissions WordPress via le gestionnaire de fichiers cPanel, un client FTP ou SSH. Suivez ces étapes pour un contrôle efficace et sécurisé :
1. Sauvegardez avant toute modification
Avant tout changement massif de permissions, effectuez une sauvegarde complète du site : fichiers WordPress, dossier wp-content et base de données. Une erreur de commande chmod peut rendre le site inaccessible ou provoquer des bugs dans l’administration. Vérifiez la date de la dernière sauvegarde automatique ou exportez manuellement via FTP et le gestionnaire de base.
2. Listez les permissions existantes
Si vous avez accès SSH, examinez les permissions dans le répertoire racine WordPress. Repérez les écarts importants par rapport à 755 pour les dossiers et 644 pour les fichiers. Prêtez attention aux valeurs comme 777, 775, 666. Dans cPanel, affichez la colonne des permissions et modifiez-les individuellement.
3. Passez les dossiers à 755
Pour le répertoire principal WordPress et ses sous-dossiers, la valeur sûre est 755. Cela permet la navigation sans accorder d’écriture universelle. Si vous utilisez SSH, le find permet de cibler uniquement les dossiers. Attention à ne pas attribuer 755 aux fichiers PHP : ils n’ont généralement pas besoin d’exécution, et 644 est préférable.
4. Passez les fichiers à 644
Pour le noyau WordPress, les thèmes et extensions, la norme est 644 : lecture pour le serveur web, écriture uniquement pour le propriétaire. Évitez d’autoriser l’édition dans l’interface WordPress en production pour plus de sécurité.
5. Renforcez la sécurité de wp-config.php
wp-config.php contient le nom de la base, identifiants, clés de sécurité et préfixe des tables. Privilégiez 600 ou 640 plutôt que 644. Sur certains hébergements mutualisés, 600 peut poser problème ; 640 est alors correct. Testez le site après modification. En cas d’erreur 500, contactez le support pour déterminer la permission la plus serrée compatible. Pour la sécurité SSL : acheter un certificat SSL
6. Protégez le fichier .htaccess
.htaccess gère les permaliens, règles de sécurité, cache et accès. 644 suffit généralement. Pour plus de rigueur, optez pour 640. Attention : certains plugins doivent écrire dans .htaccess. Ajoutez manuellement les règles nécessaires puis réappliquez la permission stricte.
Bonnes pratiques pour wp-content, uploads, themes et plugins
Le dossier wp-content est le cœur dynamique de WordPress : extensions, thèmes, langues et médias s’y trouvent. La majorité des attaques exploitent des plugins non sécurisés, des thèmes obsolètes ou des fonctionnalités de téléchargement mal contrôlées.
Désactivez l’exécution PHP dans uploads
uploads héberge les fichiers téléversés par les utilisateurs. L’exécution PHP y est inutile sur la plupart des sites. Placez un .htaccess ou une règle Nginx pour bloquer l’exécution PHP dans ce dossier. Ainsi, même si un fichier PHP est uploadé, il ne pourra pas être exécuté. Cette mesure complète les permissions pour une sécurité renforcée.
Désactivez l’éditeur de thèmes et plugins
L’éditeur intégré à l’administration WordPress, qui permet de modifier les fichiers de thèmes et extensions, représente un risque si un compte admin est compromis. Ajoutez la directive DISALLOW_FILE_EDIT dans wp-config.php pour désactiver cette fonctionnalité. L’accès à l’injection directe de code via l’interface est alors bloqué, même pour un attaquant ayant obtenu les droits administrateur.
Supprimez les thèmes et extensions inutiles
Les thèmes et extensions désactivés, mais toujours présents, restent des vecteurs de vulnérabilité. Ne vous contentez pas de désactiver : supprimez-les complètement. Gardez uniquement le thème actif, un thème de secours et les plugins réellement utilisés. Moins de fichiers, moins de surface d’attaque.
Renforcer la sécurité serveur pour compléter chmod

Un réglage optimal des permissions de fichiers est un bon début, mais ne suffit pas à sécuriser totalement votre site. Les mesures prises au niveau serveur maximisent l’efficacité des permissions et réduisent les risques.
Utilisez une version PHP à jour
Les anciennes versions de PHP sont à la fois lentes et vulnérables. Choisissez une version supportée et à jour pour WordPress. PHP récent offre rapidité et résistance aux failles connues. Vérifiez la version dans votre panneau d’hébergement et testez la compatibilité des thèmes/plugins avant toute mise à niveau.
Installez un Web Application Firewall (WAF)
Un WAF filtre les requêtes malveillantes avant qu’elles n’atteignent votre site : injections SQL, XSS, uploads frauduleux, brute force… Pour un site WordPress très fréquenté, le WAF est le parfait complément des réglages chmod. Pour un hébergement sécurisé : Solutions d'hébergement web sécurisé
Désactivez le listing des répertoires
Si le listing est activé, tous les fichiers d’un dossier sans index peuvent être affichés dans le navigateur. Cela permet à un attaquant de repérer les noms d’extensions, thèmes ou sauvegardes. Désactivez-le avec Options -Indexes sur Apache ou autoindex off sur Nginx. Un simple réglage, qui complique la phase de reconnaissance des attaques.
Ne stockez pas les sauvegardes dans le dossier public_html
Un backup.zip, site-old.tar.gz ou database.sql placé dans le répertoire public, et nommé de façon prédictible, peut être téléchargé par n’importe qui. Gardez vos sauvegardes dans un emplacement non accessible via le web, ou utilisez un stockage distant sécurisé. Pour la gestion complète du domaine et DNS : Enregistrement de domaine et gestion DNS
Différences selon l’hébergement : mutualisé, VPS ou dédié
Les réglages chmod sur WordPress sont similaires quelle que soit la plateforme, mais leur gestion varie selon le type d’hébergement. En mutualisé, la propriété des fichiers, le mode PHP et les modules de sécurité sont gérés par le fournisseur. En VPS ou dédié, vous devez gérer l’isolation des utilisateurs, la configuration des services, le firewall, la surveillance des logs et les mises à jour automatiques.
En mutualisé, 644 et 755 fonctionnent généralement sans problème. Sur VPS, il est conseillé d’exécuter chaque pool PHP-FPM sous un utilisateur distinct. Sur dédié, ajoutez la surveillance centralisée des logs, l’analyse malware, la vérification de l’intégrité des fichiers et les patchs de sécurité automatiques. Pour les agences hébergeant plusieurs WordPress, chaque site doit avoir son propre compte pour éviter qu’une faille ne se propage à l’ensemble du serveur.
Erreurs fréquentes dans les permissions WordPress
Les erreurs dans la gestion des permissions WordPress résultent souvent de solutions « rapides » mal pensées. Voici les plus courantes :
- Mettre 777 sur tout le site : Permet le téléchargement mais crée une faille critique.
- Laisser wp-config.php à 644 : Fonctionne, mais peut être renforcé.
- Ignorer la propriété des fichiers : Parfois le problème vient du chown, pas du chmod.
- Modifier en masse sans sauvegarde : Une erreur peut rendre le site inutilisable.
- Permettre l’exécution PHP dans uploads : Aggrave l’impact d’une faille d’upload.
- Ne pas supprimer les extensions obsolètes : Même inactives, elles sont ciblées.
Checklist de sécurité chmod pour WordPress
Utilisez cette checklist avant la mise en ligne, après maintenance ou lors du nettoyage d’un site WordPress :
- Dossiers réglés à 755.
- Fichiers réglés à 644.
- wp-config.php renforcé à 600 ou 640.
- .htaccess à 644 ou 640.
- Pas de permission 777 sur aucun fichier/dossier.
- Exécution PHP bloquée dans uploads.
- Éditeur de thèmes/plugins désactivé.
- Thèmes/extensions inutilisés supprimés.
- Version PHP à jour.
- Sauvegarde automatique et plan de restauration en place.
Cette liste est particulièrement utile pour les nouveaux sites, après une mise à jour ou suite à un nettoyage post-attaque. La sécurité n’est pas une action ponctuelle, mais un processus à renouveler régulièrement.
Quels tests effectuer après modification des permissions ?
Après avoir modifié les permissions, ne vous limitez pas à vérifier la page d’accueil. Connectez-vous à l’administration, chargez un média, testez la mise à jour d’une extension, sauvegardez les permaliens, et essayez les fonctionnalités qui nécessitent l’écriture (ex. formulaire de contact). Vérifiez que le plugin de cache peut créer ses fichiers. Pour WooCommerce, testez les commandes, paiements, factures et téléchargements.
Si vous obtenez une erreur 403, les permissions sont peut-être trop strictes. Une erreur 500 signale souvent un problème avec .htaccess, les droits PHP ou la propriété des fichiers. En cas d’échec de l’upload média, vérifiez les permissions et la propriété du dossier uploads. N’appliquez jamais 777 sans analyse : consultez plutôt les logs d’erreur pour diagnostiquer.
Conclusion : principe du moindre privilège pour des permissions WordPress sécurisées
La configuration de base la plus sûre pour WordPress est : 755 pour les dossiers, 644 pour les fichiers, et 600/640 pour wp-config.php. Mais la sécurité ne s’arrête pas à ces chiffres : elle s’appuie aussi sur la bonne propriété des fichiers, une version PHP à jour, un WAF, des sauvegardes, le blocage de PHP dans uploads et la suppression des extensions inutiles. En appliquant le principe du moindre privilège, vous garantissez à la fois le bon fonctionnement du site et la résistance aux attaques visant le système de fichiers.
Pour héberger votre site WordPress sur une infrastructure rapide, sécurisée et facile à gérer, explorez les offres d’hébergement, SSL et domaines de Hostragons. Notre équipe peut vous aider à trouver la configuration adaptée à vos besoins : Packages d'hébergement Hostragons
FAQ : questions fréquentes sur les permissions WordPress
Quelles doivent être les permissions des fichiers WordPress ?
En général : 755 pour les dossiers, 644 pour les fichiers, 600 ou 640 pour wp-config.php. Cela garantit sécurité et fonctionnalité sur la plupart des hébergements.
Est-ce sécurisé de mettre 777 sur le dossier uploads ?
Non. 777 sur uploads signifie que tout le monde peut écrire dedans, ce qui augmente le risque de fichiers malveillants. 755 est suffisant ; si problème, vérifiez la propriété du dossier.
Si je mets 600 sur wp-config.php, le site peut-il casser ?
Sur certains serveurs, 600 fonctionne, sur d’autres cela provoque une erreur 500. Essayez 640 au besoin. L’objectif est d’utiliser la permission la plus restrictive compatible avec le serveur.
Modifier chmod impacte-t-il le SEO ?
Indirectement : de mauvaises permissions peuvent causer des erreurs ou des failles de sécurité, nuisant à la performance SEO.
Puis-je changer les permissions via cPanel ?
Oui, vous pouvez modifier les permissions via le gestionnaire de fichiers cPanel : clic droit sur le fichier ou dossier, puis « Permissions ». Toujours sauvegarder avant un changement massif.