Tutoriels WordPress de confiance, quand vous en avez le plus besoin.
Guide du débutant pour WordPress
WPB Cup
25 millions+
Sites web utilisant nos plugins
16+
Années d'expérience WordPress
3000+
Tutoriels WordPress par des experts

Comment restreindre l'accès administrateur WordPress par adresse IP

La plupart des gens ne pensent pas à sécuriser leur zone d'administration WordPress avant qu'il ne soit trop tard. Nous avons aidé des utilisateurs à se remettre d'attaques où la zone d'administration WordPress était laissée grande ouverte.

C'est pourquoi nous recommandons de restreindre l'accès à la zone d'administration par IP. C'est une technique que nous avons utilisée sur des sites clients qui n'ont besoin que d'une ou deux personnes se connectant depuis des réseaux connus.

Dans ce tutoriel, nous vous montrerons comment bloquer l'accès à l'administration WordPress en modifiant rapidement le fichier .htaccess. C'est un moyen simple mais très efficace de protéger votre site WordPress contre les menaces courantes.

Comment restreindre l'accès administrateur WordPress par adresse IP

Pourquoi restreindre l'accès à l'administration WordPress par adresse IP ?

Si vous gérez un site WordPress, vous devez prendre la sécurité de votre site au sérieux. Bien que le logiciel de base de WordPress soit très sécurisé, vous pouvez faire plus pour vous protéger contre les pirates et les attaques par force brute.

Les pirates peuvent faire tomber votre site, ainsi que nuire à vos revenus et à votre réputation. Ils peuvent voler des données ou même distribuer des logiciels malveillants à vos visiteurs et faire mettre votre domaine sur liste noire par Google et d'autres.

Une façon intelligente de bloquer les pirates et d'améliorer la sécurité de WordPress est de protéger votre zone d'administration WordPress contre les accès non autorisés.

Si vous seul ou quelques utilisateurs de confiance avez besoin d'accéder à la zone d'administration, un bon moyen d'y parvenir est de limiter l'accès à wp-admin et à la page de connexion WordPress aux adresses IP de votre équipe.

Chaque membre de l'équipe se connectera à votre site WordPress en utilisant une adresse IP spécifique pour chaque emplacement. Si vous bloquez l'accès à toutes les autres adresses IP, un pirate ne pourra pas accéder à votre site Web même s'il a découvert votre nom d'utilisateur et votre mot de passe.

Au lieu de cela, ils verront le message d'erreur : « Interdit. Vous n'avez pas la permission d'accéder à cette ressource. »

Examinons comment restreindre l'accès à l'administration WordPress par adresse IP.

Comment restreindre l'accès administrateur WordPress par adresse IP

La première chose à faire est de dresser une liste des adresses IP utilisées par tous les membres de votre équipe qui ont besoin d'accéder à la zone d'administration de WordPress.

Vous devez demander à vos membres d'équipe de vous envoyer leurs adresses IP depuis les endroits où ils travaillent habituellement. Si quelqu'un travaille depuis plusieurs endroits, vous devrez collecter l'adresse IP pour chacun d'eux.

Vous devrez également ajouter votre adresse IP à la liste.

Comment trouver votre adresse IP ?

Le moyen le plus simple de trouver votre adresse IP est de visiter un site comme SupportAlly ou WhatisMyIPAddress.com.

Trouvez votre adresse IP

Ces sites Web vous afficheront votre adresse IP, que vous pourrez ensuite ajouter à votre liste. Vous pouvez également demander à vos membres d'équipe de visiter ces sites pour trouver leur adresse IP et vous la renvoyer.

Une fois que vous avez dressé votre liste, vous pouvez passer à la limitation de l'accès par adresses IP. Nous vous montrerons deux approches afin que vous puissiez choisir celle qui vous convient le mieux.

🚨 Note importante : Dans les sections suivantes, nous vous montrerons comment modifier des fichiers importants pour restreindre l'accès administrateur. Cela peut être risqué, même pour les utilisateurs avancés, car la moindre erreur peut faire planter votre site ou affecter sa fonctionnalité. C'est pourquoi nous recommandons toujours de créer une sauvegarde au préalable.

1. Restreindre l'accès par adresse IP à l'aide du fichier .htaccess (recommandé)

Pour cette méthode, nous utiliserons le fichier .htaccess. Il s'agit d'un fichier de configuration au niveau du serveur que vous pouvez modifier pour configurer différentes choses.

Il s'exécute avant même le chargement de votre site WordPress, c'est pourquoi l'ajout d'instructions de sécurité vous offre une meilleure protection.

Vous devrez utiliser un client FTP ou le gestionnaire de fichiers de votre hébergeur. Si vous n'avez jamais utilisé FTP auparavant, vous voudrez peut-être consulter notre guide sur comment utiliser FTP pour téléverser des fichiers vers WordPress.

Vous devrez utiliser le logiciel pour naviguer jusqu'au dossier /wp-admin/ de votre site web. Une fois sur place, recherchez le fichier .htaccess. Il s'agit d'un fichier caché, donc si vous ne le voyez pas, vous devrez peut-être activer l'option d'affichage des fichiers cachés dans votre logiciel.

Accédez à wp-admin et localisez .htaccess

Si ce fichier n'existe pas dans le dossier, vous devrez créer un nouveau fichier et l'enregistrer sous le nom .htaccess dans votre dossier /wp-admin/.

Attention ⚠️ : Ne modifiez pas le fichier .htaccess de votre répertoire racine, sinon vous bloquerez l'accès des visiteurs à la partie publique de votre site web ! Assurez-vous de modifier /wp-admin/.htaccess.

Vous devriez d'abord télécharger une copie du fichier sur votre ordinateur comme sauvegarde.

Une fois que vous avez fait cela, vous devrez modifier .htaccess et coller le code suivant dans le fichier :

AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName "WordPress Admin Access Control"
AuthType Basic
<Limit GET>
order deny,allow
deny from all
# whitelist Syed's IP address
allow from xx.xx.xx.xxx
# whitelist David's IP address
allow from xx.xx.xx.xxx
# whitelist Amanda's IP address
allow from xx.xx.xx.xxx
# whitelist Muhammad's IP address
allow from xx.xx.xx.xxx
# whitelist Work IP address
allow from xx.xx.xx.xxx
</LIMIT>

Allez-y et modifiez le fichier pour qu'il corresponde aux noms de vos propres membres d'équipe, puis collez les adresses IP que vous avez collectées précédemment pour remplacer là où il est indiqué xx.xx.xx.xxx.

Une fois que vous aurez enregistré le fichier, seules ces adresses IP pourront accéder à l'administration WordPress.

N'oubliez pas que si votre adresse IP change ou si vous essayez d'accéder à votre site web depuis un nouvel emplacement, vous serez bloqué hors de votre zone d'administration WordPress. Vous devrez ajouter votre nouvelle adresse IP au fichier /wp-admin/.htaccess .

2. Restreindre l'accès à l'aide de wp-config.php (méthode alternative)

Si votre serveur ne prend pas en charge les règles .htaccess ou si vous exécutez WordPress sur un serveur autre qu'Apache, comme NGINX ou LiteSpeed, l'utilisation du fichier wp-config.php est une bonne alternative.

La modification de wp-config.php peut être plus sûre que la modification de .htaccess car elle est moins susceptible de causer des erreurs au niveau du serveur et est facile à annuler si nécessaire. Cela dit, vous devrez toujours apporter des modifications avec soin, car même des erreurs mineures peuvent faire planter votre site.

Le fichier wp-config.php se charge tôt dans le processus de démarrage de WordPress, ce qui en fait un endroit sûr pour appliquer des restrictions. Il est particulièrement utile pour les développeurs ou les utilisateurs avancés qui gèrent des sites sur différents environnements de serveur.

Pour utiliser cette méthode, ouvrez votre fichier wp-config.php à l'aide d'un client FTP ou du gestionnaire de fichiers de votre panneau de contrôle d'hébergement. Ensuite, juste avant la ligne qui dit /* C'est tout, arrêtez d'éditer ! Bon blogging. */, ajoutez le code suivant :

if (strpos($_SERVER['REQUEST_URI'], '/wp-admin') !== false || 
    strpos($_SERVER['REQUEST_URI'], '/wp-login.php') !== false) {
    if ($_SERVER['REMOTE_ADDR'] !== '123.456.78.90') {
        header('HTTP/1.0 403 Forbidden');
        exit;
    }
}

Remplacez 123.456.78.90 par votre adresse IP actuelle. Ce code bloquera tout accès à votre administration et à vos pages de connexion WordPress, sauf depuis votre IP autorisée.

Ajout de plusieurs adresses IP :

Pour ajouter d'autres membres de l'équipe, vous devrez utiliser un code différent. Dans ce code, vous utiliserez un tableau d'adresses IP pour différents membres de l'équipe séparées par des virgules. Comme ceci :

$allowed_ips = array('123.456.789.000', '987.654.321.000', '200.200.255.168'); // Add more IPs as necessary
if ( !in_array($_SERVER['REMOTE_ADDR'], $allowed_ips) ) {
    wp_die('Unauthorized access. Your IP address is not permitted.');
}

Attention⚠️ : Si votre adresse IP change souvent ou si vous travaillez depuis plusieurs réseaux, cette méthode pourrait vous bloquer. Faites toujours une sauvegarde avant de modifier wp-config.php.

Gestion des adresses IP dynamiques ou de plusieurs membres d'équipe

Si votre adresse IP change souvent ou si votre équipe travaille depuis différents réseaux, les restrictions basées sur l'IP dans .htaccess ou wp-config.php peuvent ne pas être pratiques. Ces méthodes fonctionnent mieux lorsque l'accès est limité à une IP ou un emplacement fixe.

Pour une sécurité plus flexible, vous pouvez utiliser les approches alternatives listées ci-dessous :

1. Ajouter l'authentification à deux facteurs (2FA)

L'ajout de l'authentification à deux facteurs signifie que les utilisateurs doivent saisir à la fois leur mot de passe et un code unique de leur téléphone pour se connecter. Cela empêche les attaquants d'accéder à votre site même s'ils connaissent votre mot de passe.

Pour en savoir plus, consultez notre guide étape par étape sur comment ajouter l'authentification à deux facteurs dans WordPress.

Les utilisateurs doivent saisir un code d'authentification avant de se connecter

2. Protéger votre dossier d'administration par mot de passe

Cette approche ajoute une couche de sécurité supplémentaire avant même que les utilisateurs n'atteignent l'écran de connexion WordPress. Lorsque quelqu'un essaie de visiter /wp-admin/, il devra d'abord entrer un nom d'utilisateur et un mot de passe au niveau du serveur définis par vous.

Zone d'administration WordPress protégée par mot de passe

Cela permet de bloquer les bots et les attaquants qui tentent de deviner vos identifiants de connexion WordPress. Pour plus de détails, consultez notre tutoriel sur comment protéger par mot de passe votre dossier d'administration WordPress.

Foire aux questions

Que se passe-t-il si mon adresse IP change ?

Si vous utilisez des restrictions d'IP dans .htaccess ou wp-config.php et que votre IP change, vous serez bloqué hors de votre zone d'administration. Pour retrouver l'accès, vous devrez mettre à jour l'adresse IP autorisée via FTP ou votre panneau de contrôle d'hébergement.

Puis-je autoriser l'accès à partir de plusieurs adresses IP ?

Oui. Vous pouvez lister plusieurs adresses IP dans vos règles .htaccess ou wp-config.php. Chacune doit être ajoutée comme une ligne Allow from distincte ou une condition if, selon la méthode que vous utilisez.

Et si j'utilise un point d'accès mobile ou un VPN ?

Les points d'accès mobiles et les VPN utilisent souvent des IP dynamiques, qui peuvent changer fréquemment. Dans ce cas, nous recommandons d'activer l'authentification à deux facteurs ou de protéger par mot de passe votre dossier d'administration pour une protection plus flexible.

Plus de conseils de sécurité WordPress

Restreindre l'accès à votre zone d'administration est une bonne initiative, mais ce n'est qu'une partie de l'ensemble. Voici d'autres tutoriels utiles pour renforcer la sécurité de votre site et en apprendre davantage sur les fonctionnalités de .htaccess.

Nous espérons que ce tutoriel vous a aidé à apprendre comment restreindre l'accès à l'administration WordPress par adresse IP. Vous voudrez peut-être aussi consulter notre tutoriel WordPress sur comment limiter les auteurs à leurs propres articles dans l'administration WordPress, ou que faire lorsque vous êtes bloqué hors de l'administration 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.

Avis : Notre contenu est financé par nos lecteurs. Cela signifie que si vous cliquez sur certains de nos liens, nous pouvons percevoir une commission. Voir comment WPBeginner est financé, pourquoi c'est important et comment vous pouvez nous soutenir. Voici notre processus éditorial.

La boîte à outils WordPress ultime

Accédez GRATUITEMENT à notre boîte à outils - une collection de produits et de ressources liés à WordPress que tout professionnel devrait posséder !

Interactions des lecteurs

48 CommentsLeave a Reply

  1. c'est utile mais je veux juste savoir sur l'adresse IP dynamique et l'adresse IP statique pour un site WordPress, quelle est la méthode préférée pour définir l'adresse IP si WordPress est géré sur un réseau domestique la plupart du temps ? Et si et quand j'utilise un plugin de sécurité, je vois l'adresse IP changer ?

    • Si vous voulez dire que vous gérez votre site depuis un réseau domestique, vous utiliseriez l'un des nombreux sites pour trouver votre adresse IP publique afin de trouver l'IP à partir de laquelle votre site devrait vous voir accéder.

      Nous avons plus d'informations sur les adresses IP sur notre page ci-dessous !
      https://www.wpbeginner.com/glossary/ip-address/

      Admin

  2. Est-il possible d'autoriser l'accès à la zone d'administration à partir d'une plage de réseaux entière en utilisant le fichier htaccess ? Je veux dire, pas seulement à partir d'adresses IP individuelles, mais à partir de toute la plage d'un réseau. Ce serait compliqué pour moi de lister toutes les adresses IP, et ce serait beaucoup plus facile pour moi de configurer tout le réseau, mais je ne suis pas sûr si c'est possible avec htaccess.

    • Si toutes les adresses IP sont sur un seul réseau, vous pouvez utiliser une adresse IP partielle, mais nous recommandons toujours une adresse IP complète pour chaque utilisateur.

      Admin

      • Merci de votre confirmation et de vos conseils. Il y aura plusieurs adresses IP impliquées, donc je ne suis pas sûr si la maintenance deviendra compliquée, mais néanmoins, j'apprécie votre recommandation et j'y réfléchirai sérieusement car je crois que votre avis est justifié. Comme vous pouvez le constater, il est parfois bon de consulter des professionnels.

    • Vous devrez configurer votre FTP ou votre gestionnaire de fichiers pour afficher les fichiers cachés si vous ne le voyez pas.

      Admin

    • Il existe plusieurs méthodes pour trouver votre IP, l'une des plus simples consiste à utiliser un site comme supportally.com

      Admin

  3. Vous devez activer le module authz_groupfile « sudo a2enmod authz_groupfile » et redémarrer apache

  4. Ça ne marche pas pour moi. Le code restreint l'accès aux administrateurs même si j'ai mis l'IP dans une liste blanche.

  5. Après cette ligne, vous devez ajouter une condition pour autoriser les fichiers php afin d'éviter les conflits :

    allow from all

  6. J'ai essayé la méthode de protection par mot de passe .htaccess.

    Ça fonctionne, mais j'ai essayé sur un site avec Woocommerce, et ensuite mes clients n'arrivaient plus à se connecter.

    Je dis juste ça parce qu'il semble que personne n'ait mentionné que ça ne fonctionne pas avec les sites où les clients doivent se connecter !

  7. Bonjour, merci pour le tutoriel. Malheureusement, je n'ai pas réussi à faire fonctionner correctement ce fichier .htaccess car il refuse l'accès à la seule adresse IP que j'ai incluse, la mienne… Je suis certain d'avoir copié votre code exactement et j'ai tapé mon IP correctement. Le fichier .htaccess a été enregistré sous : /wp-admin/.htaccess

    Est-ce que je rate quelque chose ? Merci

    • Salut Miguel,

      Au lieu de votre adresse IP, essayez d'ajouter 127.0.0.1

      C'est l'adresse IP de votre localhost. Si l'ajout de l'IP seule ne fonctionne pas, ajoutez la ligne suivante avant le code ci-dessus :

      Require local

      Admin

  8. Salut les gars,

    J'ai bloqué le wp-admin avec .htaccess comme mentionné dans cet article. Mais j'ai un problème, mon fichier admin-ajax.php est également restreint sur le site public.

    Mon thème wordpress utilise une grande partie de la fonctionnalité admin ajax et j'ai appliqué une limitation d'accès par IP sur le dossier wp-admin, donc il n'est pas accessible à toutes les IP.

    Quelqu'un a-t-il trouvé une solution à cela ? Si oui, veuillez partager.

    Merci d'avance
    Emaan

  9. Bonjour, cela semble vraiment utile. Peut-être pourriez-vous m'aider. Au lieu de mettre une IP en liste blanche, pouvons-nous autoriser l'accès à des pays spécifiques dans le fichier .htaccess ? J'espère que vous pourrez m'aider. Merci beaucoup.

  10. Bonjour, cela fonctionne. J'ai vérifié et je suis « interdit » de me connecter depuis tout autre ordinateur. Je ne peux même pas voir le panneau de connexion. Cependant, je reçois toujours environ 24 tentatives de connexion échouées par jour provenant de différentes adresses IP. Des idées sur la façon dont ils contournent cela ? Est-ce une sorte d'attaque par force brute ? Merci, Scott.

      • Merci. Votre site a été très utile. Si vous avez un moment, peut-être pourriez-vous répondre à une autre question. J'ai suivi vos tutoriels — et ils ont fonctionné. J'ai bloqué l'accès à mon dossier admin avec htaccess et ajouté un mot de passe par-dessus. J'ai testé et même si des personnes parvenaient à casser le mot de passe, ce qu'elles n'ont pas fait, elles n'auraient pas accès au dossier depuis une adresse IP autre que la mienne. Cependant, je reçois toujours environ 12 connexions échouées par jour. Des idées sur ce qui se passe et où aller pour y remédier ? J'ai été piraté une fois, mais j'ai nettoyé les fichiers de mon dossier de téléchargements.

  11. Et comment autoriser l'accès uniquement à l'administrateur de WordPress ? Quel code vais-je écrire sans aucune IP ? J'ai juste besoin de connaître une fonction générique qui récupère les informations relatives à l'administrateur. Parce que je dois restreindre les téléchargements de mon plugin par d'autres utilisateurs. Et quiconque utilise ce plugin, je dois obtenir ses informations d'administrateur pour restreindre le contenu des autres et n'autoriser que l'administrateur du site web.

  12. Merci beaucoup monsieur, j'ai testé cela sur mon système local et cela fonctionne très bien.

  13. J'ai essayé ceci (après avoir précédemment protégé par mot de passe mon répertoire wp-admin avec succès et corrigé l'erreur de redirection selon votre autre article), mais ensuite j'obtiens une fenêtre contextuelle me demandant un nom d'utilisateur et un mot de passe pour le « Contrôle d'accès à l'administration WordPress ». Quel nom d'utilisateur et quel mot de passe suis-je censé utiliser pour cette nouvelle fenêtre contextuelle ? Ni la connexion d'administration WordPress ni la connexion du répertoire wp-admin ne fonctionnent pour cela.
    Merci !

    • Oh, je crois que j'ai trouvé le problème ; cela semble fonctionner tant que je m'assure d'avoir le code ajouté tout au début.

  14. I have a big problem :(

    I did what you said about creating the .htaccess and putting in the code snippet. It didn’t work so I deleted the .htaccess file and now I can’t login to my dashboard! It’s just a white screen :( Please help!!!

    Merci

      • Tout ce que j'ai fait, c'est créer le fichier dans mon dossier wp-admin et quand ça n'a pas marché, je l'ai supprimé du dossier wp-admin. Je ne suis pas sûr de ce qui s'est passé, mais après un parcours fou et de nombreux essais à l'aveugle, j'ai pu corriger le problème en ajoutant au début de mon fichier login.php. Je ne sais toujours pas ce qui a mal tourné ni pourquoi ce que j'ai fait l'a corrigé... mais au moins c'est corrigé. J'essaierai peut-être à nouveau quand je me sentirai courageux.

  15. Salut WPB, je ne pense pas que cela fonctionnera au Pakistan car chaque fois que nous réinitialisons ou éteignons notre modem DSL, l'adresse IP change automatiquement. Si vous avez d'autres conseils, merci de me répondre.
    Merci

  16. Cela peut-il être fait sur les sites https ? Je n'arrive pas à le faire fonctionner.

  17. salut, comment faire un .htaccess avec une ip dynamique (ip non statique)
    mon ip change toujours xxx.xxx.xxx.12 xxx.xxx.xxx.453 xxx.xxx.xxx.076

    s'il vous plaît aidez-moi…

      • Vous pouvez renforcer votre installation WordPress via une liste blanche .htaccess même si vous avez une adresse IP dynamique. Vous pouvez mettre en liste blanche une plage d'adresses IP en utilisant une plage /24 ou /16. Bien que cela permette plus d'accès que si vous connaissiez toujours l'IP que vous souhaitiez autoriser, cela interdit toujours l'accès à la quasi-totalité d'Internet.

        Ajoutez simplement /24 à la fin de la ligne allow from pour autoriser tout le sous-réseau de classe C (256 IP), ou ajoutez /16 pour autoriser toute la plage de 65 536. c'est-à-dire

        allow from xxx.xxx.xxx.0/24

        autorisera l'accès aux adresses IP de xxx.xxx.xxx.0 – xxx.xxx.xxx.255. et

        allow from xxx.xxx.0.0/16

        autorisera l'accès à partir des adresses IP de xxx.xxx.0.0 – xxx.xxx.255.255

  18. Vous dites de ne pas modifier le fichier .htaccess du site racine… pourquoi ? Parce que vous voulez juste limiter l'accès au dossier /wp-admin ?

    Donc… si je voulais avoir un site WordPress hébergé en externe mais utilisé comme une ressource interne à l'entreprise, de sorte que seules les personnes utilisant les adresses IP de notre entreprise puissent y accéder… si je modifiais le fichier .htaccess du dossier racine pour n'autoriser que les adresses IP de notre domaine… cela fonctionnerait de la même manière que votre correction pour /wp-admin, mais pour l'ensemble du site, n'est-ce pas ?

    • Oui Kyle, la raison pour laquelle nous avons dit de ne pas mettre ce code dans le fichier racine est qu'il limiterait alors l'accès à votre site uniquement à ces IP également. Mais si vous essayez de créer un site auquel seul le personnel de votre entreprise peut accéder depuis le travail, alors vous voudriez placer le fichier .htaccess dans le dossier racine.

      Admin

    • Puis-je limiter l'accès en fonction d'autres critères ? Par exemple, j'ai besoin que seul mon ordinateur portable accède à un dossier particulier. Je pourrais y accéder de n'importe où, il serait donc difficile de spécifier une adresse IP car mon accès Internet serait basé sur DHCP. Existe-t-il un identifiant unique pour chaque machine ou quelque chose de ce genre qui puisse être utilisé comme critère ?

Laisser un commentaire

Merci d'avoir choisi de laisser un commentaire. N'oubliez pas que tous les commentaires sont modérés conformément à notre politique de commentaires, et votre adresse e-mail ne sera PAS publiée. Veuillez NE PAS utiliser de mots-clés dans le champ du nom. Ayons une conversation personnelle et significative.