Fail2ban
Introductie
Fail2ban is een package dat na installatie aan de hand van de logging van allerlei services, akties kan ondernemen op mogelijke pogingen binnen te dringen. Het maakt daartoe gebruik van filters en actions. Als een IP adres wordt gevonden dat de ingeschakelde regel schendt, wordt een DROP regel in iptables geschoten. Na verloop van tijd (instelbaar) wordt die weer verwijderd.
Configuratie
De configuratie van Fail2ban staat in /etc/fail2ban. Er is een configuratie bestand fail2ban.conf vor de algemene configuratie en een jail.conf met de diverse targets. Het wordt aanbevolen eigen wijzigingen in jail.local te maken. De filters gebruiken regex strings en staan in /etc/fail2ban/filter.d/*.conf. Actions staan in /etc/fail2ban/action.d/*.conf. Voor standaard (Ubuntu) installaties voldoet het meestal om één of meerdere jails in te schakelen door ze te enabelen. Voor afwijkende locaties van de logfiles dient de configuratie aangepast te worden. Fail2ban kan mail sturen naar een bepaald email adres; De inhoud kan een kort of een uitgebreid rapport zijn.
Whitelisting
IP adressen die nooit geblokkeerd mogen worden kunnen op de regel ignoreip in jail.conf geplaatst worden.
Jails
De targets of jails kunnen afzonderlijk worden ingeschakeld en ge-tuned. De naam van het gebuikte filter moet overeenkomen met de naam in de filter directory.
Filters
De filter zijn gebaseerd op Regex uitdrukkingen. Om de uitwerking te testen op een bestaande logfile kan gebruik worden gemaakt van het programma fail2ban-regex <logfile> <filter>.
Toepassing
Binne Hobbynet draait Fail2ban op diverse servers. Over het algemeen staat alleen de ssh jail enabled. Recent (feb. 2013) is Fail2ban op de hcc.nl productie servers gezet omdat daar een aanval van een botnet op de (nog niet openbare) login pagina plaatsvond.
ToDo
Voeg Fail2ban toe op de /usr/local/hobbynet/apache2conf omgeving. Dat voorkomt het telkens aanpassen op twee servers.
Website
Kijk op de fail2ban website voor meer informatie.