Fail2Ban-Log mit systemd/journald senden (mwl)

Anleitungen zu Fail2Ban, blocklist.de und x-arf
Antworten
adlerweb
Beiträge: 1
Registriert: 14. Nov 2016, 10:54

Fail2Ban-Log mit systemd/journald senden (mwl)

Beitrag von adlerweb » 21. Nov 2016, 20:09

Immer mehr Distributionen setzen auf Systemd und somit Journald. Zwar unterstützt fail2ban in den aktuellen Versionen das Journal als Quelle, beim Versand von E-Mail-Reports mit Log ist dieses jedoch vielfach leer, was vermeintlichen Verursachern die Suche nach dem Grund sehr schwer macht. Um auch auf systemd-Systemen ein Log mitzusenden reichen einige kleine Anpassungen. Das Beispiel stammt von "Arch Linux", sollte jedoch auch auf anderen Systemen verwendbar sein. Möglich wäre es auch weitere Einschränkungen wie z.B. ein Zeitlimit für die Logs einzutragen.

a) Die Datei /etc/fail2ban/action.d/sendmail-whois-lines.conf nach /etc/fail2ban/action.d/sendmail-whois-lines-systemd.conf kopieren
Hierdurch wird verhindert, dass zukünftige Updates die Änderungen wieder überschreiben
b) In der kopierten Datei (sendmail-whois-lines-systemd.conf) den Abschnitt "actionban" suchen und folgende Zeilen austauschen/ändern:

Code: Alles auswählen

Original:
            Lines containing IP:<ip> in <logpath>\n
            `grep -E <grepopts> '(^|[^0-9])<ip>([^0-9]|$)' <logpath>`\n\n

Änderung:
            Lines containing IP:<ip> in systemd-journal\n
            `journalctl | grep '[^0-9]<ip>[^0-9]'`\n\n   
c) In jail.local die Aktion "mwl" auf den neuen Pfad anpassen

Code: Alles auswählen

…
action_mwl = %(banaction)s[name=%(__name__)s, port="%(port)s", protocol="%(protocol)s", chain="%(chain)s"]
%(mta)s-whois-lines-systemd[name=%(__name__)s, dest="%(destemail)s", logpath=%(logpath)s, chain="%(chain)s", sendername="%(sendername)s"]

action = %(action_mwl)s
…
Mit diesen Einstellungen sollten die Info-Mails nun auch auf Systemd entsprechende Log-Auszüge enthalten

Benutzeravatar
Martin
Beiträge: 397
Registriert: 14. Sep 2010, 11:54
Kontaktdaten:

Re: Fail2Ban-Log mit systemd/journald senden (mwl)

Beitrag von Martin » 9. Jan 2017, 13:55

Hallo adlerweb,

super, vielen Dank für den Hinweis!
Falls du auf github bist, kannst du es auch gerne direkt einmal bei fail2ban reporten, das die z.B. eine Prüfung einbauen oder das variable machen, je nach dem, was läuft, damit der richtige Befehl verwendet wird.
Mfg Martin
http://www.blocklist.de/de/ Fail2Ban Reporting Service

Antworten