Regina Schaukrug: Systemsoftware: fail2ban, logrotate

Beitrag lesen

Da fail2ban nur die Firewall des betroffenen Servers selber pflegt, ich aber die IPs schon auf der ersten Firewall sperren möchte, musste ich mir selber etwas bauen.

Wenn Du Dir mal die Konfigurationsdateien unterhalb von /etc/fail2ban/action.d/ ansiehst findest Du immer folgende Zeilen:

actionstart = <iptables> -N f2b-<name>
actionstop = …
actioncheck = …
actionban = …
actionunban = …

Dahinter stehen Befehle mit Variablen. Da könnte also auch

actionstart = ssh -i /foo/bar/f2b.key f2b@firewall <iptables> -N f2b-<name>

stehen. Du musst da gar nicht so viel selbst bauen:

Rezept:

  1. /etc/fail2ban/jail.conf nach jail.local kopieren und diese ändern. (Damit ein Update die Änderungen nicht überschreibt.)

  2. in /etc/fail2ban/jail.local alle banactions in "banaction_allports" abändern.

  3. /etc/fail2ban/action.d/iptables-allports.conf nach iptables-allports.local kopieren, bei den den o.g. Punkten einen kleinen ssh-Befehl notieren welcher mittels eines geeigneten Benutzers, einer Schlüsseldatei ohne Passwort und einem geeigneten entfernten Benutzer (also einem, der iptables aufrufen und ausführen kann (setfacl, suid-Bit, ...) auf dem Server die Blockierung setzt.

Wenn Du statt iptables eine andere Firewall verwendest wirst Du mit dem gleichen Vorgehen bei ipfw.conf oder firewallcmd-*.conf, ipfilter.conf nfttables-*.conf und so weiter glücklich.

Das Logfile enthält durchschnittlich ca. 1.000.000 Einträge

Wie ich schon schrieb. Logrotate hilft hier gegen

dauert weniger als 1 Sekunde

denn das "weniger als" klingt für mich nach "zu lange".