fail2ban für typo3 7.6.12

Fail2ban ist ein flexibles Intrusion Prevention System. In diesem Fall sollen Angriffe auf eine Typo3-Installation erkannt und geblockt werden.

Achtung: Die folgende Lösung zählt auch erfolgreiche Logins als Fehler und ist daher nur geeignet, wenn man IPs, von der viele erfolgreiche Logins zu erwarten sind, in /etc/fail2ban/jail.conf mit ignoreip ignoriert und gute Werte für findtime und maxretry findet, um eine noch zulässige Anzahl Logins von anderen IPs zu ermöglichen. Für Angriffe von ausgeschlossenen IPs besteht dann natürlich kein Schutz, was akzeptabel sein kann, wenn es „hausinterne“ sind.

Zunächst als Datei /etc/fail2ban/filter.d/apache-typo3.conf einen neuen Filter anlegen:


[Definition]
failregex = ^<HOST> .*"POST .*loginProvider.*
ignoreregex =

In /etc/fail2ban/jail.local anlegen/hinzufügen:

[apache-typo3]
enabled = true
port = http,https
filter = apache-typo3
logpath = /var/www/logs/*access_log*

Hinweis: Fail2ban wird nicht wie erwartet funktionieren, wenn die Zeitzone der Einträge in den Logfiles eine andere ist, als die unter der fail2ban läuft. Nach Ändern der Zeitzone (dpkg-reconfigure tzdata) zudem nicht vergessen, den Apache neu zu starten. Ein Punkt, der mich Stunden Fehlersuche gekostet hat. Eine andere Falle kann sein, dass backend = auto in /etc/fail2ban/jail.conf auf bestimmten Systemen nicht funktioniert. Hier sollte backend = polling immer funktionieren.

Nachtrag – man könnte alternativ auch vom Apache ein Logfile nur für die Loginversuche anlegen lassen, dann fällt die fail2ban-Konfiguration im Anschluss einfacher aus:


SetEnvIfExpr "%{QUERY_STRING} =~ /loginProvider/" login
CustomLog "typo3-login.log" common env=login

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen