Anomalie #3723
closedLes logs fail2bans ne sont jamais purgées
100%
Description
En investiguant une alerte de Chatonic à propos d'espace disque sur coon:/var (résolue par un apt-get clean), constat que le fichier /var/lib/fail2ban est énorme : 1,3 Go.
Or :
=(^-^)=root@coon:/var/lib/fail2ban# df -h /var/ Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur /dev/mapper/vg_coon-var 3,9G 3,2G 480M 87% /var
Et :
===== maine.chapril.org ===== -rw------- 1 root root 1,2G mai 31 00:50 /var/lib/fail2ban/fail2ban.sqlite3 Connection to maine.chapril.org closed. ===== coon.chapril.org ===== -rw------- 1 root root 1,3G mai 31 00:50 /var/lib/fail2ban/fail2ban.sqlite3
Puisque la mission de Fail2ban agit sur de courtes périodes (de quelques minutes à quelques jours), les 1,3 Go de données utiles sont difficilement justifiables.
En regardant dans la base de données, on constate qu'il y a 1 560 462 logs de ban en base:
=(^-^)=root@maine:/var/lib/fail2ban# sqlite3 copy.sqlite3 SQLite version 3.16.2 2017-01-06 16:32:41 Enter ".help" for usage hints. sqlite> select count(*) from bans; 1560462
Et que le plus ancien ban stocké date de la mise en place de la plateforme :
sqlite> select timeofban from bans order by timeofban asc limit 5; 1496480937 1496481650 1496482371 1496483093 1496483795 sqlite> ^Z =(^-^)=root@maine:/var/lib/fail2ban# date -d @1496480937 samedi 3 juin 2017, 11:08:57 (UTC+0200)
Conclusion : les logs de Fail2ban ne sont pas purgées.
Pourtant, Fail2ban est configuré pour ne pas conserver le log d'un ban plus de 24 heures :
=(^-^)=root@maine:/var/lib/fail2ban# fail2ban-client get dbpurgeage Current database purge age is: `- 86400secondsIl semble que la non purge automatique soit un phénomène répandu et normal :
- https://github.com/fail2ban/fail2ban/issues/1316#issuecomment-178796884 : « dbpurgeage currently does not affect (because no purge takes place at all, only in test cases currently)... »
- https://github.com/fail2ban/fail2ban/issues/1267#issuecomment-162590924 : « I've said already several times, purge will never called (only in test case): »
Pas trouvé d'infos de l'intégration dans Debian.
Questions :- Y-a-t-il une utilité à conserver le log de tous les bans ?
- Purge automatique ou purge manuelle ?
- Ajout d'une sonde pour détecter une taille excessive de la base Fail2ban ? À partir de quelle taille la jugée excessive ?
Updated by Christian P. Momon over 5 years ago
- Subject changed from Les logs fail2bans ne sont jamais purgés to Les logs fail2bans ne sont jamais purgées
Updated by Christian P. Momon over 4 years ago
- Project changed from Chapril to Infra Chapril
Updated by Romain H. over 4 years ago
- Status changed from Nouveau to En cours de traitement
Updated by Romain H. about 4 years ago
- Status changed from En cours de traitement to Résolu
- % Done changed from 0 to 100
J'ai rajouté la cron et le script dans sexy-chapril version 1.19.
J'ai mis à jour le paquet sur les VM.
Pour bastion l'historique était trop gros et faisait plein d'IO, j'ai reset la base sqlite3.
Updated by Christian P. Momon about 4 years ago
- Target version changed from Backlog to Sprint 2020 novembre