Mise à jour 1.0 du script bash de reporting AbuseIPDB

Je suis heureux de vous annoncer la sortie de la version 1.0 du script de reporting AbuseIPDB.

Ce script automatise le signalement des IP bannies par Fail2ban vers le service AbuseIPDB, permettant ainsi de contribuer à une base de données partagée d’adresses IP malveillantes.
Il est principalement pensé pour les serveurs Plesk, mais reste parfaitement adaptable à d’autres environnements.

Ce qui change dans la version 1.0

Le logging des IP reportées a été entièrement revu. Pour rappel, ce fichier sert à éviter les doublons de reporting à chaque exécution du script. L’ancienne méthode présentait quelques lacunes qui sont désormais corrigées :

  • Le script ne logge une IP que si le reporting a réellement réussi (selon le retour de l’API AbuseIPDB)
  • Il enregistre désormais chaque combinaison IP + jail, permettant par exemple de reporter une IP dans un premier temps via une jail de type « web », puis à nouveau si elle est bannie par la jail « recidive »
  • À chaque exécution, le script supprime automatiquement du log les IP qui ne sont plus bannies — plus besoin de nettoyer manuellement le fichier ou de créer un cron pour cela

Cela permet donc des reportings plus fiables, plus pertinents, et une automatisation complète.

Un “jail” correspond à une règle de sécurité Fail2ban définissant un type d’attaque (SSH, SMTP, bots web, etc.). Le script associe à chaque jail des catégories et des commentaires adaptés, afin que les signalements soient clairs et bien catégorisés.

Note d’upgrade

Si vous utilisiez une version précédente, il faut supprimer l’ancien log, car celui-ci n’utilise plus la même syntaxe :

rm /var/log/reported_ips.log

Pourquoi passer directement en version 1.0 ? 🚀

Je considère que le script est arrivé à maturité : il fait exactement ce qu’on attend de lui, de manière robuste et optimisée. Il passe donc de la version 0.4 à 1.0.

Il n’écrit aucun fichier temporaire sur le disque, fonctionne en RAM pour filtrer les IP déjà traitées, et respecte les limitations d’AbuseIPDB avec un délai personnalisable.

Je reste bien sûr ouvert à toute suggestion ou amélioration !

📈 Et chez LRob ?

Nous avons approchons les 500 000 signalements depuis octobre dernier sur les serveurs web LRob.

Avec cette nouvelle version, on limite les signalements redondants (notamment les IPs en récidive), ce qui permet de réduire la charge sur l’API AbuseIPDB, tout en continuant à contribuer efficacement.

🔧 Installation rapide

En root :

wget https://raw.githubusercontent.com/UltimateByte/plesk-tools/refs/heads/main/report_abuseipdb.sh
chmod +x report_abuseipdb.sh

N’oubliez pas :

Et de personnaliser les jails selon votre configuration (ou commenter celles que vous n’utilisez pas)

Vous pouvez ensuite ajouter le cron suivant :

# Run /root/report_abuseipdb.sh every 15 mins
*/15 * * * * /root/report_abuseipdb.sh

D’éditer le script pour y placer votre clé API AbuseIPDB

Contribuer

Le projet est ici : https://github.com/UltimateByte/plesk-tools/blob/main/report_abuseipdb.sh

Happy reporting 😁

Commentaires

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

fr_FR