Fail2ban Regex Problem?

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
Antworten
Benutzeravatar
fulltilt
Beiträge: 1155
Registriert: 03.12.2006 20:10:57

Fail2ban Regex Problem?

Beitrag von fulltilt » 19.03.2018 10:38:49

Moin, habe hier ein Problem mit Fail2ban die IP Liste wird nicht eingelesen, ich denke mal es liegt an der Regex ... Kann jemand helfen?

Code: Alles auswählen

nano /root/blocklist-mail.sh

#!/bin/sh
cd /etc/fail2ban
wget https://lists.blocklist.de/lists/mail.txt

chmod +x /root/blocklist-mail.sh

nano /etc/fail2ban/filter.d/ip-blacklist.conf


# Fail2Ban configuration file
#
# List of blocked ip addresses

[Definition]

# Option:  failregex
# Notes :  Detection of blocked ip addresses.
# Values:  TEXT
#

failregex = <HOST>.*]

# Option:  ignoreregex
# Notes :  Regex to ignore. If this regex matches, the line is ignored.
# Values:  TEXT
#

ignoreregex =
#############

nano /etc/fail2ban/jail.local

[blocklistmail]

enabled  = true
port     = smtp,465,submission,imap2,imaps,pop3,pop3s
filter   = ip-blacklist
logpath  = /etc/fail2ban/mail.txt
findtime  = 15552000
maxretry = 0
bantime = 86400

service fail2ban restart

crontab -e
*/35 * * * * /root/blocklist-mail.sh

Code: Alles auswählen

Running tests
=============

Use   failregex filter file : ip-blacklist, basedir: /etc/fail2ban
Use         log file : /etc/fail2ban/mail.txt
Use         encoding : ANSI_X3.4-1968


Results
=======

Failregex: 0 total

Ignoreregex: 0 total

Date template hits:

Lines: 12427 lines, 0 ignored, 0 matched, 12427 missed
[processed in 0.44 sec]
Debian: Testing
Desktop: KDE Plasma 5

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Fail2ban Regex Problem?

Beitrag von rendegast » 19.03.2018 17:59:01

Die mail.txt enthält reine IP-Adressen.
Der Ausdruck '<HOST>.*]' kann da nicht matchen.


Weiterhin
Entgegen dem, wie es mir in doc/fail2ban/FILTERS erscheint,
braucht fail2ban scheinbar einen Datumsstring.
Per

Code: Alles auswählen

cat mail.txt  |  sed 's@\(.*\)@[2012-12-12 12:12:12] \1@' > mail.txt.sed
oder
cat mail.txt  |  sed 's@\(.*\)@12:12:12 \1@' > mail.txt.sed
wird der hinzugezaubert und
failregex = ^<HOST>$
matcht.
EDIT, Versehen, obiges klappt nicht, es muß weniger einschränkend sein:

Code: Alles auswählen

failregex = <HOST>$
failregex = <HOST>

aber auch
failregex = ^.<HOST>$
(nur beim Zeit-Template '12:12:12')


Vielleicht gibt es auch eine Option für die Filterdatei, sodaß die Datumstemplates keine Verwendung finden und mail.txt direkt verwendet werden kann?

Code: Alles auswählen

datepattern = ??????

(habe herumprobiert, es aber nicht hinbekommen)
Zuletzt geändert von rendegast am 20.03.2018 09:33:39, insgesamt 3-mal geändert.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Benutzeravatar
fulltilt
Beiträge: 1155
Registriert: 03.12.2006 20:10:57

Re: Fail2ban Regex Problem?

Beitrag von fulltilt » 19.03.2018 18:32:03

Danke rendegast!
dann werd ich wohl auch ein Datum da reinzaubern müssen ;-)
Debian: Testing
Desktop: KDE Plasma 5

Antworten