Hi Web, création de sites internet en Suisse
à Yverdon-les-Bains
Téléphone
078 914 86 22
E-mail
info@hiweb.ch

Limiter / autoriser l’accès à WordPress uniquement à certaine IP

Limiter / autoriser l'accès à WordPress uniquement à certaine IP

Pour  protéger son site des tentatives d’attaque (par la méthode Brute Force*) à l’administration de WordPress, découvrez ici danc ce petit tutoriel comment mettre en place une restriction par adresse IP.

Pour limiter les tentatives de Brute Force sur la page de connexion de site  WordPress, nous avons testé l’excellent plugin Limit Login Attempts. Ce plugin permet de sécuriser son site WordPress en luttant contre le Brute Force.

Pour aller encore plus loin et avoir une protection encore plus efficace,  il est possible de restreindre l’accès à la page de connexion par adresse IP. Cette alternative est à mon sens la plus sécurisée, mais par contre, elle a son désavantage: seul les ip autorisées auront le droit d’accéder à votre administration. Si vous voulez vous connecter depuis une autre ip hors la white liste, la connexion sera rejetée. Ne comptez pas travailler votre site depuis votre hôtel à Berlin.

Sur un serveur Apache, la mise en place de cette restriction se fait à partir du fichier .htaccess comme ci-dessous :

<Files wp-login.php>
    order deny,allow
    Deny from all

    allow from 77.177.13.135
    allow from 38.33.230.277
    allow from 80.110.10.128
</Files>

Dans cet exemple, toutes les adresses IP autorisées sont indiquées à l’aide d’un allow from. Toutes les autres IP seront automatiquement rejetées lorsqu’elles tenteront d’accéder à la page de connexion.

Pour ceux qui utilisent NGINX à la place d’Apache, il faut modifier le fichier de configuration en ajoutant le code suivant :

location ~ wp-login.php {
    allow 77.177.13.135;
    allow 38.33.230.277;
    allow 80.110.10.128;
    deny all;
 }

Attention, si vous utilisez PHP-FPM, vous devez ajouté quelques lignes supplémentaires pour que le code fonctionne correctement :

location ~ wp-login.php {
    fastcgi_buffers 8 256k;
    fastcgi_buffer_size 128k;
    fastcgi_intercept_errors on;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_pass unix:/dev/shm/php-fpm-www.sock;
    allow 77.177.13.135;
    allow 38.33.230.277;
    allow 880.110.10.128;
    deny all;
 }

Grâce à ces quelques lignes de code, vous n’aurez plus aucun problème de Brute Force sur la page de connexion. C’est un peu radical, mais à mon avis, c’est la solution la plus efficace pour lutter contre le robot.

 


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *