Comment sécuriser votre site WordPress – guide complet de sécurité WordPress

Guide de sécurité WordPress

Votre site web a fière allure, vous avez un excellent trafic et, dans l’ensemble, vous êtes satisfait. Cependant, tout cela ne vaut rien si votre site est piraté et que vous perdez du contenu, des clients et l’accès à votre site.

Pour éviter que cela ne se produise, j’ai rédigé ce concept de sécurité complet pour votre site WordPress.

J’ai parcouru l’intégralité de l’article Hardening WordPress pour vous montrer comment mettre en œuvre toutes les recommandations de sécurité dans un guide pas à pas simple, afin de rendre votre site WordPress à toute épreuve face aux tentatives de piratage.

Vidéo : comment sécuriser votre site WordPress

Si vous préférez regarder une vidéo plutôt que lire cet article sur la façon de sécuriser votre site WordPress, vous pouvez visionner cette vidéo :

Vous aimeriez voir plus de vidéos comme celle-ci ?
Check out our chaîne YouTube.

J’ai divisé cet article en trois étapes.

  • D’abord, nous examinons la base d’un site WordPress sécurisé : l’hébergeur.
  • Dans la deuxième étape, nous installons le plugin « WP STAGING » pour créer un filet de sécurité lors de l’installation de nouveaux plugins ou thèmes. Nous mettrons également en place un plugin de sauvegarde afin de restaurer rapidement le site WordPress, dans le pire des cas, après une attaque réussie.
  • Dans la dernière étape, nous configurons le plugin de sécurité « Solid Security » pour empêcher les attaquants d’accéder à notre site.

Choisir le bon hébergeur

Commençons par la base de la sécurité de votre site : l’hébergeur.

Il existe d’innombrables hébergeurs web, et la plupart répondent aux exigences minimales de WordPress, mais en choisir un dans la foule peut être chronophage.

  1. PHP version 7.4 ou supérieure.
  2. MySQL version 8.0 ou supérieure OU MariaDB version 10.5 ou supérieure.
  3. Prise en charge HTTPS

[Valable pour WordPress 6.7 – mars 2025]

Dans tous les cas, vérifiez que votre fournisseur respecte ces exigences.

Si vous n’êtes pas sûr du fournisseur à choisir, optez pour l’un des hébergeurs recommandés par WordPress.org.

Bluehost hébergeur WordPress
Bluehost
DreamHost hébergeur WordPress
DreamHost
SiteGround hébergeur WordPress
SiteGround

Vous pouvez poursuivre la sécurisation de votre site si vous utilisez déjà l’un des fournisseurs recommandés ou si vous avez vérifié les critères de sécurité de votre hébergeur.

Mises à jour sécurisées et création d’une sauvegarde

Il est recommandé de mettre à jour régulièrement le cœur de WordPress et les plugins afin de corriger les problèmes de sécurité et les erreurs, car un logiciel obsolète ne reçoit plus de mises à jour de sécurité et votre site devient beaucoup plus vulnérable aux tentatives de piratage malveillantes.

Veillez donc à maintenir à jour le cœur de WordPress, les plugins et les thèmes. Ouvrez le tableau de bord WordPress et cliquez sur « Mises à jour ». Vous obtiendrez une vue d’ensemble des mises à jour du cœur de WordPress, des plugins et des thèmes.

Mises à jour WordPress
WordPress Updates

Certains utilisateurs WordPress ont peur de mettre à jour leurs sites. Ils craignent que cela n’endommage leur site.

WordPress Critical Error

Nous traitons ce sujet dans un article séparé intitulé « Pourquoi et comment désactiver les mises à jour automatiques de WordPress. »

Mise à jour sécurisée avec « WP STAGING »

Pour éviter d’endommager votre site lors des tests et des ajustements, vous pouvez utiliser le plugin gratuit « WP STAGING ».

Ouvrez la zone « Plugins » dans le menu latéral et cliquez sur « Ajouter ». Saisissez ensuite « WP STAGING » dans la barre de recherche. Installez et activez le plugin.

Plugin WP Staging
WP STAGING Plugin

Ouvrez le plugin WP STAGING. Cliquez ensuite sur « Create Staging Site », attribuez un nom et cliquez sur « Start Cloning ». Le plugin crée une copie de votre site. Vous pouvez alors utiliser le bouton « Open Staging Site » pour accéder à votre site de staging et essayer toutes les modifications dans un environnement sécurisé, sans mettre en danger votre site de production.

WP Staging créer un nouveau site de staging
WP STAGING Create New Staging Site

Je recommande d’aller droit à la mise en œuvre et de tester les ajustements de l’article sur un site de staging plutôt que de travailler directement sur votre site web.

Vous pouvez reconnaître à la barre de menu orange que vous travaillez sur le site de staging créé par WP STAGING.

Barre de menu orange WPSTAGING
WPSTAGING Orange Menu Bar

Créer une sauvegarde avec « WP Staging »

Sauvegarder votre site web est un processus fondamental pour tout site WordPress. Pour éviter de perdre toutes les avancées, données et commandes, dans le pire des cas si votre site est piraté, vous devez disposer d’une sauvegarde du site WordPress.

Commençons.

Allez dans WordPress > Extensions > Ajouter et recherchez « WP STAGING »

Si vous n’êtes pas sûr de savoir comment installer le plugin, consultez notre article « How to install WP STAGING | PRO ».

Cliquez maintenant sur le bouton « Backup & Migration ». WP STAGING | PRO recherchera les sauvegardes existantes.

Bouton WP Staging Backup & Restore
Backup & Restore Button

Les options sont « Create Backup » et « Upload Backup ».

Cliquez sur « Create a backup ».

Bouton WP Staging Create Backup
Create a New Backup Button

Vous pouvez attribuer en option un nom permettant d’identifier la sauvegarde.

Par exemple, si vous prévoyez de mettre à jour WooCommerce ou tout autre plugin, vous pouvez nommer votre sauvegarde « Backup before installing WooCommerce ».

Sélectionnez ensuite les composants de votre site que WP STAGING | PRO doit inclure dans la sauvegarde. Laissez toutes les cases cochées, sauf si vous souhaitez effectuer un test particulier. Cliquez ensuite sur « Start Backup ».

WP Staging créer une sauvegarde du site
Start the Backup Process

Le temps nécessaire pour créer une sauvegarde varie et dépend de la taille de votre site, mais la fonction de sauvegarde de WP STAGING est assez rapide et généralement bien plus rapide que les autres outils de sauvegarde. Ainsi, en particulier pour les sites volumineux, vous remarquerez un avantage considérable en termes de performances par rapport aux autres outils.

Processus de sauvegarde WP Staging
The Backup is Completed
Sauvegarde WP Staging terminée

Vous trouverez la sauvegarde nouvellement créée dans la liste « Your Backups » lorsque la sauvegarde est prête. Les icônes indiquent quels composants la sauvegarde contient.

Contenu de la sauvegarde WP Staging

Télécharger le fichier de sauvegarde

Pour télécharger la sauvegarde, cliquez sur Actions puis Download. Cela téléchargera un fichier portant l’extension « .wpstg ».

Option de téléchargement de sauvegarde WP Staging
Download the Backup

Il est toujours recommandé de télécharger le fichier de sauvegarde sur un ordinateur local, car vous voulez vous assurer d’avoir toujours accès au fichier de sauvegarde. Par exemple, si un attaquant pirate votre site, il pourrait y supprimer le fichier de sauvegarde, et vous ne pourriez plus restaurer le site.

Télécharger le fichier de sauvegarde WP Staging dans le système local

Restaurer le fichier de sauvegarde

Ainsi, pour restaurer la sauvegarde en cas de site cassé, vous pouvez soit sélectionner la sauvegarde dans la liste des sauvegardes existantes, soit, comme recommandé, téléverser le fichier de sauvegarde depuis votre ordinateur local.

Une fonctionnalité formidable est que vous pouvez même téléverser le fichier de sauvegarde sur n’importe quel autre site WordPress existant et l’utiliser pour cloner votre site sur un autre serveur ou un autre site.

Retournez dans WP STAGING et cliquez sur le bouton « Upload Backup ».

Option de téléversement de sauvegarde WP Staging
Upload Backup Button

Sélectionnez la sauvegarde téléchargée dans l’explorateur de fichiers et téléversez-la.

Options de téléversement du fichier de sauvegarde WP Staging
Select the WP STAGING Backup File

Une fois la sauvegarde téléversée, cliquez sur Actions et sur le bouton « Restore », et une fenêtre contextuelle apparaîtra. Téléversez votre fichier de sauvegarde par glisser-déposer, en saisissant une « URL », ou via « FTP » dans le répertoire indiqué. À l’intérieur, vous verrez deux boutons : « Cancel » et « Next ». Cliquez sur « Next » pour continuer.

WP Staging restaurer la sauvegarde, bouton Next

Après avoir cliqué sur « Next », une nouvelle fenêtre apparaîtra. Cliquez ensuite sur « Restore » pour démarrer la restauration.

Bouton de restauration de sauvegarde WP Staging
Click on Restore

Si la restauration réussit, vous verrez la fenêtre modale « Finished Successfully ».

Sauvegarde WP Staging terminée

Ouvrez votre site web et vérifiez s’il fonctionne comme prévu et est entièrement opérationnel.

Planifier des sauvegardes automatiques

Avec WP STAGING, vous pouvez gagner du temps et vous épargner des soucis en configurant les sauvegardes pour qu’elles s’exécutent automatiquement. Plus besoin de penser à sauvegarder votre site à chaque modification. Vous pouvez vous détendre en sachant que votre site est toujours sauvegardé et en sécurité.

Sauvegarde « Create Backup », décochez « One-Time-Only », puis choisissez parmi les options affichées la fréquence des sauvegardes, leur heure de démarrage et le nombre de sauvegardes à conserver.

Sauvegarde automatique WP Staging

C’est tout. Avec WPSTAGING | PRO, vous avez créé et restauré une sauvegarde de l’ensemble de votre site WordPress.

Durcir votre site avec un plugin de sécurité

Pour préparer cet article, j’ai testé les plugins de sécurité les plus populaires : « WordFence » et « Solid Security ».

Wordfence et iThemes Security
Wordfence and Solid Security

Ce sont tous deux d’excellents plugins, mais j’ai choisi Solid Security en raison de sa configuration plus simple et de ses fonctionnalités supplémentaires pour durcir le site WordPress.

Installer le plugin « Solid Security »

Installez et activez le plugin. Nous pouvons maintenant ouvrir le nouvel onglet « Security » dans le menu latéral en cliquant sur « Settings ».

Lancer une vérification de sécurité initiale

Le « Security Check » de Solid Security s’ouvre alors. Ce « Security Check » est un outil en un clic qui installe les modules requis sur tout site WordPress. Il s’agit par exemple de la « Brute Force Protection » ou de l’application des « Strong Passwords ». J’expliquerai les fonctions des différents modules juste après le « Security Check ».

Sélectionnez « Security Check Scan » pour continuer.

Solid Security
Security Check
Solid Security : lancer l'analyse du site

Deux clics supplémentaires sont nécessaires pour terminer le processus.

Solid Security : SSL, Network Bruteforce Protection

Solid Security: SSL, Network Bruteforce Protection
Solid Security : SSL, Network Bruteforce Protection
Solid Security: SSL, Network Bruteforce Protection

Le premier clic confirme la « redirection des requêtes HTTP vers HTTPS ». Cette fonction garantit qu’aucune page non chiffrée n’est accessible à vos visiteurs.

L’autre clic active la « Network Brute Force Protection ».

Paramètres Solid Security

Une attaque par force brute est une méthode qui tente de découvrir des mots de passe ou des clés par des essais automatisés et aléatoires. Solid Security protège le site avec la « Local Brute Force Protection » et via un réseau de « Brute Force Protection ». Vous ajoutez votre site WordPress au réseau, et Security protège votre site contre les attaques ayant déjà touché un autre site.

L’adresse e-mail de l’administrateur est sélectionnée ici par défaut.

Vous pouvez également m’autoriser à être informé des actualités ; je laisse cette option sur « No ».

Confirmez l’activation et fermez le « security check ».

Scanner de malware

Comme beaucoup de plugins, Solid Security propose des versions gratuite et pro. Vous pouvez décider au fil de l’article si vous jugez la version Pro utile. Si une fonctionnalité de la version premium fait sens pour vous, je la mentionnerai.

Fonctionnalités pro de Solid Security
Solid Security Pro Features

D’abord, examinons le scan de malware.

Démarrer l'analyse du site
Site Scan

WordPress.org rappelle qu’il est important de ne pas reporter toute la responsabilité de la sécurité sur l’hébergeur, mais d’en prendre soin soi-même. Cela concerne en particulier les applications installées.

Nous utilisons le scanner de malware de Solid Security pour vérifier si des applications installées sont classées comme malveillantes par Solid Security.
Pour ce faire, faites défiler vers le bas pour trouver le scanner à droite. La version gratuite de Solid Security dispose également d’un scanner de malware, mais manuel. La version Pro propose un scanner de malware automatique.

Cliquez sur « Run Scan » pour scanner votre site web. Rendez-vous ensuite sur la « logs page » pour consulter les résultats.

Journaux Solid Security

N’installez des plugins que depuis des sources fiables afin de ne pas laisser de chance aux applications malveillantes d’arriver sur votre site.

Les modules recommandés de « Solid Security »

Passons maintenant aux différents modules de Solid Security. Il y a deux modes d’affichage, la « block view » et la « list view ». Il est plus facile de parcourir les différents modules étape par étape en vue liste ; nous changeons le mode d’affichage dans le coin supérieur gauche en passant de « block- » à « list view ».

Security Check

Le module « Security Check » liste uniquement les précautions standard que nous avons confirmées au début de la configuration.

Paramètres globaux

« Write to Files » : si vous désactivez cette option, vous devrez ajouter manuellement les options de configuration dans les fichiers « wp-config.php » et « .htaccess ». Je recommande donc de ne pas décocher cette case.

Solid Security : Write to Files
Solid Security: Write to Files

Comme nous ajusterons les permissions de fichier plus tard, nous retirerons de toute façon les droits d’écriture sur ces fichiers, il est donc judicieux de laisser Solid Security effectuer les ajustements jusqu’à ce changement.

Les « Lockout messages » sont affichés à l’hôte, à l’utilisateur ou à la communauté si Solid Security les bloque hors de votre site WordPress ou marque leur adresse IP comme malveillante. Vous pouvez modifier ces messages pour les rendre plus amicaux si vous avez des comptes clients sur votre site.

Solid Security : message de blocage

En dessous se trouvent les réglages spécifiques aux blocages. La « Lockout Period » indique combien de temps WordPress bloquera l’utilisateur / l’adresse IP après l’atteinte du nombre maximum de tentatives de connexion incorrectes.

La « Ban Lookback Period » régule la durée pendant laquelle Solid Security se souvient des blocages et les cumule. Le « Ban Threshold » détermine combien de blocages un utilisateur ou une adresse IP peut recevoir avant d’être bloqué de façon permanente.

Solid Security : paramètres de blocage

Solid Security : paramètres de blocage permettant de spécifier le nombre de tentatives de connexion qu’un utilisateur / une IP a avant d’être bloqué. Nous faisons défiler jusqu’au module « Local Brute Force Protection ».

« Minutes to Remember Bad Login » indique le moment où Solid Security additionne les tentatives de connexion incorrectes. Solid Security comptera deux essais si l’utilisateur / l’IP saisit des informations de connexion incorrectes à 17 h 05 et 17 h 07. Si l’attaquant fait la prochaine tentative incorrecte à 18 h 00, le compteur repart à 1.

Dans la zone « Max Login Attempts Per User », vous pouvez spécifier combien de tentatives un nom d’utilisateur a avant d’être bloqué.

« Max Login Attempts Per Host » semble très similaire. Cette zone entre en jeu si un attaquant utilise plusieurs ordinateurs au sein d’une même adresse IP. L’IP est bloquée dès que l’attaquant atteint cette valeur.

En fonction de votre site, ajustez les réglages de « Local Brute Force Protection » et « General settings ». Si vous avez des comptes clients sur votre site, vous pouvez fixer un peu plus haut la valeur maximale des tentatives de connexion incorrectes ou raccourcir la durée du blocage. Pour les sites où vous êtes seul à vous connecter, vous pouvez autoriser moins de tentatives.

Exemple : un utilisateur tente de se connecter à votre site WordPress cinq fois en cinq minutes. La « Local Brute Force Protection » bloque l’utilisateur pendant 15 minutes. Solid Security bloque l’utilisateur de façon permanente si ce blocage se répète deux fois en sept jours.

Poursuivons avec le module « Global Settings ».

La « Authorized Hosts List » vous permet d’ajouter des hôtes que Solid Security n’exclura pas du site WordPress. Cette option vous évite de perdre l’accès à votre site si vous déclenchiez un blocage.

Pour cela, cliquez sur « Add my current IP to the Authorized Hosts List ».

Add my current IP to the Authorized Hosts List

WordPress.org recommande d’approfondir la journalisation de votre site WordPress pour résoudre les problèmes ou comprendre ce qui s’est passé et restaurer votre site après un piratage.

Solid Security enregistre les "File Logs".

Solid Security peut enregistrer à la fois les « File Logs » et les « Database Logs ». Comme mentionné lors du module « Site Scan », vous pouvez accéder aux logs depuis le menu latéral en cliquant sur « Logs ».

Si vous utilisez déjà de nombreux plugins et que vous souhaitez garder votre menu WordPress bien rangé, vous pouvez le faire en cochant la case sous « Hide Security Menu in Admin Bar ».

Notification Center

Dans le module « Notification Center », descendez jusqu’à « Site Lockouts ». Ce réglage est activé par défaut, ce qui signifie que vous recevrez une notification par e-mail à chaque blocage d’un utilisateur ou d’un hôte. La configuration dépend individuellement de votre site. Mieux vaudrait désactiver cette option pour les sites auxquels des clients ou de nombreux utilisateurs WordPress accèdent, car il arrive souvent que quelqu’un oublie son mot de passe. En revanche, si vous êtes seul à utiliser ce site, vous pouvez l’activer la conscience tranquille, puisque Security peut vous prévenir directement d’une éventuelle tentative de piratage.

Solid Security : Site Lockouts
Solid Security: Site Lockouts

User Groups

Nous n’avons besoin d’ajuster aucun paramètre sous « User Groups ».

Away Mode

Je recommande d’activer le « Away Mode » avec prudence, car il rend le tableau de bord WordPress inaccessible à tous les utilisateurs pendant une durée sélectionnée.

Banned User

Sous l’onglet « Banned User », vous pouvez bloquer les adresses IP d’utilisateurs ou d’hôtes spécifiques. Cette option signifie que vous refusez immédiatement et complètement à cette IP l’accès à votre site. La liste fonctionne comme la « Authorized Hosts List » mais à l’inverse. Au lieu de ne jamais bloquer certaines IP, cette liste les bloque complètement.

Solid Security : Banned Users
Solid Security: Banned Users

Database Backup

Vous pouvez désactiver la fonction « Database Backup », car nous avons déjà installé un plugin de sauvegarde qui crée à la fois des sauvegardes de la base de données et des fichiers.

Solid Security : Database Backup
Solid Security: Database Backup

File Change Detection

Je recommande d’activer « File Change Detection ». Si, par exemple, un attaquant a piraté le serveur de votre hébergeur et tente de modifier ou supprimer vos fichiers du cœur de WordPress, vous recevrez une notification par e-mail. WordPress.org recommande d’activer la surveillance des modifications de fichiers.

Solid Security: File Change Detection

File Permission

Le module « File Permission » nous offre des informations fascinantes sur le cœur de notre site WordPress. Il est recommandé de vérifier les permissions des fichiers.

Ouvrez la fenêtre du module et cliquez sur « Load File Permission Details ». Solid Security affiche désormais les chemins des fichiers WordPress liés à la sécurité ainsi que les droits d’accès aux fichiers ou dossiers. La valeur actuelle et la valeur cible sont affichées. Dans mon cas, Solid Security suggère une modification à deux endroits : les fichiers « wp-config.php » et « .htaccess ».

Solid Security : permissions de fichiers
Solid Security: Tools > File Permissions

Un nombre à trois chiffres régule les permissions de fichiers. Le premier chiffre régit les permissions du « user » ; il s’agit de l’administrateur du site. Plusieurs personnes peuvent avoir les droits d’administrateur. Le deuxième chiffre régit les permissions du « Group » ; cela inclut les autres utilisateurs de votre site, par exemple les éditeurs, contributeurs ou autres rôles utilisateur. Le dernier chiffre décrit les droits pour « World », qui inclut toute personne sur Internet accédant à votre site.

Un nombre à trois chiffres régit les permissions de fichiers
A three-digit number regulates the file permissions

Le wp-config.php est le fichier de configuration de votre application WordPress. Puisqu’il s’agit de l’un des fichiers les plus critiques, vous devez vous assurer de l’avoir correctement protégé.

Solid Security recommande ici « 444 » ; tout le monde a un accès en lecture, mais personne ne peut écrire.

Solid Security: File Permission Suggestion « 444 »

WordPress.org recommande de protéger le fichier avec « 400 » / « 440 ». Avec la valeur « 440 », vous, l’administrateur, et l’utilisateur avez un accès en lecture mais aucun visiteur. Avec « 400 », seul vous en tant qu’administrateur avez un accès en lecture ; c’est l’option la plus sécurisée.

WordPress.org: File Permission Suggestion « 400 » / « 440 »

Il est crucial de comprendre que ces permissions de fichier concernent le site réel ; en tant que propriétaire du site, vous pouvez ajuster ces permissions à tout moment via FTP / cPanel et ne perdez jamais l’accès réel.

La valeur à choisir dépend de la configuration du serveur. WordPress.org recommande de verrouiller au maximum vos permissions de fichiers et de ne lever ces restrictions que si vous devez autoriser l’accès en écriture. Cela signifie commencer par la permission « 400 » ou « 440 » et augmenter la valeur jusqu’à ce que WordPress fonctionne. Utilisez au maximum « 600 » ou « 640 ».

Vous comprenez maintenant comment se composent les permissions de fichiers et lesquelles nous devons ajuster.

Cependant, il serait contre-productif d’appliquer immédiatement l’ajustement des permissions de fichiers, car nous refuserions alors les droits d’écriture à Solid Security, ce qui signifierait que nous devrions ajouter manuellement les changements au fichier « wp-config.php » en fin de configuration.

Nous ajusterons les permissions de fichiers en abordant le module « System Tweaks ».

Local Brute Force Protection

Le module suivant est « Local Brute Force Protection ». Nous avons déjà effectué ces réglages dans les paramètres généraux.

Network Brute Force Protection

Nous avons également configuré « Network Brute Force Protection » au début lors du « Security Check ».

Password Requirements

L’utilisation d’un mot de passe sécurisé est un autre aspect crucial pour éviter les vulnérabilités potentielles.

Vous devez éviter ce qui suit lors du choix d’un mot de passe :

Recommandations de WordPress.org pour des mots de passe forts
WordPress.org: recommendations for strong passwords

Le module « Strong Password » aide à mettre en œuvre ces exigences.

Par défaut, Solid Security active ce réglage pour tous les rôles utilisateurs. Vous devez ajuster ces paramètres en fonction de votre site. Par exemple, vous pouvez n’imposer des mots de passe forts qu’au rôle Administrateur.

Solid Security : mots de passe forts
Solid Security: Strong Passwords

L’authentification à deux facteurs est également recommandée.

La technique d’authentification à deux facteurs exige des utilisateurs qu’ils se connectent via une méthode en deux étapes. La première étape est le nom d’utilisateur et le mot de passe, et le second facteur est une authentification, c’est-à-dire un code provenant d’un appareil ou d’une application séparés.

Cette fonctionnalité est disponible dans la version Pro de Solid Security. Vous pouvez aussi rechercher le plugin gratuit d’authentification à deux facteurs « WP2FA » dans le dépôt de plugins.

Installer le plugin WP 2FA
Install – WP 2FA Plugin

D’abord, vous devez installer et activer le plugin Two-Factor Authentication. Après activation, cliquez dans les plugins WordPress sous « WP 2FA – Two-factor authentication for WordPress » sur « Configure 2FA Settings ». Cela vous mènera au « setup wizard ».

Ensuite, installez une application 2FA sur votre téléphone. Je recommande « Google Authenticator ».

Application Google Authenticator
Google Authenticator App

Ouvrez votre application d’authentification et scannez le QR code dans le « Setup wizard ».

Saisissez le code affiché dans l’application sur votre smartphone.

WP 2FA : scanner le QR code
WP 2FA: Scan the QR Code

Si vous avez besoin d’aide supplémentaire pour configurer l’application, cliquez sur « For detailed guides for your desired app, click below ».

C’est tout ; votre application d’authentification enregistrera désormais le code envoyé une seule fois par « WP2FA ». Configurez maintenant les paramètres correspondant à votre site WordPress.

La prochaine fois que vous vous connecterez à votre site, le plugin vous demandera le code d’authentification à deux facteurs après la saisie de votre mot de passe.

WP 2FA : connexion
WP 2FA: Login

Pour cela, ouvrez à nouveau l’application d’authentification sur votre téléphone et saisissez le code qui s’y affiche.

Retournons à Solid Security.

SSL

Le module « SSL » redirige toutes les requêtes « HTTP » vers HTTPS si un certificat SSL est disponible. Solid Security a activé ce module dans le « Security Check ».

System Tweaks

Ouvrez « System Tweaks » et cliquez sur « Enable ». Nous devons cocher certaines cases. Les modules « System Tweaks » et « WordPress Tweaks » comportent plusieurs optimisations pour améliorer encore la sécurité de votre site WordPress. Cependant, certaines de ces options peuvent entrer en conflit avec votre site ; cela dépend de votre site. Par conséquent, vérifiez la pleine fonctionnalité après chaque activation en cochant la case, en cliquant sur « Save Settings » et en rechargeant le frontend de la page.

iThemes Security : testez votre site après l'activation de chaque réglage
Solid Security: Test Your Site After Enabling Each Setting

Directory browsing : les hackers peuvent utiliser l’exploration des répertoires pour découvrir s’il existe des fichiers comportant des vulnérabilités connues sur votre site WordPress, afin de s’en servir pour accéder à votre site.

Parcourir les répertoires peut également servir à fouiller dans vos fichiers, copier des images, découvrir votre arborescence et obtenir d’autres informations sur le site. Pour cette raison, je recommande vivement d’activer « disable directory browsing ».

Pour tester si l’exploration de répertoires de votre site est déjà désactivée, saisissez example.com/wp-content. Si vous obtenez une page blanche, tout va bien, mais si votre site autorise les visiteurs à accéder au répertoire, il s’agit d’un problème de sécurité important.

File write permissions : comme mentionné dans le module « File Permission », Solid Security ne permet de fixer les permissions de fichiers qu’à la valeur « 444 ».

iThemes Security : retirer les permissions d'écriture des fichiers
Solid Security: Remove File Writing Permissions v

Cependant, puisque WordPress.org recommande d’utiliser « 400 » ou « 440 », nous modifions cela manuellement via FTP.

WordPress.org : suggestion de permissions de fichier "400" / "440"
WordPress.org: File Permission Suggestion « 400 » / « 440 »

J’utilise « FileZilla » pour accéder à la base de données de l’installation WordPress via FTP sur le serveur de l’hébergeur. Vous pouvez aussi le faire via cPanel.

Filezilla
Filezilla

Connectez-vous au serveur ; vous obtiendrez le « Host », le « Username » et le « Password » de votre hébergeur.
Il est recommandé d’utiliser le chiffrement SFTP lors de la connexion à votre serveur. Si vous ne savez pas si votre hébergeur fournit SFTP, demandez-le-lui. Utiliser SFTP revient au même que FTP, sauf que votre mot de passe et d’autres données sont chiffrés et transmis entre votre ordinateur et votre site.

Ouvrez le dossier « HTML ». Vous y trouverez le fichier wp-config.php.

Filezilla: « wp-config.php » and « .htaccess » Files

Sélectionnez le fichier « wp-config.php » et faites un clic droit pour ouvrir le menu contextuel. Cliquez sur « file permission ».

Filezilla : permissions de fichiers

Vous pouvez maintenant attribuer les permissions de fichier souhaitées. Je retire les droits de lecture à « public » et « group » et retire les droits d’écriture à « owner », également appelé « admin ».

Filezilla: File Permissions « wp-config.php »

Cliquez sur OK, et FileZilla enregistrera les nouvelles permissions.

Effectuez les mêmes modifications à nouveau pour le fichier « .htaccess ». Retirez les droits de lecture à « public » et « group » et retirez les droits d’écriture à « owner ».

Filezilla : permissions de fichiers ".htaccess"
Filezilla: File Permissions « .htaccess »

Ne modifiez pas les autres chemins de fichiers, par exemple le chemin « wp-content » ; sinon, WordPress ne fonctionnera plus correctement.

Retournons au module « System Tweaks » dans Solid Security.

« PHP in uploads, PHP in plugins, PHP in themes. » Si quelqu’un tente de téléverser un fichier PHP dans le frontend de votre site, y compris dans les zones médias, plugins et thèmes, il s’agit presque toujours d’une attaque potentielle. Cette option interdit donc le format de fichier « PHP » pour ces répertoires.

WordPress Salts

Les « WordPress Salts » protègent les mots de passe que vous enregistrez dans le navigateur. Si vous enregistrez votre mot de passe dans le navigateur lors de la connexion, WordPress stocke ce mot de passe dans deux cookies. Cependant, si WordPress avait enregistré votre mot de passe en clair, les attaquants pourraient le déchiffrer rapidement.

Les clés de sécurité et les salts évitent ce problème en travaillant ensemble pour transformer cryptographiquement ce mot de passe en clair en un mélange aléatoire de caractères.

Vous trouverez ces clés de sécurité et ces salts dans le fichier wp-config.php ; quatre clés et quatre salts.

« wp-config-php »: Security Keys and Salts

En confirmant « Change WordPress Salts » et en enregistrant les paramètres, Solid Security modifie les Salts de WordPress. Cela signifie cependant aussi que tous les utilisateurs sont déconnectés de leur session actuelle et doivent se reconnecter. Réfléchissez donc au moment de faire ce changement. Solid Security recommande de changer les « Salts » de WordPress au moins une fois par mois.

WordPress tweaks

Comme avec les system tweaks, nous pouvons aussi apporter des modifications pertinentes aux « WordPress Tweaks » en cochant quelques cases. Comme pour les « System Tweaks », veillez à vérifier la pleine fonctionnalité de votre site après chaque activation.

iThemes Security : testez votre site après l'activation de chaque réglage
Solid Security: Test Your Site After Enabling Each Setting

D’abord, nous cochons la case « Comment Spam » ; cela réduit le spam dans la zone des commentaires.

Nous nous assurons également que le File Editor est désactivé ; c’est une autre recommandation. WordPress propose par défaut la possibilité de modifier à la fois les plugins et les designs. Cet éditeur ouvre une autre possibilité aux attaquants d’accéder à votre site.

Solid Security : désactiver le File Editor
Solid Security: Disable the File Editor

Il en va de même pour « XML-RPC ». « XML-RPC » est une fonctionnalité de WordPress que vous ou des plugins pouvez utiliser pour transférer des données. « XML-RPC » offre également aux attaquants la possibilité d’accéder à votre site. Cette interface est pertinente pour utiliser l’application WordPress, les trackbacks, les pingbacks et le plugin JetPack. Si vous utilisez l’une de ces fonctions, vous ne pouvez pas désactiver l’interface « XML-RPC » ; sinon, sélectionnez « Disable XML-RPC ».

Cliquez sur « Save Settings ».

Les modules avancés de « Solid Security »

À ce stade, nous en avons terminé avec les modules « Recommended » de Solid Security.

Cependant, il existe également des modules « Advanced » qui permettent d’effectuer en un clic des modifications que nous aurions sinon dû faire manuellement.

Comme mentionné

je veux vous rappeler d’essayer toutes les modifications sur un site de staging. Sinon, cela pourrait entraîner des complications sur votre site.

Admin User

Le module avancé « Admin User » coche une autre recommandation de WordPress.org.
WordPress.org recommande d’appliquer le principe « Security through obscurity » à deux endroits.

Le premier consiste à renommer le compte administrateur ; le second à modifier le « table_prefix ». Solid Security offre la possibilité d’effectuer les deux ajustements ; la modification du « table_prefix » a lieu à l’étape d’après.

Lors de l’installation de WordPress, le nom d’utilisateur admin est « admin » par défaut. Ce paramètre par défaut n’est souvent pas modifié, surtout avec les installations WordPress en un clic des hébergeurs. Mais même si vous aviez installé WordPress, vous n’avez peut-être pas changé le nom d’utilisateur parce que vous ne saviez pas mieux. Cela facilite grandement la tâche des attaquants pour accéder au site, car ils n’ont pas à cracker le nom et le mot de passe, mais seulement le mot de passe.

Si votre nom d’utilisateur administrateur est « admin », vous verrez le champ « New Admin Username ». Si vous ne voyez pas ce champ, cela indique que vous avez tout fait correctement pendant l’installation.

Solid Security : nouveau nom d'utilisateur admin
Solid Security: New Admin Username

Je saute le champ « Change User ID 1 » à ce stade, car cela peut entraîner des complications lors de l’utilisation de plugins.

Change Content Directory

Idem pour le module suivant, « Change Content Directory ». Comme l’indique l’avertissement, vous ne devriez utiliser ce module que lors de l’installation de WordPress.

Change Database Table Prefix

Nous arrivons au deuxième point où WordPress.org recommande le principe « Security through obscurity » ; le module « Change Database Table Prefix » effectue cet ajustement.

De nombreuses attaques par injection SQL spécifiques à WordPress supposent que le « table_prefix » a la valeur par défaut « wp_ ». Modifier ce préfixe peut bloquer certaines attaques par injection SQL.

Si votre préfixe de table est « wp_ », vous verrez le message suivant avec le conseil de changer le préfixe. « wpstg0_ » est affiché comme préfixe de table car je suis sur le site de staging et WP STAGING a créé ce préfixe.

iThemes : changer le préfixe de table
Solid Security: New Change Table Prefix

Vous pouvez consulter la base de données via le plugin « PhpMyAdmin ». Comme les plugins précédents, vous pouvez le télécharger via « Plugin » et « Add New ». Ouvrez-le ensuite via le menu latéral.

Plugin "phpMyAdmin"
« phpMyAdmin » Plugin

Vous voyez maintenant les tables avec « wpstg0 » ; ce sont les tables du site de staging. En dessous se trouvent les tables du site de production avec le préfixe « wp_ ».

phpMyAdmin: Staging Site Tables
phpMyAdmin : tables du site de production
phpMyAdmin: Production Site Tables

Je retourne dans Solid Security. En sélectionnant « Yes » et « Save Settings », Solid Security attribuera un nouveau préfixe plus complexe aux tables.

Nouveau préfixe de table de base de données
New database table prefix

Je bascule à nouveau sur l’onglet « PhpMyAdmin » et, après avoir actualisé la page, je vois le nouveau préfixe devant les tables.

phpMyAdmin : nouveau préfixe de table de base de données
phpMyAdmin: New database table prefix

Hide Backend

Le module « Hide Backend » complique l’accès des attaquants à la zone de connexion WordPress. Tout le monde peut atteindre la page de connexion via « example.com/wp-admin » et « example.com/wp-login.php » par défaut.

Puisque cette configuration est identique pour tous les sites WordPress, les attaquants peuvent identifier immédiatement la zone de connexion où ils démarrent leur attaque par force brute.

Avant d’expliquer la permission de connexion, j’aimerais mentionner que je n’ai pas activé le module, car il peut provoquer des problèmes de connexion avec certains plugins.

Sous « Login Slug », vous pouvez voir votre extension de connexion actuelle, la modifier et la noter. La prochaine fois que vous accéderez à votre site, saisissez « example.com/nouvelle extension ».

Le module peut être utile pour empêcher des attaques par force brute peu sophistiquées. Si vous le souhaitez, essayez pour voir si le module provoque des complications.

wp-config.php Rules

Dans le dernier module, « wp-config.php Rules », Solid Security peut vérifier si tous les modules peuvent agir correctement.

Si Solid Security ne trouve aucun changement requis, vous obtiendrez le message « There is nothing that needs to be written to your wp-config.php file ».

Sinon, vous obtiendrez le message « The following rules need to be written to your wp-config.php ».

iThemes : règles "wp-config.php"

Solid Security : règles « wp-config.php ». Ce message apparaît s’il n’y a pas la permission d’écriture pour le fichier « wp-config.php ».

Nous utilisons FileZilla pour accéder à nouveau via FTP à la base de données du site WordPress afin d’écrire les règles requises par Solid Security dans le fichier « wp-config.php ». Comme vous le savez déjà depuis la personnalisation des permissions de fichiers, le fichier « wp-config.php » se trouve directement dans le dossier « HTML ». Cliquez avec le bouton droit pour sélectionner « View / Edit », puis ouvrez l’éditeur de texte.

Filezilla : "wp-config.php" Voir/Modifier
Filezilla: « wp-config.php » View/Edit

Copiez et collez les règles indiquées par Solid Security dans le fichier « wp-config.php » directement sous « <? PHP ».

Filezilla : insérer les règles dans "wp-config.php"
Filezilla: Insert the Rules into « wp-config.php »

Pour expliquer, la règle « DISALLOW_FILE_EDIT » garantit que la désactivation de l’éditeur de fichiers, que nous avons effectuée dans le module « WordPress tweaks », prend effet.

« FORCE_SSL_ADMIN » signifie que le chiffrement SSL est également effectif au niveau de l’admin. Solid Security a appliqué ce paramètre lors du « Security Check » au début.

Enregistrez les modifications et fermez le fichier, puis confirmez le nouveau téléversement du fichier via FileZilla.

Confirmation des modifications de fichiers
Filezilla: The file has changed

Après avoir inséré ces règles dans le fichier « wp-config.php », vérifiez si le site de staging de votre site WordPress est toujours fonctionnel. Cliquez sur « View Site » dans le tableau de bord WordPress.

Après avoir testé les modifications, poussez votre site de staging vers le site de production à l’aide de WP STAGING PRO ou reproduisez les réglages sur le site de production.

Eh oui, cela faisait beaucoup d’ajustements ! Heureux que vous soyez arrivé au bout.

Désormais, votre site est excellemment positionné en matière de sécurité en choisissant le bon hébergeur, en créant automatiquement une sauvegarde et en adaptant le plugin « Solid Security ».

Articles connexes

Rene Hermenau

Auteur : Rene Hermenau

À propos de l'auteur : René Hermenau est le fondateur de WP STAGING. Il travaille sur les sauvegardes WordPress, les environnements de staging, les migrations, la gestion des bases de données et les workflows de déploiement sécurisés.