Voulez-vous ajouter des en-têtes de sécurité HTTP dans WordPress ?
Les en-têtes de sécurité HTTP vous permettent d’ajouter une couche de sécurité supplémentaire à votre site Web WordPress. Ils peuvent aider à empêcher les activités malveillantes courantes d’affecter les performances de votre site Web.
Dans ce guide du débutant, nous allons vous montrer comment ajouter facilement des en-têtes de sécurité HTTP dans WordPress.
Que sont les en-têtes de sécurité HTTP ?
Les en-têtes de sécurité HTTP sont une mesure de sécurité qui permet au serveur de votre site Web d’empêcher certaines menaces de sécurité courantes avant qu’elles n’affectent votre site Web.
Fondamentalement, lorsqu’un utilisateur visite votre site Web, votre serveur Web renvoie une réponse d’en-tête HTTP à son navigateur. Cette réponse informe les navigateurs des codes d’erreur, du contrôle du cache et d’autres états.
La réponse d’en-tête normale émet un statut appelé HTTP 200. Après quoi votre site Web se charge dans le navigateur de l’utilisateur. Cependant, si votre site Web rencontre des difficultés, votre serveur Web peut envoyer un en-tête HTTP différent.
Par exemple, il peut envoyer une erreur de serveur interne 500 ou un code d’erreur 404 introuvable.
Les en-têtes de sécurité HTTP sont un sous-ensemble de ces en-têtes et sont utilisés pour empêcher les sites Web de menaces courantes telles que le détournement de clics, les scripts intersites, les attaques par force brute, etc.
Jetons un coup d’œil rapide à ce à quoi ressemblent les en-têtes de sécurité HTTP et à ce qu’ils font pour protéger votre site Web.
Sécurité de transport stricte HTTP (HSTS)
L’en-tête HTTP Strict Transport Security (HSTS) indique aux navigateurs Web que votre site Web utilise des HTTP et ne doit pas être chargé à l’aide d’un protocole non sécurisé comme HTTP.
Si vous avez déplacé votre site Web WordPress de HTTP vers HTTPs, cet en-tête de sécurité vous permet d’empêcher les navigateurs de charger votre site Web sur HTTP.
Protection X-XSS
L’en-tête X-XSS Protection vous permet de bloquer le chargement des scripts intersites sur votre site Web WordPress.
X-Frame-Options
L’en-tête de sécurité X-Frame-Options empêche les iframes interdomaines ou le détournement de clic.
X-Content-Type-Options
X-Content-Type-Options bloque le reniflage de contenu de type mime.
Cela étant dit, voyons comment ajouter facilement des en-têtes de sécurité HTTP dans WordPress.
Ajout d’en-têtes de sécurité HTTP dans WordPress
Les en-têtes de sécurité HTTP fonctionnent mieux lorsqu’ils sont définis au niveau du serveur Web (c’est-à-dire votre compte d’hébergement WordPress). Cela leur permet d’être déclenchés tôt lors d’une requête HTTP typique et offre un maximum d’avantages.
Ils fonctionnent encore mieux si vous utilisez un pare-feu d’application de site Web au niveau DNS comme Sucuri ou Cloudflare. Nous vous montrerons chaque méthode et vous pourrez choisir celle qui vous convient le mieux.
Voici des liens rapides vers différentes méthodes, vous pouvez sauter à celle qui vous convient.
- Ajout d’en-têtes de sécurité HTTP à l’aide de Sucuri
- Ajout d’en-têtes de sécurité HTTP à l’aide de Cloudflare
- Ajout d’en-têtes de sécurité HTTP à l’aide de .htaccess
- Ajout d’en-têtes de sécurité HTTP à l’aide du plugin WordPress
- Test des en-têtes de sécurité HTTP
1. Ajout d’en-têtes de sécurité HTTP dans WordPress à l’aide de Sucuri
Sucuri est le meilleur plugin de sécurité WordPress sur le marché. Si vous utilisez également le service de pare-feu de leur site Web, vous pouvez définir des en-têtes de sécurité HTTP sans écrire de code.
Tout d’abord, vous devrez créer un compte Sucuri. Il s’agit d’un service payant qui comprend un pare-feu de site Web de niveau serveur, un plug-in de sécurité, un CDN et une garantie de suppression des logiciels malveillants.
Lors de l’inscription, vous répondrez à des questions simples et la documentation Sucuri vous aidera à configurer le pare-feu d’application de site Web sur votre site Web.
Après votre inscription, vous devez installer et activer le logiciel gratuit Plugin Sucuri. Pour plus de détails, consultez notre guide étape par étape sur la façon d’installer un plugin WordPress.
Lors de l’activation, accédez à Sucuri Sécurité » Pare-feu (WAF) page et entrez votre clé API de pare-feu. Vous pouvez trouver ces informations sous votre compte sur le site Web de Sucuri.
Cliquez sur le bouton Enregistrer pour enregistrer vos modifications.
Ensuite, vous devez passer au tableau de bord de votre compte Sucuri. À partir de là, cliquez sur le menu Paramètres en haut, puis passez à l’onglet Sécurité.
De là, vous pouvez choisir trois ensembles de règles. La protection par défaut, HSTS et HSTS complet. Vous verrez quels en-têtes de sécurité HTTP seront appliqués pour chaque ensemble de règles.
Cliquez sur le bouton « Enregistrer les modifications dans les en-têtes supplémentaires » pour appliquer vos modifications.
C’est tout, Sucuri va maintenant ajouter vos en-têtes de sécurité HTTP sélectionnés dans WordPress. Puisqu’il s’agit d’un WAF de niveau DNS, le trafic de votre site Web est protégé des pirates informatiques avant même qu’ils n’atteignent votre site Web.
2. Ajout d’en-têtes de sécurité HTTP dans WordPress à l’aide de Cloudflare
Cloudflare propose un pare-feu de site Web gratuit de base et un service CDN. Il manque des fonctionnalités de sécurité avancées dans leur plan gratuit, vous devrez donc passer à leur plan Pro qui est plus cher.
Pour ajouter Cloudflare sur votre site, consultez notre tutoriel sur la façon d’ajouter un CDN gratuit Cloudflare dans WordPress.
Une fois que Cloudflare est actif sur votre site Web, accédez à la page SSL/TLS sous le tableau de bord de votre compte Cloudflare, puis passez à l’onglet Certificats Edge.
Maintenant, faites défiler jusqu’à la section HTTP Strict Transport Security (HSTS) et cliquez sur le bouton « Activer HSTS ».
Cela fera apparaître une fenêtre contextuelle avec des instructions vous indiquant que vous devez activer HTTPS sur votre blog WordPress avant d’utiliser cette fonctionnalité. Cliquez sur le bouton Suivant pour continuer et vous verrez les options pour ajouter des en-têtes de sécurité HTTP.
À partir de là, vous pouvez activer HSTS, l’en-tête sans reniflement, appliquer HSTS aux sous-domaines (s’ils utilisent HTTPS) et précharger HSTS.
Cette méthode fournit une protection de base à l’aide d’en-têtes de sécurité HTTP. Cependant, il ne vous permet pas d’ajouter des options X-Frame et Cloudflare n’a pas d’interface utilisateur pour le faire.
Vous pouvez toujours le faire en créant un script à l’aide de la fonction Ouvriers. Cependant, la création d’un script d’en-tête de sécurité HTTPS peut entraîner des problèmes inattendus pour les débutants, c’est pourquoi nous ne le recommandons pas.
3. Ajout d’en-têtes de sécurité HTTP dans WordPress à l’aide de .htaccess
Cette méthode vous permet de définir les en-têtes de sécurité HTTP dans WordPress au niveau du serveur.
Il vous oblige à modifier le fichier .htaccess sur votre site Web. Il s’agit d’un fichier de configuration de serveur utilisé par le logiciel de serveur Web Apache le plus couramment utilisé.
Connectez-vous simplement à votre site Web à l’aide d’un client FTP ou de l’application de gestion de fichiers dans votre panneau de contrôle d’hébergement. Dans le dossier racine de votre site Web, vous devez localiser le fichier .htaccess et le modifier.
Cela ouvrira le fichier dans un éditeur de texte brut. Au bas du fichier, vous pouvez ajouter le code pour ajouter des en-têtes de sécurité HTTPS à votre site WordPress.
Vous pouvez utiliser l’exemple de code suivant comme point de départ, il définit les en-têtes de sécurité HTTPs les plus couramment utilisés avec des paramètres optimaux :
<ifModule mod_headers.c> Header set Strict-Transport-Security "max-age=31536000" env=HTTPS Header set X-XSS-Protection "1; mode=block" Header set X-Content-Type-Options nosniff Header set X-Frame-Options DENY Header set Referrer-Policy: no-referrer-when-downgrade </ifModule>
N’oubliez pas d’enregistrer vos modifications et de visiter votre site Web pour vous assurer que tout fonctionne comme prévu.
Noter: Des en-têtes incorrects ou des conflits dans le fichier .htaccess peuvent déclencher une erreur de serveur interne 500 sur la plupart des hébergeurs Web.
4. Ajout d’en-têtes de sécurité HTTP dans WordPress à l’aide du plugin
Cette méthode est un peu moins efficace car elle s’appuie sur un plugin WordPress pour modifier les en-têtes. Cependant, c’est aussi le moyen le plus simple d’ajouter des en-têtes de sécurité HTTP à votre site Web WordPress.
Tout d’abord, vous devez installer et activer le Redirection brancher. Pour plus de détails, consultez notre guide étape par étape sur la façon d’installer un plugin WordPress.
Lors de l’activation, le plugin affichera un assistant de configuration que vous pouvez simplement suivre pour configurer le plugin. Après cela, allez à Outils » Redirection et passez à l’onglet ‘Site’.
Ensuite, vous devez faire défiler vers le bas de la page jusqu’à la section En-têtes HTTP et cliquer sur le bouton « Ajouter un en-tête ». Dans le menu déroulant, vous devez sélectionner l’option « Ajouter des préréglages de sécurité ».
Après cela, vous devrez cliquer à nouveau dessus pour ajouter ces options. Maintenant, vous verrez une liste prédéfinie d’en-têtes de sécurité HTTP apparaître dans le tableau.
Ces en-têtes sont optimisés pour la sécurité, vous pouvez les consulter et les modifier si nécessaire. Une fois que vous avez terminé, n’oubliez pas de cliquer sur le bouton Mettre à jour pour enregistrer vos modifications.
Vous pouvez maintenant visiter votre site Web pour vous assurer que tout fonctionne bien.
Comment vérifier les en-têtes de sécurité HTTP pour un site Web
Maintenant que vous avez ajouté des en-têtes de sécurité HTTP à votre site Web. Vous pouvez tester votre configuration à l’aide du logiciel gratuit En-têtes de sécurité outil. Entrez simplement l’URL de votre site Web et cliquez sur le bouton Scan.
Il vérifiera ensuite les en-têtes de sécurité HTTP de votre site Web et vous montrera un rapport. L’outil générerait une étiquette de note que vous pouvez ignorer, car la plupart des sites Web obtiendraient au mieux un score B ou C sans affecter l’expérience utilisateur.
Il vous montrera quels en-têtes de sécurité HTTP sont envoyés par votre site Web et quels en-têtes de sécurité ne sont pas inclus. Si les en-têtes de sécurité que vous vouliez définir y sont répertoriés, alors vous avez terminé.
C’est tout, nous espérons que cet article vous a aidé à apprendre comment ajouter des en-têtes de sécurité HTTP dans WordPress. Vous pouvez également consulter notre guide de sécurité WordPress complet et notre sélection d’experts des meilleurs plugins WordPress pour les sites Web d’entreprise.