Security Blog
Security Blog
Posted By Gregory

Sécuriser WordPress avec WP Cerber et NGINX

En travaillant ensemble, ces deux éléments peuvent améliorer considérablement la défense de n'importe quel site.


English version: Hardening WordPress with WP Cerber and NGINX


NGINX est un serveur HTTP gratuit, open source et performant. WP Cerber est une extension de sécurité gratuite et open source qui protège les sites WordPress contre les intrusions et les pirates informatiques.

Comment sécuriser WordPress en utilisant conjointement WP Cerber et NGINX

Tout d'abord, vous devez configurer une URL de connexion personnalisée et cocher l'option « Bloquer l'accès direct à wp-login.php et renvoyer une erreur HTTP 404 (Page introuvable) » . Consultez les détails ici : Comment renommer wp-login.php . Pour des raisons de sécurité, ne configurez pas votre URL de connexion personnalisée sur « login » ou « wp-admin ».

Il faut ensuite bloquer l'accès au fichier wp-login.php dans le fichier de configuration NGINX. Par défaut, ce fichier se trouve dans le répertoire /etc/nginx, /usr/local/nginx/conf ou /usr/local/etc/nginx.

Ajoutez cette ligne à la section serveur du fichier de configuration NGINX de votre site :

 location /wp-login.php { return 404; }

Si vous n'utilisez pas XML RPC sur votre site, je vous recommande vivement d'ajouter également cette ligne :

 location /xmlrpc.php { return 404; }

Enfin, nous protégeons notre site et notre serveur contre les surcharges dues aux attaques d'attaquants ou aux tentatives automatisées de robots. Pour ce faire, utilisons la fonctionnalité de limitation de débit de NGINX. Cette limitation permet de réduire le nombre de requêtes entrantes au-delà d'un certain seuil.

Ouvrez le fichier de configuration principal nginx.conf et trouvez la section http . Ajoutez-y la ligne suivante :

 zone de requête limite $binaire_remote_addr zone=main:10m taux=60r/m;

Retournez ensuite à la section serveur de votre site et trouvez la ligne

 emplacement / {

Ajoutez cette ligne après les accolades ouvrantes :

 zone limit_req=main burst=10 nodelay;

Les modifications apportées au fichier de configuration ne seront prises en compte qu'après l'envoi de la commande de rechargement de la configuration à nginx ou son redémarrage. Pour charger la nouvelle configuration, exécutez la commande suivante sur votre serveur :

 rechargement du service nginx

Fait!

Désormais, vous et votre serveur backend (propulsé par Apache, par exemple) pouvez vous détendre. Ces quelques étapes simples vous permettent de nettoyer le trafic entrant des « requêtes incorrectes » et de libérer les ressources du serveur pour traiter les « requêtes correctes ».


I'm a team lead in Cerber Tech. I'm a software & database architect, WordPress - PHP - SQL - JavaScript developer. I started coding in 1993 on IBM System/370 (yeah, that was amazing days) and today software engineering at Cerber Tech is how I make my living. I've taught to have high standards for myself as well as using them in developing software solutions.

View Comments
There are currently no comments.