Фильтр fail2ban для регулярных выражений
Я пытаюсь получить регулярное выражение для службы в моем хосте, работающем без успеха. Это часть файла журнала:
Tue Jul 23 13:55:23 2019: ical|T720] [info ] Accepted connection from [::ffff:2.3.4.5]:56450
Tue Jul 23 13:55:23 2019: [net/[::ffff:5.6|T5234] [error ] HrLogon server "http://localhost:123/" user "Admin": logon failed
Tue Jul 23 13:55:23 2019: [net/[::ffff:5.6|T5234] [warning] Login failed (0x80040111 logon failed), resending authentication request
Tue Jul 23 13:55:23 2019: [net/[::ffff:5.6|T5234] [notice ] [::ffff:5.61.48.194]:56450 - Admin [23/Jul/2019:13:55:23 +0200] "GET / HTTP/1.1" 401 0 "-" "Mozilla/5.0 (Windows NT 5.1; rv:9.0.1) Gecko/20100101 Firefox/9.0.1"
Tue Jul 23 13:55:23 2019: [net/[::ffff:5.6|T5234] [info ] Connection closed
Это часть файла журнала, и я уже пробовал разные вещи, чтобы вставить это в фильтр. Важными частями являются "Ошибка входа" и в следующей строке часть с IP. Но как я могу заставить это работать? Любая помощь будет отличной!!!
заранее спасибо
Icey
Актуальные конфиги выглядят как: ical.conf:
[INCLUDES]
before = common.conf
[Definition]
failregex = ^*Login failed\n^.*\[notice \] \[::ffff:<HOST>\]$
ignoreregex =
[Init]
maxlines = 2
и тюремный конф
[ical]
enabled = false
port = 8443
filter = kopano-ical
logpath = /var/log/ical.log
maxtetry = 3
bantime = 3600
1 ответ
Решение
Я считаю, что ваше регулярное выражение не правильно. Вы пропускаете точку (.) В начале сразу после ^
, .*
до \n
и так как вы использовали $
и конец вам нужно поставить .*
до $
, ]
не последний персонаж.
failregex = ^.*Login failed.*\n^.*\[notice \] \[::ffff:<HOST>\].*$