
Привет, я пытаюсь сопоставить следующую строку журнала:
E/Sun, 04 Mar 2018 21:40:32 +0100: Error logging in from RemoteIP: 1.2.3.4
И после многих часов я наконец получил регулярное выражение, которое работает в debuggerex, regextester и т. д. Но я не могу заставить fail2ban соответствовать ему.
Мое регулярное выражение в fail2ban выглядит следующим образом:
^E\/(Mon|Tue|Wed|Thu|Fri|Sat|Sun), ([0-1][0-9]) (\w\w\w) (\d\d\d\d) (00|[0-9]|1[0-9]|2[0-3]):([0-9]|[0-5][0-9]):([0-9]|[0-5][0-9]) (\+[0-9][0-9][0-9][0-9]): Error logging in from RemoteIP: <HOST>$
Я что-то упускаю из виду или что?
решение1
Поскольку я не могу обнаружить вашу проблему, вот общий метод исправления регулярного выражения сопоставления fail2ban.
- Убедитесь, что у вас есть файл, содержащий желаемое совпадение, например
/var/log/foo.log
- Вызов
fail2ban-regex /var/log/foo.log 'substring of regex'
- Если не совпадает, удалите несколько слов из регулярного выражения и перейдите к пункту 2.
- Если совпадение есть, добавьте несколько слов исходного регулярного выражения и перейдите к пункту 2 или:
- Если из пунктов 3 и 4 вы определили, какое слово неверно, исправьте его.
- Если после исправления полное регулярное выражение все еще не совпадает, повторите весь процесс с исправленным регулярным выражением.