Aller directement au contenu principalAller directement au pied de page
Actualités sur la sécurité

Protégez votre serveur web grâce à une liste noire d'adresses IP en temps réel

Patrick Schlesinger
Infographie : une ReportedIP divisée en cinq listes de blocage de pare-feu spécifiques à chaque service (SSH, messagerie, Web, FTP et périphérie), comprenant 10 000 adresses IP répertoriées, 58 catégories de menaces et un cycle de mise à jour toutes les 15 minutes

La liste noire ReportedIP recense environ 10 000 adresses IP présentant un niveau de certitude d'abus supérieur à 90 %, et est actualisée côté serveur toutes les 15 minutes (au 21 juillet 2026). Un simple paramètre de requête permet de transformer cette liste unique en cinq listes de blocage de pare-feu spécifiques à chaque port : SSH, messagerie, Web, FTP et périphérie du réseau.

La procédure détaillée, avec les scripts cron et ipset, figure dans la documentation relative à la liste noire.

Pourquoi une liste de blocage par service est préférable à une seule liste géante

Chaque rapport du ReportedIP comporte des identifiants de catégorie de menace — au nombre de 58, allant de l'attaque par force brute SSH (22) à un bloc dédié à WordPress (31 à 58) couvrant les attaques par force brute sur la connexion et XML-RPC, les failles d'extensions, le spam dans les commentaires et le balayage de portes dérobées. Le category paramètre activé GET /blacklist accepte une liste de ces identifiants séparés par des virgules, de sorte que chaque service exposé reçoive exactement les attaquants qui le ciblent.

ListeCatégoriesAppliqué àTaille (21 juillet 2026)
SSH22,18Port 225 141 adresses IP
Courrier11,7,17,18Ports 25, 465, 587, 110, 143, 993, 9952 784 adresses IP
Web21,16,10,19,12 + Bloc WP 31–58Ports 80, 4433 666 adresses IP
FTP5,18Port 212 580 adresses IP
Edge4,14,20Tous les ports5 920 adresses IP

Les ensembles limités à un port minimisent les risques d'erreur : une adresse IP figurant sur la liste Web ne peut en aucun cas empêcher un administrateur d'accéder à SSH. Les listes restent fiables car un score supérieur à 90 nécessite au moins 10 signalements valides provenant d'au moins deux signalants indépendants ; les anciens signalements sont supprimés progressivement avec une demi-vie de 30 jours ; et les robots d'indexation connus sont exclus côté serveur avant la création de la liste.

Comment extraire une liste et la bloquer en cinq minutes

Une requête GET authentifiée par liste de services, en texte clair, une adresse IP par ligne :

curl -H "X-Key: YOUR_API_KEY" 
  "https://reportedip.de/wp-json/reportedip/v2/blacklist?confidence=90&format=txt&limit=10000&category=22,18" 
  | while read ip; do ipset add rip-ssh "$ip" -exist; done

iptables -I INPUT -p tcp --dport 22 -m set --match-set rip-ssh src -j DROP

Une tâche cron toutes les heures par liste suffit amplement : le point de terminaison renvoie un ETag, et il suffit de le renvoyer sous la forme If-None-Match renvoie des listes inchangées avec 304 Not Modified, les sondages répétés ne coûtent donc presque rien. Les consultations de la liste noire ne sont pas comptabilisées dans les quotas quotidiens ; les paramètres et les formats de réponse se trouvent dans le Référence de l'API. Les opérateurs de messagerie qui préfèrent les requêtes DNS à la synchronisation des listes peuvent interroger les mêmes données qu’un zone RBL privée.

Signaler les pirates grâce à fail2ban

Le blocage représente la moitié de la boucle. Un petit fail2ban affiche chaque exclusion sur votre serveur dans la rubrique « action » POST /report avec la catégorie de menace correspondante pour chaque serveur — les interdictions sshd relèvent de la catégorie 22, celles de Postfix de la catégorie 11 et celles de nginx de la catégorie 21. Les rapports ne décomptent que de votre quota quotidien de rapports, jamais de votre quota de vérifications, et chaque rapport affine les listes précises que vous récupérez dans l'heure qui suit.

La configuration d'action prête à l'emploi et la table de correspondance entre les « jails » et les catégories se trouvent dans le guide d'intégration de fail2ban.

Commencez par la formule gratuite

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués d'un *

Remplissez ce champ
Remplissez ce champ
Veuillez saisir une adresse e-mail valide.
Vous devez accepter les conditions pour continuer