Principe
Fail2Ban est une application qui analyse les logs des divers services en cherchant des tentatives répétées de connexion répétées qui ont échoués et met en place un bannissement en ajoutant une règle au pare-feu Iptables pour bannir l’adresse IP source.
Avantages
Fail2Ban permet donc d’éviter la surcharge des logs et l’utilisation de la bande passante causé des robots qui tentent des attaques brute-force ( Ex avec Hydra ) et permet donc une certaine sécurité. Cela n’exclut pas le besoin d’un mot de passe fort.
Installation
Il suffit d’installation fail2ban qui est présent dans les dépôts de Debianapt install fail2ban
Configuration
Il faut créer le fichier de configuration dans /etc/fail2ban/fail.d/custom.conf
[DEFAULT]
ignoreip = 127.0.0.1
findtime = 3600
bantime = 604800
maxretry = 3
- ignoreip = Votre IP Public & Privée et l’interface de bouclage
- bantime = 604800 soit 1 semaine
- findtime = 3600 soit une heure ( Recherche les logs 1h )
- maxretry = 3 Une IP sera bannie au bout de 3 erreurs
Nous pouvons maintenant ajouter à les services à surveiller
[sshd]
enabled = true
port = 22
systemctl restart fail2ban
Autoriser un utilisateur banni
Fail2Ban fonctionne avec IPtables, donc quand un utilisateur est filtré, c’est qu’une règle IPtables à été créée
Lister les tables:
iptables -L
Repérer votre la ligne de l’IP bannie qui est à enlever dans la chaine f2b-sshd.
Puis on l’a dé-banne avec la ligne suivante :
iptables -D f2b-sshd 2