====== Bannir les récidivistes ======
**Fail2ban** est un super outil pour bannir certaines adresses IP ayant un comportement de [[s#spamming|spamming]] ou de //détection de failles de sécurité//. Ce bannissement à une durée, fixée dans les paramètres de **fail2ban**, mais on constate parfois que dès que le bannissement est terminé, l'adresse IP reprend son action malveillante.
===== La solution =====
La solution que j'ai mis en place et qui fonctionne relativement bien est basé sur le fait que **fail2ban** possède son propre fichier de //log//. Il suffit donc de créer une règle de détection avec des paramètres de bannissement très sévères si l'adresse IP se fait bannir régulièrement sur une période donnée.
==== Le filtre =====
On commence par créer le filtre qu'on placera dans le répertoire dédié au filtre :// /etc/fail2ban/filter.d //, pour cela on utilise la console en ligne de commande.
echo "[Definition]
failregex = fail2ban.actions: WARNING \[(.*)\] Ban
ignoreregex = fail2ban.actions: WARNING \[fail2ban-recidiviste\] Ban ">/etc/fail2ban/filter.d/recidiviste.conf
==== Activation du filtre ====
Ensuite, on indique à **fail2ban** d'utiliser la règle que nous venons de définir ci-dessus, pour cela on utilise toujours la console en ligne de commande.
echo "
[recidiviste]
enabled = true
filter = recidiviste
action = iptables-allports[name=recidiviste]
logpath = /var/log/fail2ban.log
maxretry = 3
# 1 semaine
findtime = 604800
# 30 jours
bantime = 2592000
">>/etc/fail2ban/jail.local
Cette règle est activée et paramétrée dans le fichier// jail.local//, cela évitera l'effacement de ce paramètre lors d'une mise à jour future.
Ici, si sur une semaine, une IP est bannie plus de 3 fois, elle sera banni pour 30 jours. A vous ensuite d'ajuster les paramètres selon vos besoins.
==== Mise en route et vérification ====
Il suffit de redémarrer **fail2ban** avec la ligne de commande suivante :
service fail2ban restart
et on vérifie si il n'y a pas de messages d'erreur dans les logs de **fail2ban** avec la commande suivante
tail -n 200 /var/log/fail2ban.log
===== Auteurs et sources =====
* Auteur : [[:user:montuy337513]]
* Sources : [[http://www.fail2ban.org/wiki/index.php/Main_Page|Site officiel de Fail2ban]]
===== Navigation =====
* [[:accueil|Accueil]]
* [[:serveur-debian-securite]]
* [[:serveur-debian-general]]
* [[:serveur-debian-automatisation]]
* [[:serveur-debian-file]]
* [[:serveur-debian-log]]
* [[:serveur-debian-user-groupe]]
* [[:serveur-debian-apache2]]
* [[:serveur-debian-postfix]]
* [[:serveur-debian-mysql]]
* [[:serveur-debian-divers]]