Souhaitez-vous limiter l'accès par adresse IP à votre fichier wp-login.php dans WordPress ?
La page de connexion WordPress est souvent la cible d'attaques DDoS et de pirates informatiques pour accéder à votre site web. Limiter l'accès à des adresses IP spécifiques peut bloquer efficacement de telles tentatives.
Dans cet article, nous vous montrerons comment limiter facilement l'accès par IP à votre fichier wp-login.php dans WordPress.

Pourquoi limiter l'accès à wp-login.php par adresse IP ?
La page de connexion d'un site web WordPress (généralement, wp-login.php), est l'endroit où les utilisateurs se connectent à votre site.
En tant que propriétaire de site web, elle vous donne accès à la zone d'administration WordPress où vous pouvez effectuer la maintenance du site, rédiger du contenu et gérer votre site web.
Cependant, les attaques par force brute courantes sur Internet ciblent la page wp-login.php pour accéder aux sites web. Même s'ils échouent à y accéder, ils peuvent toujours ralentir votre site web, voire le faire planter.
Une façon de gérer cette situation est de bloquer les adresses IP d'où proviennent les attaques (nous en parlerons plus tard dans l'article).
Une adresse IP est comme un numéro de téléphone qui identifie un ordinateur spécifique sur Internet. Les pirates peuvent utiliser des logiciels pour changer leurs adresses IP.
Cependant, les attaques plus sophistiquées utilisent un plus grand nombre d'adresses IP et il peut ne pas être possible de toutes les bloquer.
Dans ce cas, vous pouvez limiter l'accès à des adresses IP spécifiques utilisées par vous-même et par d'autres utilisateurs sur votre site web.
Cela dit, examinons comment limiter facilement l'accès au fichier wp-login.php par des adresses IP spécifiques en utilisant 3 méthodes différentes, y compris un pare-feu de sécurité cloud.
1. Limiter l'accès à la page de connexion WordPress par adresse IP
Pour cette méthode, vous devrez ajouter du code au fichier .htaccess.
Le fichier .htaccess est un fichier de configuration spécial du serveur qui se trouve dans le dossier racine de votre site web et auquel vous pouvez accéder en utilisant FTP ou l'application Gestionnaire de fichiers sur votre panneau de contrôle d'hébergement WordPress.
Connectez-vous simplement à votre site WordPress à l'aide d'un client FTP et modifiez votre fichier .htaccess en ajoutant le code suivant en haut.
<Files wp-login.php>
order deny,allow
Deny from all
# whitelist Your own IP address
allow from xx.xxx.xx.xx
#whitelist some other user's IP Address
allow from xx.xxx.xx.xx
</Files>
N'oubliez pas de remplacer les XX par vos propres adresses IP. Vous pouvez facilement trouver votre adresse IP en visitant la page SupportAlly.

Si d'autres utilisateurs doivent également se connecter à votre site web, vous pouvez leur demander de fournir leurs adresses IP. Vous pouvez ensuite les ajouter également au fichier .htaccess.
Voici un autre exemple du code mentionné ci-dessus.
<Files wp-login.php>
order deny,allow
Deny from all
# Whitelist John as website administrator
allow from 35.199.128.0
#Whitelist Tina as Editor
allow from 108.59.80.0
# Whitelist Ali as moderator
allow from 216.239.32.0
</Files>
Désormais, les utilisateurs ayant ces adresses IP pourront afficher le fichier wp-login.php et se connecter à votre site web. Les autres utilisateurs verront le message d'erreur suivant :

2. Bloquer des adresses IP spécifiques d'accéder à votre site web
Cette méthode est totalement à l'opposé de la première méthode.
Au lieu de limiter l'accès à la page de connexion WordPress à des adresses IP spécifiques, vous pourrez bloquer les adresses IP utilisées pour attaquer votre site web.
Cette méthode est particulièrement utile pour les sites web de membres WordPress, les boutiques en ligne, ou d'autres sites web où plusieurs utilisateurs doivent se connecter pour accéder à leurs comptes.
Le désavantage de cette méthode est que les pirates peuvent changer leurs adresses IP et continuer à attaquer votre site web.
Heureusement, bon nombre des tentatives de piratage courantes de WordPress utilisent un ensemble fixe d'adresses IP, ce qui rend cette méthode efficace dans la plupart des cas.
Étape 1 : Trouver les adresses IP fautives que vous souhaitez bloquer
Tout d'abord, vous devez trouver les adresses IP utilisées pour attaquer votre site Web.
Le moyen le plus simple de trouver les adresses IP fautives est de consulter les journaux de votre serveur. Accédez simplement à votre panneau de contrôle d'hébergement et cliquez sur l'icône des journaux « Accès bruts ».

Sur la page suivante, cliquez sur votre nom de domaine pour télécharger les journaux d'accès. Cela téléchargera un fichier avec l'extension gz.
Vous devrez extraire le fichier et l'ouvrir avec un éditeur de texte comme le Bloc-notes ou TextEdit.
À partir de là, vous trouverez les adresses IP qui accèdent de manière répétée à la page wp-login.php.

Copiez et collez les adresses IP dans un fichier texte séparé sur votre ordinateur.
Étape 2. Blocage des adresses IP suspectes
Ensuite, vous devez vous connecter à votre panneau de contrôle d'hébergement WordPress et cliquer sur l'icône « Bloqueur d'IP ».

Sur l'écran suivant, copiez et collez simplement les adresses IP que vous souhaitez bloquer et cliquez sur le bouton « Ajouter ».

Répétez le processus pour bloquer toute autre adresse IP suspecte que vous souhaitez.
C'est tout ! Vous avez bloqué avec succès les adresses IP suspectes qui accèdent complètement à votre site Web.
Plus tard, si vous avez besoin de débloquer l'une de ces adresses IP, vous pouvez simplement le faire depuis l'application de blocage d'IP.

3. Protection de la connexion WordPress avec un pare-feu de site Web
En tant qu'administrateur de site Web, vous ne voudrez peut-être pas passer trop de temps à gérer les adresses IP qui peuvent accéder à votre page de connexion WordPress.
La façon la plus simple de protéger vos pages de connexion WordPress est d'utiliser Sucuri. C'est le meilleur pare-feu WordPress qui accompagne un plugin de sécurité WordPress complet.
Le pare-feu de site Web de Sucuri filtre automatiquement les adresses IP suspectes qui tentent d'accéder aux fichiers essentiels du cœur de WordPress, sans qu'elles n'atteignent jamais votre site Web.

Cette méthode améliore également les performances et la vitesse de votre WordPress car elle bloque les activités suspectes qui ralentissent votre serveur.
De plus, Sucuri est également doté d'un réseau CDN intégré. Il servirait automatiquement des fichiers statiques tels que des images, des feuilles de style et du JavaScript à partir d'un serveur plus proche de vos utilisateurs.
Vous pouvez facilement ajouter à la liste blanche les adresses IP des utilisateurs s'ils ne parviennent pas à accéder aux pages de connexion WordPress.

Alternatives : MalCare ou Cloudflare Free CDN
Nous espérons que cet article vous a aidé à apprendre comment limiter l'accès par adresse IP à votre fichier wp-login.php. Vous pourriez également vouloir consulter notre guide complet de la sécurité WordPress ou consulter ces conseils supplémentaires pour protéger la zone d'administration de WordPress.
Si cet article vous a plu, abonnez-vous à notre chaîne YouTube pour des tutoriels vidéo WordPress. Vous pouvez également nous retrouver sur Twitter et Facebook.


Olaf
Tout dans WordPress repose sur la sécurité du site web. La sous-estimer peut entraîner de graves problèmes au fil du temps. Ces directives fonctionnent parfaitement, et la mise en œuvre de ce type de sécurité ne prend qu'un instant. J'apprécie que vous soyez méticuleux, non seulement en ajoutant les bonnes directives à .htaccess, mais aussi en apprenant aux utilisateurs dès le départ à commenter correctement les entrées ajoutées manuellement. Cela aide toute personne qui hérite du site à comprendre ces directives. Peu de tutoriels sont aussi méticuleux, prenant le temps d'assurer un bon commentaire dans .htaccess.
Jiří Vaněk
J'ai copié les directives sur le site web, ajusté les adresses IP et les ai placées dans le fichier .htaccess. Cela fonctionne parfaitement pour les deux adresses IP qui sont maintenant définies dans le .htaccess.
Av
concernant un site woocommerce, cette fonction est-elle utile ?
la connexion peut se faire depuis la page mon-compte.
Support WPBeginner
Si vous avez plusieurs utilisateurs qui se connectent à votre site pour quelque chose comme WooCommerce, alors ce ne serait pas quelque chose que vous utiliseriez. Ce serait normalement pour un site avec un nombre limité d'utilisateurs.
Admin
Michael Pepper
Merci pour l'article, utile !
Support WPBeginner
Glad our article was helpful
Admin
Mick
Pour une raison quelconque, lorsque j'utilise ceci, l'IP autorisée est également bloquée.
Une idée pourquoi ?
Support WPBeginner
Vous voudrez peut-être vous assurer que vous avez défini la bonne IP et si vous utilisez un VPN ou quelque chose de similaire, cela pourrait être la cause du problème.
Admin
Bahar Ali
J'ai utilisé le code ci-dessus et il s'applique d'une manière ou d'une autre à toutes les pages du site, par exemple ma page d'accueil affiche même 'interdit'.
Support WPBeginner
Vous voudrez d'abord vérifier auprès de votre fournisseur d'hébergement pour vous assurer qu'il n'y a pas de configuration conflictuelle de leur côté.
Admin
Unni Krishnan
Bien joué les gars,
Comme vous l'avez indiqué dans la dernière section, j'ai bien des IP dynamiques pour ma connexion mobile. Bien que j'aie mis mon IP haut débit sur liste blanche, je suis bloqué lorsque j'accède en déplacement.
Savez-vous si des plugins peuvent aider à résoudre ce problème ?
Unni Krishnan
De plus, de telles requêtes à wp-login.php sont redirigées vers la page d'accueil. Est-ce normal ?
FrancescoElzy
Hmm, il semble que votre blog ait mangé mon premier commentaire (il était super long), donc je suppose que je vais juste résumer ce que j'ai écrit et dire que j'apprécie vraiment votre blog. Je suis aussi un blogueur aspirant, mais je suis encore nouveau dans tout ça. Avez-vous des conseils utiles pour les nouveaux rédacteurs de blog ? J'apprécierais sincèrement.
Stéfano Willig
Nous avons rendu notre accès FTP accessible uniquement par certaines adresses IP.
Maintenant, je ne peux plus installer ou mettre à jour WordPress directement via WordPress...
Que puis-je faire ?
Jobbatam
Super conseils et ça marche pour moi.
Mais, puis-je rediriger wp-login vers une erreur 404 ?
Si oui, quel code dois-je ajouter au code ci-dessus ?
merci
MargaretMacnamar
Il est très simple de trouver n'importe quelle information sur Internet par rapport aux manuels, comme je l'ai trouvé ce post sur ce site.
EQHRaymond
Merci pour la fonction. Le post m'a beaucoup aidé
Rex Wickham
Si vous souhaitez ajouter plus d'une IP, vous pouvez le faire :
1. vous pouvez utiliser une IP partielle :
Autoriser à partir de 145.50.39
Cela autorisera les IP de 145.50.39.0 à 145.50.39.255
2. vous pouvez utiliser un masque de réseau ou un CIDR :
Autoriser à partir de 145.50.39.0/255.255.255.224
ou
Autoriser à partir de 145.50.39.0/27
Cela autorisera les IP de 145.50.39.0 à 145.50.39.31.
Julius Musembi
C'est une excellente solution de contournement.
David Swanson
J'ai ajouté le code à mon .htaccess mais lorsque mes utilisateurs se déconnectent, ils reçoivent une erreur 403.
Lorsqu'ils cliquent sur déconnexion, le lien est /wp-login.php?action=logout
Y a-t-il un moyen de corriger cela ?
Brijesh
Super astuce ! Mais j'ai un problème. Cela bloque la connexion admin pour les autres IP, mais si un utilisateur enregistré se déconnecte du site, le code le restreint également. Je veux dire que lorsque l'utilisateur clique sur se déconnecter, il reçoit un message d'interdiction. Comment résoudre ce problème ?
Rafaqat
Merci pour vos instructions rapides pour vous protéger contre les tentatives de connexion excessives et illégales. En fait, il existe un plugin gratuit « better wp security » qui peut gérer presque tous les problèmes de sécurité concernant les tentatives de connexion, le fichier wp.config, le fichier .htaccess et bien plus encore. Je pense qu'il faudrait essayer.
Kris
Pour contourner le problème de l'IP dynamique, vous pouvez faire référence à un htpasswd.
Baptiste Legrand
Merci pour ce super conseil ! Mais je suis un peu confus : dois-je coller cet extrait dans mon fichier .htacess racine, ou dans mon fichier wordpress/.htaccess ?
Cordialement (et au fait, j'ADORE wpbegginer.com, continuez votre bon travail !)
Personnel éditorial
Collez-le dans votre wordpress/.htaccess
Admin
Personnel éditorial
Avec des adresses IP dynamiques, cela peut être un problème. Vous pouvez activer la protection Apache, mais c'est un peu plus complexe. La ligne #whitelist sert juste à me faire savoir quelle IP correspond à quoi.
Admin
Steve Pringle
Vous devriez mentionner que les plugins (comme JetPack) peuvent avoir des problèmes lorsque vous limitez l'accès.