Fail2ban est un script surveillant les accès réseau grâce aux logs des serveurs. Lorsqu’il détecte des erreurs d’authentification répétées, il prend des contre-mesures en bannissant l’adresse IP grâce à iptables. Cela permet d’éviter nombre d’attaques bruteforce et/ou par dictionnaire.
Installation
apt-get install fail2ban
Configuration
vi /etc/fail2ban/fail2ban.conf
loglevel
Niveau de détail des logs (défaut 3)
logtarget = /var/log/fail2ban.log
Chemin vers le fichier de log (description des actions entreprises par fail2ban)
Les services à monitorer sont stockés dans jail.conf. Il est recommandé d’en effectuer une copie nommée jail.local qui sera automatiquement utilisée à la place du fichier exemple.
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
vi /etc/fail2ban/jail.local
Quelques paramètres globaux :
ignoreip = 127.0.0.1
Liste des adresses IP de confiance à ignorer par fail2ban
bantime = 600
Temps de ban en secondes
maxretry = 3
Nombre d’essais autorisés pour une connexion avant d’être banni
destmail monitoring@test.com
Adresse e-mail destinataire des notifications
action
Action à entreprendre en cas de détection positive (voir dans /etc/fail2ban/action.d/)
Chaque section possède ses propres paramètres qui prennent le pas sur les globaux s’ils sont mentionnés :
enabled
Monitoring activé (true) ou non (false)
maxretry, bantime, ignoreip, destmail
Voir ci-dessus
port
Port IP concerné
logpath
Fichier de log à analyser pour détecter des anomalies
filter
Filtre utilisé pour l’analyser du log
Les filtres par défaut sont stockés dans /etc/fail2ban/filter.d. Ils contiennent en général une instruction failregex suivie d’une expression régulière matchant la détection d’une authentification erronée. Par exemple pour le service Courier :
failregex = LOGIN FAILED, ip=[]$
Note : Celle-ci peut être précisée directement dans jail.local à la section appropriée pour prendre le pas sur la directive filter.
Modifiez les ports le cas échéant dans la section ssh si vous avez suivi la recommandation ci-dessus…
enabled = true
port = 2222
Après modification de la configuration, n’oubliez pas de redémarrer fail2ban : /etc/init.d/fail2ban restart
cf source :: http://www.alsacreations.com/tuto/lire/622-Securite-firewall-iptables.html (ver la fin)