J’avais déjà parlé de fail2ban dans un précédent billet, hors depuis quelque temps, je ne reçoit plus de mail d’alerte de la part de ce scripts… Arrêterait-on de forcer les accès SSH de Borsalino ?
C’est donc en contrôlant les logs (/etc/log/fail2ban.log), que je tombe sur près de 45.000 entrées.
root@borsalino ~> wc -l /var/log/fail2ban.log
45 751 /var/log/fail2ban.log
Un petit cat et je me rends compte d’une ligne récurant :
ERROR: time data did not match format: data=Mar 21 10:00:50 fmt=%b %d %H:%M:%S
ERROR: Please check the format and your locale settings.
Après recherche sur le wiki de fail2ban, et la lecture de la faq, il s’avère que ce message vient d’un bug (#1457620) introduit dans la version 0.6.1, fixé (0.6.2) et du à l’expression régulière en charge de l’analyse des logs. En effet mon système étant en français (fr_FR), fail2ban s’attend à trouver des logs (/var/log/secure) avec des dates françaises, ce qui n’est pas le cas… Pour cela, comme indiqué dans la faq, il suffit de renseigner la ligne locale dans le fichier de configuration (/etc/fail2ban.conf) :
# Option: locale
# Notes.: global (cannot be redefined per section) locale to use for
# timestamp pattern matching by changing LC_TIME for
# fail2ban process. Empty entry sets locale to default one
# (usually specified by LC_ALL environment variable).
# Values: LOCALE Default:
#
locale = en_US