Partager des bannissements d’IP entre serveurs Linux avec un groupe
Pour partager des bannissements d’IP entre serveurs Linux, placez les clés API de ces serveurs dans un groupe sur reportedip.com : le ReportedIP Linux Agent de chaque hôte rejette alors une adresse signalée par un membre, sur tous les ports, pendant la fenêtre de bannissement du groupe. La liste arrive avec le flux communautaire, vit dans son propre set noyau et ne demande aucune clé de configuration sur l’hôte.
Les groupes sont inclus à partir de la formule Professional. Le set du groupe existe depuis l’agent 0.3.25, la liste blanche du groupe depuis la 0.3.27. Une clé sans groupe fonctionne exactement comme avant.
Ce qu’un groupe change sur un serveur Linux
L’agent remplit déjà cinq sets noyau à partir de la blacklist communautaire, un par service exposé : ssh, mail, web, ftp et edge. Ces sets contiennent ce que toute la communauté a signalé, filtré selon votre niveau de confiance, et chacun ne s’applique qu’aux ports de son service. Un groupe ajoute une sixième liste, group, avec ce que les autres membres de votre propre groupe de compte ont signalé, et celle-ci s’applique à tous les ports.
En pratique, la différence compte. Un scanner qui s’acharne sur le SSH de votre serveur web y est banni par le watcher local ; avec un groupe, la même adresse est rejetée sur le serveur de messagerie et sur l’hôte de base de données à leur prochaine synchronisation, avant d’y arriver. Les membres peuvent être des serveurs Linux avec l’agent et des sites WordPress avec le plugin Hive, mélangés dans un même groupe.
| Liste | Sets noyau | Ports concernés par la règle | Origine des adresses |
|---|---|---|---|
ssh | rip-ssh, rip-ssh-v6 | depuis lists.ssh.ports | la communauté |
mail | rip-mail, rip-mail-v6 | 25, 465, 587, 110, 995, 143, 993 | la communauté |
web | rip-web, rip-web-v6 | 80, 443 | la communauté |
ftp | rip-ftp, rip-ftp-v6 | 21 | la communauté |
edge | rip-edge, rip-edge-v6 | tous les ports | la communauté |
group | rip-group, rip-group-v6 | tous les ports | les membres de votre groupe |
Comment l’agent récupère et applique la liste du groupe
Sur un serveur sous licence, la liste du groupe est récupérée en JSON dans le même passage que le flux communautaire. Une licence est incluse avec Professional (un serveur) et Business (trois serveurs), d’autres peuvent être ajoutées par hôte. La fréquence du passage est décidée par le serveur, pas par l’hôte : toutes les 15 minutes à partir de Professional. Chaque récupération est conditionnelle, une liste inchangée répond donc 304 et coûte une requête sans transfert.
- L’échange est atomique. Le nouveau set est construit à côté de l’ancien puis échangé, il n’y a donc jamais d’instant avec un set vide.
- Un groupe vide est valide. Contrairement aux listes communautaires, la liste du groupe n’a pas de taille minimale : un groupe sans bannissement en cours est un état réel, pas un téléchargement raté.
- L’hôte est protégé d’abord. Le loopback, les plages privées, les adresses propres de l’hôte, le client SSH depuis lequel vous êtes connecté et
whitelist.confsont tenus hors de chaque set avant toute application. Le service ne met jamais non plus sur la liste l’adresse de signalement d’un membre. - Rien à configurer. La liste
groupest toujours active et ne demande aucune entrée dansconfig.yaml. Pour une clé sans groupe, le service ne renvoie pas de liste et le set reste simplement vide.
Le modèle de blocage complet, avec les règles iptables et nftables que l’agent écrit, se trouve dans Bloquer avec le Linux Agent. Côté noyau, le manuel d’ipset décrit les types de sets que l’agent utilise sur un hôte iptables.
Comment la liste blanche du groupe atteint chaque serveur
Un groupe peut porter une liste blanche de 200 adresses et préfixes au plus, chacun avec une note, gérée dans votre compte. L’agent la lit dans la même requête que la liste du groupe et l’écrit dans /var/lib/reportedip-agent/group-whitelist, au format de whitelist.conf, chaque note en commentaire. Il l’applique ensuite dans le même passage aux trois endroits où une liste blanche agit sur l’hôte :
- le set noyau de liste blanche, placé avant chaque règle de bannissement,
- le filtre que traverse chaque liste téléchargée,
- la barrière de signalement du watcher de journaux, pour que l’hôte ne signale jamais une telle adresse.
La liste blanche du groupe est une couche de plus à côté du whitelist.conf propre à l’hôte et de sa liste blanche automatique ; elle ne les remplace jamais. Ne modifiez pas le fichier à la main, la synchronisation suivante le réécrit. Une clé qui quitte son groupe perd le fichier à la synchronisation suivante.
Comment vérifier le groupe sur un hôte
reportedip-agent status affiche le groupe à trois endroits : la ligne group sous les listes avec le nombre d’entrées et l’âge de la dernière récupération réussie, les lignes de la liste blanche du groupe marquées group: avec leurs notes, et une ligne sous le compte avec le nom du groupe, sa taille et sa fenêtre de bannissement. Les images de terminal ci-dessous sont des exemples de sortie avec des adresses de documentation de la RFC 5737 et de la RFC 3849 et des noms d’hôtes inventés ; la mise en page est celle qu’affiche l’agent.

reportedip-agent status sur un hôte dont la clé est dans un groupe.Une clé sans groupe affiche group=none et une indication de l’endroit où les groupes se gèrent. Ce n’est pas une erreur et cela ne transforme pas le code de sortie de status en avertissement : une supervision qui lit ce code reste au vert sur chaque hôte sans groupe.

reportedip-agent whitelist list affiche le fichier propre à l’hôte, la liste blanche automatique et celle du groupe, cette dernière sur des lignes marquées group:. La même ligne de compte indique aussi la réputation de l’adresse depuis laquelle l’hôte signale ; une adresse listée avec une confiance de 75 ou plus, le niveau le plus bas servi par un flux, remonte comme condition de santé reputation.
Mettre en place un groupe pour vos serveurs en quatre étapes
- Mettez l’agent à jour en 0.3.32 ou plus récent sur chaque hôte. Chaque hôte a besoin d’une licence serveur pour le flux.
- Créez le groupe sous Groupes dans votre compte reportedip.com et choisissez la fenêtre de bannissement, 24 heures par défaut.
- Ajoutez les clés API des serveurs, et le cas échéant des sites WordPress avec Hive, qui doivent partager leurs bannissements. Une clé peut appartenir à un groupe.
- Lancez
sudo reportedip-agent syncou attendez le prochain passage, puis vérifiez la ligne du groupe dansstatus. Lancersyncà la main est toujours permis ; une liste récupérée il y a moins de 15 minutes n’est simplement pas récupérée à nouveau.
Le groupe peut aussi envoyer à chaque nouveau bannissement un webhook signé, avec un HMAC-SHA256 sur le contenu, vers un outil de chat ou de tickets ; les détails sont sur la page des groupes. Côté WordPress, le plugin Hive reprend la même liste comme type de blocage propre, décrit dans Partager des bannissements d’IP entre sites WordPress.
Questions sur les bannissements de groupe sur serveurs Linux
La liste du groupe remplace-t-elle le flux communautaire ?
Non. Les cinq listes communautaires gardent leurs ports et leur filtre de confiance. La liste du groupe est une sixième liste à côté d’elles, alimentée uniquement par les membres de votre groupe, et elle s’applique à tous les ports parce que partager un bannissement est la raison d’être d’un groupe.
Un groupe peut-il couper mes propres serveurs les uns des autres ?
Le service laisse l’adresse de signalement de chaque membre hors de la liste, et l’agent tient les adresses propres de l’hôte, les plages privées et votre client SSH hors de chaque set. Les adresses à exempter partout vont dans la liste blanche du groupe.
Comment lever un bannissement de groupe ?
Pour tout le groupe, supprimez l’entrée ou ajoutez une exception dans votre compte ; chaque membre la retire à sa prochaine synchronisation. Sur un seul hôte, reportedip-agent whitelist add <address> garde l’adresse hors des sets de cet hôte pour de bon.