Fail2ban

fail2ban : lit les logs de divers services (SSH, FTP, SMTP, Apache... ), à la recherche d'erreurs d'authentification répétées et ajoute une règle iptables pour bannir l'adresse IP. Ecrit en Python.

base de la conf

/etc/fail2ban/fail2ban.conf

Loglevel : 1 – ERROR, 2 – WARN, 3 – INFO ou 4 – DEBUG.

/etc/fail2ban/jail.conf

déclaration des services, et conf, selon divers contextes, DEFAULT s'applique à toutes les autres sections. Par ex, :

[DEFAULT]
ignoreip = 127.0.0.1 192.168.10.14
maxretry = 5
findtime = 600
bantime = 600
après 5 tentatives (en echec) d'une IP (autre que dans la liste ignoreip)
dans les 600 s ou 10 mn (findtime),
cette IP sera automatiquement bloquée
pendant 600 s (bantime)

Quelques services sont en templates. Un ex:

[ssh]
enabled = true
port	= ssh
filter	= sshd
logpath  = /var/log/auth.log
action = iptables

filter: ce nom correspond au nom de fichier dans ‘/etc/fail2ban/filter.d’     (sans le .conf)
action:                        "                                       dans ‘/etc/fail2ban/action.d/’  (sans le .conf)
ex:  ‘action = iptables’ correspond à /etc/fail2ban/action.d/iptables.conf’

filter.d utilise des expressions régulières
action.d scripts. Un seul filtre par service (mais plusieurs actions, sur des lignes séparées) 

 

http://www.thegeekstuff.com/2010/07/fail2ban-howto/

logo drush