web-dev-qa-db-fra.com

Limiter l'accès à wp admin

J'essaie de limiter l'accès à wp_admin par adresse IP, mais il en reste quelques-uns qui passent. J'ai un fichier htaccess dans mon dossier wp_admin avec les éléments suivants:

# Block access to wp-admin.
order deny,allow
allow from x.x.x.x 
deny from all

J'ai testé la mise en œuvre en essayant d'accéder à la page de connexion à partir d'adresses IP ne figurant pas sur la liste et cela semble fonctionner. J'ai Wordfence installé et je continue à recevoir des notifications d'échec de tentative de connexion par les adresses IP qui ne figurent pas sur ma liste. Cette implémentation de sécurité bloque-t-elle également les robots? Je me demande comment se passe cette adresse IP/bot.

1
brandozz

IMHO ce n'est pas la meilleure méthode pour protéger votre WP Admin. Les adresses IP peuvent être usurpées. Cette méthode vous limite également à des adresses IP spécifiques, ce qui peut être gênant si vous souhaitez y accéder depuis un autre bureau/emplacement.

Je recommanderais soit une simple protection par mot de passe basée sur un serveur sur le répertoire wp-admin. Bien sûr, l’inconvénient est que vous devez vous rappeler le mot de passe ou utiliser un système de mot de passe centralisé basé sur le Web, très sécurisé, et vous rappeler un mot de passe pour tout.

Lisez ceci pour les instructions: http://www.wpbeginner.com/wp-tutorials/how-to-password-protect-your-wordpress-admin-wp-admin-directory/

La meilleure idée est l'authentification à 2 facteurs cependant. un mot de passe, puis un SMS sur votre téléphone ou un processus similaire en deux étapes.

Il n'y a pas une seule réponse pour tout le monde - mais je pense que dans la plupart des cas, il doit y avoir un équilibre entre praticité et sécurité renforcée.

Si vous voulez vraiment le fermer, deny all dans htaccess, puis SSH sur le serveur à chaque fois que vous souhaitez le modifier pour autoriser temporairement l'accès depuis l'adresse IP spécifique que vous utilisez et le restaurer une fois que vous avez terminé - vous pouvez le combiner. avec une authentification à 2 facteurs et je doute que quelque chose passe jamais.

Les attaques par force brute reposent souvent sur l'envoi de requêtes directes POST à votre fichier wp-login.php. Il est donc essentiel d'exiger que votre domaine soit le référent de toute demande POST.

Un autre moyen de protéger votre site WordPress consiste à inclure un lien vers votre identifiant de connexion et à autoriser uniquement les demandes d’identification de votre nom de domaine. (Remplacez example.com par votre domaine).

<IfModule mod_rewrite.c> 
RewriteEngine on 
RewriteCond %{REQUEST_METHOD} POST 
RewriteCond %{HTTP_REFERER} !^http://(.*)?example.com [NC] 
RewriteCond %{REQUEST_URI} ^(.*)?wp-login.php(.*)$ [OR] 
RewriteCond %{REQUEST_URI} ^(.*)?wp-admin$ 
RewriteRule ^(.*)$ - [F] 
</IfModule>

Et bloquer l'accès à xmlrpc.php peut réduire considérablement les attaques, mais certains services externes peuvent être affectés par ceci:

<Files ~ "xmlrpc.php"> 
Order allow,deny 
Deny from all 
</Files>
2
garth