Plugin WordPress — ReportedIP Light
ReportedIP Light protège les connexions WordPress contre les attaques par force brute et par « password spraying ». Son fonctionnement est délibérément simplifié : un compteur de tentatives par adresse IP, un système de blocage progressif et une vérification communautaire en option. Pas de fonctionnalités superflues, pas de tableaux de bord, pas de ventes incitatives. Le plugin fonctionne immédiatement en mode Local Shield — aucune configuration n'est nécessaire.
Installation
Installer depuis WordPress.org
Dans votre interface d'administration WordPress, rendez-vous dans Plugins → Ajouter, recherchez «ReportedIP Light », puis cliquez sur Installer maintenant, puis sur Activer. Vous pouvez également télécharger le fichier ZIP depuis wordpress.reportedip et le mettre en ligne via Plugins → Ajouter → Télécharger un plugin.
Lancer l'assistant d'installation
L'assistant en quatre étapes se lance automatiquement lors de la première activation. Vous pouvez également le passer complètement : Hive Light est entièrement opérationnel dès son installation en mode Local Shield.
Restez informé
Les mises à jour sont diffusées via le canal standard de WordPress.org. Les nouvelles versions apparaissent dans le Tableau de bord → Mises à jour quelques heures après leur publication — aucune réinstallation manuelle n'est nécessaire, et aucun outil tiers de vérification des mises à jour n'est requis.
Assistant de configuration (4 étapes)
L'assistant s'exécute lors de la première activation et peut être relancé depuis les paramètres du plugin. Chaque étape est enregistrée immédiatement, ce qui vous permet de vous arrêter et de reprendre à tout moment.
| Étape | Ce qu'il configure |
|---|---|
| 1. Bienvenue | Présentation et lien vers la documentation. |
| 2. Mode de fonctionnement | Choisissez « Local Shield » (par défaut, aucun trafic sortant) ou « Community Network » avec une clé d'accès communautaire gratuite obtenue sur reportedip.de. |
| 3. Protection | Seuil de tentatives de connexion par adresse IP, fenêtre temporelle, stratégie de blocage fixe ou progressive, éditeur d'échelle. |
| 4. Terminé | Résumé et lien direct vers la page des paramètres. |
Modes de fonctionnement
Deux modes, entre lesquels on peut basculer à tout moment sans perdre les données relatives aux tentatives locales.
| Fonctionnalité | Bouclier local (par défaut) | Réseau communautaire |
|---|---|---|
| Compteur de tentatives de force brute par adresse IP | Oui | Oui |
| Augmentation progressive par paliers | Oui | Oui |
| Liste blanche manuelle | Oui | Oui |
| Vérification de la réputation de l'adresse IP sortante avant la connexion | Non | Oui |
| Rapport sur les adresses IP bloquées (tâche cron planifiée, toutes les 15 minutes) | Non | Oui |
| Une clé d'accès communautaire est requise | Non | Oui (gratuit sur reportedip.de) |
| Les données quittent votre serveur | Jamais | Seule l'adresse IP de l'attaquant, l'identifiant de catégorie (entier) et un nom d'utilisateur haché en SHA-256 (avec un sel) wp_salt()) |
Ce que vous obtenez — et ce que vous n'obtenez pas
Hive Light est volontairement allégé. Tout ce qui nécessite un relais payant, une licence multisite ou un processus de vente incitative se trouve dans la version complète sur GitHub.
| Capacité | Lumière de la ruche | Hive (Édition complète) |
|---|---|---|
| Surveillance des tentatives de connexion par force brute | Oui | Oui |
| Échelle de blocage progressive (5 min → 7 jours) | Oui | Oui |
| Liste blanche manuelle + déblocage par adresse IP | Oui | Oui |
| Recherche d'adresses IP et rapports (facultatif) | Oui (clé gratuite) | Oui (formules gratuites et payantes) |
| Page de bloc compatible avec les plugins de mise en cache (WP Rocket, W3TC, Super Cache, LiteSpeed) | Oui | Oui |
| Prise en charge des en-têtes Cloudflare / proxy inverse | Oui (en-tête « Trusted Proxy ») | Oui |
| Capteurs de spam dans les commentaires, XML-RPC et rafales REST | — | Oui |
| 404 / Détecteur de scanner avec chemins de honeypot | — | Oui |
| Bloc d'énumération des utilisateurs | — | Oui |
| Surveillance des mots de passe des applications | — | Oui |
| Détection des anomalies géographiques / ASN | — | Oui |
| Contrôle de la sécurité des mots de passe | — | Oui |
| Masquer l'URL de connexion | — | Oui |
| Authentification à deux facteurs (2FA) à quatre méthodes (TOTP / e-mail / SMS / WebAuthn) + codes de récupération + appareils de confiance | — | Oui |
| Audit de l'authentification à deux facteurs (2FA) et des abonnements/adhésions dans l'interface publique de WooCommerce | — | Oui (PRO+) |
| Multisite (activation réseau) | — | Oui |
| Service de messagerie et de relais SMS géré avec forfaits prépayés | — | Oui (PRO+) |
| Tarification par niveau (Gratuit / Contributeur / PRO / Business Entreprise) | — | Oui |
| Outils WP-CLI pour l'authentification à deux facteurs | — | Oui (Business) |
| Règles d'authentification à deux facteurs par rôle, limitation du nombre de tentatives de connexion, rapports de sécurité hebdomadaires | — | Oui |
Escalade par paliers
Hive Light est livré avec le même barème par défaut que l'édition complète : 5 min → 15 min → 30 min → 24 h → 48 h → 7 j. Après 30 jours sans incident, le compteur revient à l'étape 1. Les erreurs de saisie des administrateurs, les adresses CGNAT et les sorties de réseau mobile partagées sont rétablies en quelques minutes ; les attaquants persistants voient leur niveau d'alerte augmenter rapidement. L'échelle est modifiable dans l'onglet Protection, et un mode à durée fixe est disponible si vous préférez une durée de blocage unique.
Aperçu de la configuration
Tous les paramètres se trouvent dans ReportedIP Light → Paramètres. Voici les paramètres par défaut les plus importants :
| Contexte | Par défaut | Description |
|---|---|---|
operation_mode | Bouclier local | Local Shield ou réseau communautaire. Local Shield n'effectue aucune requête sortante. |
access_key | (vide) | Clé d'accès communautaire facultative fournie par reportedip.de. |
login_threshold / login_timeframe_minutes | 5 / 15 | Nombre de tentatives de connexion infructueuses par adresse IP avant le blocage automatique. |
block_duration_minutes | 1 440 (24 h) | Bloc de longueur fixe (utilisé lorsque l'échelle est désactivée). |
block_escalation_enabled + block_ladder_minutes | Le — 5, 15, 30, 1 440, 2 880, 10 080 | Échelle progressive (minutes par échelon). |
block_escalation_reset_days | 30 | Jours d'abstinence avant que le programme d'intervention ne reprenne à l'étape 1. |
trusted_proxy_header | (désactivé) | Régler sur CF-Connecting-IP derrière Cloudflare ou vers X-Forwarded-For derrière un autre proxy inverse fiable. N'activez cette option que si votre proxy réécrit de manière fiable l'en-tête à chaque requête. |
api_endpoint | https://reportedip.de/wp-json/reportedip/v2/ | Triable par reportedip_hive_api_endpoint. |
api_timeout | 2 s | Les requêtes sont traitées par défaut : la connexion se poursuit si l'API ne répond pas. |
queue_retention_days | 14 | Combien de temps les lignes du rapport sur les envois échoués sont-elles conservées avant d'être supprimées ? |
uninstall_drops_tables | Désactivé | Lorsque cette option est activée, la désinstallation supprime tout wp_reportedip_hive_* tableaux et options. |
Tables de base de données
Créé lors de l'activation, préfixé wp_reportedip_hive_ (préfixe pour un seul site — Hive Light ne prend pas en charge l'activation sur un réseau multisite). Quatre tables seulement :
attempts— Compteur par adresse IP / par type / par nom d'utilisateur haché, avec horodatage de la première et de la dernière occurrence.blocked— blocages actifs (manuel / automatique / basé sur la réputation), motif, type de blocage etblocked_until.whitelist— adresses IP ou plages CIDR approuvées ; date d'expiration facultative.api_queue— rapports en attente et ayant échoué sur reportedip.de ; nouvelle tentative par cron toutes les 15 minutes.
Ce qui n'est pas enregistré : les noms d'utilisateur, mots de passe, corps de requêtes, agents utilisateur, contenu des commentaires ou identifiants de domaine bruts. Les noms d'utilisateur sont stockés sous la forme sha256(username + wp_salt()) uniquement.
Services externes et RGPD
Dans Bouclier local mode dans lequel le plugin fonctionne zéro les requêtes réseau sortantes. Dans Réseau communautaire En mode normal, le plugin communique avec trois points de terminaison reportedip.de (toutes les transmissions sont répertoriées sur WordPress.org) readme.txt (conformément aux directives de wp.org) :
| Point d'extrémité | Déclencheur | Données envoyées |
|---|---|---|
GET /wp-json/reportedip/v2/check?ip=… | Une tentative de connexion est détectée wp_authenticate_user. | Uniquement l'adresse IP source de la tentative de connexion. En-tête X-Key à l'aide de la touche d'accès. Délai d'attente de 2 s, mode « fail-open ». |
POST /wp-json/reportedip/v2/report | Le seuil de tentatives de force brute a été dépassé ; le rapport est mis en file d'attente et envoyé par la tâche cron toutes les 15 minutes. | Adresse IP incriminée, identifiant de catégorie sous forme d'entier, bref commentaire lisible par l'utilisateur (« 5 tentatives de connexion infructueuses en 15 minutes »). Aucun nom d'utilisateur en clair, aucun mot de passe, aucun nom de domaine, aucun corps de requête. |
GET /wp-json/reportedip/v2/verify-key | Un administrateur clique sur « Tester la connexion » dans les paramètres. | Seule la clé d'accès est en cours de vérification. |
Base juridique (art. 6, par. 1, point f) du RGPD) : sécurité des réseaux et de l'information — la conservation des journaux, le nettoyage automatique et le hachage par adresse IP protègent à la fois vos utilisateurs et les visiteurs extérieurs. Le détail complet du traitement des données figure dans la politique de confidentialité de ce site.
Filtres et hooks d'action
apply_filters('reportedip_hive_is_whitelisted', $is_whitelisted, $ip)— contourner la vérification de la liste blanche (à utiliser avec parcimonie).apply_filters('reportedip_hive_get_client_ip', $ip)— passer outre la logique de détection d'adresse IP (utile derrière des proxys inversés non standard).apply_filters('reportedip_hive_event_category_map', $map)— associez les noms de vos événements aux identifiants des catégories de menaces.apply_filters('reportedip_hive_api_endpoint', $url)— configurer le plugin pour qu'il utilise une autre installation ReportedIP .do_action('reportedip_hive_log', $event, $data)— déclenché à chaque événement enregistré.do_action('reportedip_hive_ip_blocked', $ip, $reason)— déclenché lorsqu'une adresse IP est bloquée.do_action('reportedip_hive_report_queued', $ip, $category)— déclenché lorsqu'un rapport est mis en file d'attente.
Mise à niveau vers ReportedIP (édition complète)
Hive Light est délibérément limité aux tentatives de connexion par force brute. Si votre site nécessite l'une des fonctionnalités suivantes, passez à l'édition complète:
- Authentification à deux facteurs (2FA) à quatre méthodes : WebAuthn, TOTP, e-mail et SMS, ainsi que des codes de récupération et des appareils de confiance.
- Capteurs au-delà de la connexion — XML-RPC, spam dans les commentaires, rafales REST, détecteur d'erreurs 404 et de scanners, blocage de l'énumération des utilisateurs, surveillance des mots de passe d'application, anomalies géographiques et ASN.
- Activation du réseau multisite (
Network: true). - Authentification à deux facteurs (2FA) dans l'interface publique de WooCommerce (défi thématique intégré au parcours « Mon compte » / « Paiement »).
- Service de messagerie et de relais SMS géré avec forfaits prépayés (pas besoin de gérer votre propre passerelle SMTP ou SMS).
- Politiques d'authentification à deux facteurs (2FA) par rôle, limitation du nombre de tentatives de connexion, rapports de sécurité hebdomadaires au format PDF, outil d'exportation de données conforme au RGPD.
La migration est à sens unique : désactivez Hive Light, installez Hive (Full Edition), puis réactivez-le. Les deux plugins utilisent le même wp_reportedip_hive_* un préfixe de table et une migration de schéma idempotente ; l'édition complète étend le schéma avec trois tables supplémentaires (logs, stats, trusted_devices) et détecte les données Light existantes lors du premier démarrage. N'utilisez jamais les deux plugins en même temps — Même domaine de texte, même préfixe de classe : une redéclaration immédiate de la fonction entraîne une erreur fatale.
Consultez la page du produit pour connaître les tarifs et comparer les fonctionnalités.
Foire aux questions
Quelle est la différence entre Hive Light et Hive (Full Edition) ?
Hive Light est un plugin WordPress.org dédié exclusivement à la protection contre les tentatives de connexion par force brute, gratuit à vie, sans offre supplémentaire ni tarification par niveaux. Hive (Full Edition) est la suite de sécurité complète distribuée via GitHub : douze capteurs, une authentification à deux facteurs (2FA) à quatre méthodes, la prise en charge multisite, l'intégration WooCommerce, une tarification par niveaux avec relais de messagerie et SMS géré. Deux plugins distincts, deux canaux de distribution, mais un même auteur et une même communauté à l'origine.
Puis-je utiliser Hive Light et Hive (édition complète) sur le même site ?
Non. Ces deux plugins utilisent le même domaine de texte (reportedip-hive) et le préfixe de classe (ReportedIP_Hive). Si vous exécutez les deux, cela entraîne immédiatement des erreurs fatales liées à la redéfinition de fonctions. Choisissez l'une des deux options. Pour passer de la version Light à la version Full : désactivez la version Light, installez la version Full, puis réactivez-la. Les tables de la base de données sont réutilisées.
Dois-je créer un compte sur reportedip.de ?
Non — Local Shield fonctionne sans compte. Vous n'avez besoin d'une clé d'accès communautaire gratuite que si vous souhaitez activer le réseau communautaire, qui permet de vérifier la réputation des adresses IP par rapport à la base de données « hive » et de partager des rapports d'attaques anonymisés. Vous pouvez obtenir cette clé en quelques secondes sur reportedip.de/register/.
Pourquoi le plugin wp.org s'appelle-t-il «ReportedIP » et non « Hive Light » ?
Le slug du plugin sur WordPress.org est reportedip-hive (le nom du paquet), mais le nom affiché dans l'interface d'administration du plugin est «ReportedIP Light ». Le slug reste inchangé d'une version à l'autre — seul le nom lisible par l'utilisateur change. L'édition complète utilise le même domaine de texte, ce qui permet de conserver les clés d'options et les tables de base de données lors des migrations futures.
Est-ce que ce plugin va m'empêcher d'accéder à mon propre site ?
Cela pourrait arriver si vous échouez à plusieurs reprises lors de tentatives de connexion depuis votre propre adresse IP. Pour y remédier, vous pouvez soit attendre que le blocage expire, soit ajouter votre adresse IP à la liste blanche à l'avance, soit supprimer la ligne du wp_reportedip_hive_blocked table via phpMyAdmin ou WP-CLI : wp db query "DELETE FROM wp_reportedip_hive_blocked WHERE ip_address = 'YOUR_IP'".
Hive Light protège-t-il les mots de passe des applications ?
Non. La version actuelle prend en charge les normes wp-login.php identifiants. Les mots de passe d'application utilisent un chemin d'authentification distinct qui n'est pas surveillé ici. L'édition complète comprend un outil de surveillance des mots de passe d'application qui limite application_password_failed_authentication événements.
Est-ce que cela fonctionne avec les formulaires de connexion WooCommerce ?
Oui — WooCommerce utilise le format standard wp_login_failed action que Hive Light surveille. Les tentatives de connexion à WooCommerce sont comptabilisées au même titre que les connexions habituelles. L'authentification à deux facteurs (2FA) sur l'interface publique de WooCommerce (défi en boutique) est une fonctionnalité de l'édition complète.
Mon site est protégé par Cloudflare — les adresses IP réelles sont-elles détectées ?
Oui — définir En-tête « Trusted Proxy » dans Paramètres → Connexion à CF-Connecting-IP. N'activez cette option que si votre proxy inverse remplace systématiquement l'en-tête à chaque requête entrante ; sinon, l'en-tête risque d'être falsifiée. La même logique s'applique à X-Forwarded-For pour les proxys autres que Cloudflare.
Où se trouve le code source ?
Le plugin se trouve dans le dépôt SVN officiel de WordPress.org sous le slug reportedip-hive. Un miroir GitHub est mis à jour pour le suivi des tickets ; le canal de distribution officiel est wordpress.reportedip.
Qu'advient-il de mes données si je désinstalle l'application ?
Par défaut, les touches de raccourci sont conservées ; ainsi, une réinstallation préserve vos paramètres. Si vous activez désinstaller_supprime_les_tables Tout d'abord, le hook de désinstallation supprime tout wp_reportedip_hive_* les tables et supprime tout reportedip_hive_* options. Les rapports déjà présents dans la base de données communautaire sont conservés ; ils ne permettent pas d'identifier votre site.