Comment ajouter des en-têtes de sécurité HTTP dans WordPress

Publié: 2021-04-20

Lorsqu'il s'agit de concevoir un site Web WordPress, il n'y a rien de tel qu'être trop sûr. Chaque couche de sécurité est une garantie supplémentaire que vos informations et celles de vos clients resteront protégées. Mais, malheureusement, certaines mesures de sécurité peuvent vous gêner de différentes manières . Idéalement, vous souhaitez ajouter des fonctionnalités de sécurité supplémentaires à votre site Web sans compromettre l'expérience de l'utilisateur. Et, en fin de compte, c'est précisément ce que proposent les en-têtes de sécurité HTTP. Examinons donc de plus près comment ajouter des en-têtes de sécurité HTTP dans WordPress.

Comprendre les en-têtes de sécurité HTTP

L'utilisation principale des en-têtes de sécurité HTTP est un avertissement. Lorsqu'un visiteur accède à votre site Web, il reçoit une réponse d'en-tête HTTP de votre serveur . La réponse indiquera à leur navigateur s'il existe des codes d'erreur, un contrôle du cache et divers autres aspects. Si tout va bien, la réponse de l'en-tête émettra un statut HTTP 200. En recevant cela, le navigateur de l'utilisateur aura le feu vert pour charger votre site Web. Mais, s'il y a des difficultés, l'utilisateur obtiendra un en-tête différent. Des exemples courants sont 500 erreurs de serveur internes ou une erreur 404 introuvable.

404 écrit en blocs.
L'erreur 404 est assez courante.

Les en-têtes de sécurité HTTP sont un type d'en-tête que votre serveur peut envoyer. Ils servent à avertir les navigateurs des scripts intersites, des attaques par force brute, du détournement de clics et de diverses autres menaces de sécurité. Les types d'en-têtes de sécurité HTTP les plus courants sont :

  • HTTP Strict Transport Security (HSTS) – Cet en-tête informe le navigateur de l'utilisateur que votre site Web utilise HTTPS.
  • Protection X-XSS – Cet en-tête bloque les scripts intersites.
  • X-Frame-Options – Cet en-tête empêche le détournement de clic et les iframes inter-domaines.
  • X-Content-Type-Options – Cet en-tête bloque le reniflage de type mime.

Comme vous pouvez le constater, les en-têtes de sécurité peuvent jouer un rôle important dans la sécurité de votre site Web. Donc, avec cela à l'écart, voyons quelques façons d'incorporer des en-têtes de sécurité HTTP dans votre site Web.

Ajouter des en-têtes de sécurité HTTP dans WordPress

La meilleure façon de définir les en-têtes de sécurité HTTP est au niveau du serveur Web. Ce faisant, vous vous assurerez qu'ils se déclenchent au début d'une requête HTTP , et offrez donc le maximum de sécurité. Et vous n'aurez pas à vous soucier de le faire pour différentes pages de destination, car les en-têtes sont définis au niveau du serveur. L'autre option consiste à utiliser un pare-feu de site Web de niveau DSN. L'installation à ce niveau est donc généralement considérée comme plus facile, mais cela peut être problématique en ce qui concerne les mesures de sécurité. Néanmoins, nous allons passer en revue les deux méthodes et comment les appliquer.

Utiliser un plugin WordPress

Comme c'est le cas dans la plupart des cas concernant WordPress, l'utilisation d'un plugin est le moyen le plus simple de changer quelque chose. Heureusement, les en-têtes de sécurité HTTP ne font pas exception. La première chose à faire est d'installer le plugin Redirection. Une fois que vous l'avez installé et activé, vous verrez un assistant de configuration. Suivez simplement ses instructions pour le configurer. Cela fait, allez sur la page Outils -> Redirection et passez à l'onglet "Site". Là, vous devez faire défiler vers le bas et cliquer sur "Ajouter un en-tête". Dans le menu déroulant qui s'affiche, vous pouvez choisir l'option "Ajouter des préréglages de sécurité". Ce faisant, une liste d'en-têtes de sécurité HTTP s'affichera . Vous pouvez ensuite revoir et modifier les en-têtes (si nécessaire), et enfin les mettre en œuvre sur votre site Web. N'oubliez pas de cliquer sur le bouton "Mettre à jour" une fois que vous avez terminé.

Onglet Sécurité dans WordPress.
Bien que vous deviez ajouter des en-têtes de sécurité HTTP dans WordPress, sachez que vous aurez besoin d'autres plugins pour assurer la sécurité de votre site Web.

Utiliser .htaccess

Éloignons-nous maintenant des plugins ordinaires et explorons quelques méthodes un peu plus compliquées. La méthode suivante vous permettra de définir les en-têtes de sécurité HTTP au niveau du serveur. À savoir, ce que vous allez faire est de modifier le fichier .htaccess sur votre site Web . Le logiciel de serveur Web Apache utilise le plus souvent ce fichier pour la configuration du serveur. Pour le modifier, vous pouvez soit utiliser un client FTP, soit vous diriger vers le panneau de contrôle de l'hébergement et utiliser l'application de gestion de fichiers . Vous trouverez le fichier .htaccess dans le dossier racine de votre site Web. Une fois que vous l'avez fait, cliquez dessus avec le bouton droit de la souris et sélectionnez Modifier.

Cela ouvrira l'éditeur de texte. Dans celui-ci, vous devez faire défiler vers le bas et ajouter le code qui implémentera les en-têtes de sécurité HTTP. Il existe une certaine variété en ce qui concerne les en-têtes que vous souhaitez implémenter. Par conséquent, vous devriez creuser un peu plus afin de déterminer quels en-têtes vous conviennent le mieux . Le code suivant est un bon point de départ car il contient les en-têtes les plus couramment utilisés :


<ifModule mod_headers.c>
Jeu d'en-tête Strict-Transport-Security "max-age=31536000" env=HTTPS
Jeu d'en-tête X-XSS-Protection "1 ; mode=bloc"
Jeu d'en-tête X-Content-Type-Options nosniff
Jeu d'en-tête X-Frame-Options DENY
Ensemble d'en-tête Referrer-Policy : no-referrer-when-downgrade
</ifModule>


N'oubliez pas de sauvegarder vos modifications une fois que vous avez copié le code.

Un ordinateur portable connecté à des sites Web dans différents pays, montrant la nécessité d'ajouter des en-têtes de sécurité HTTP dans WordPress.
Les mesures de sécurité au niveau du serveur sont assez difficiles à battre.

Utiliser Cloudflare

Lorsqu'il s'agit de gérer un site Web, Cloudfare est un outil assez décent. En l'utilisant, vous disposerez d'un pare-feu de base, ce qui est plus que suffisant pour vous protéger des bots et des attaques de logiciels malveillants standard. Et vous aurez un service CDN. Malheureusement, il peut manquer un peu à sa version gratuite . Donc, si vous finissez par l'aimer, vous devrez peut-être opter pour un premium.

Une autre utilisation de Cloudfare est que vous pouvez ajouter des en-têtes de sécurité HTTP dans WordPress. Pour ce faire, vous devez d'abord l'installer et l'activer. Une fois que vous l'avez fait, rendez-vous sur la page SSL/TLS sous votre compte. Ensuite, vous devrez passer à l'onglet Certificats Edge. Vous devez maintenant faire défiler vers le bas et ouvrir la section HSTS (HTTP Strict Transport Security). Cliquez maintenant sur le bouton Activer HSTS. Ici, il vous sera demandé d'activer HTTPS sur votre blog WordPress. Une fois cela fait, vous aurez accès aux en-têtes de sécurité HTTP.