Назад | Перейти на главную страницу

сопоставление регулярных выражений fail2ban на тестовых сайтах, но не сам fail2ban

Привет, я пытаюсь сопоставить следующую строку журнала:

E/Sun, 04 Mar 2018 21:40:32 +0100: Error logging in from RemoteIP: 1.2.3.4

И спустя много часов у меня, наконец, есть регулярное выражение, которое работает с debuggerex, regextester и т.д.

Мое регулярное выражение в 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>$

Я упустил здесь что-то базовое или что?

Поскольку я не могу определить вашу проблему, вот общий метод исправления регулярного выражения соответствия fail2ban.

  1. Убедитесь, что у вас есть файл, содержащий желаемое совпадение, например /var/log/foo.log
  2. Вызов fail2ban-regex /var/log/foo.log 'substring of regex'
  3. Если он не совпадает, удалите несколько слов из регулярного выражения и перейдите к 2.
  4. Если он совпадает, добавьте несколько слов исходного регулярного выражения и перейдите к 2, или:
  5. Если из 3. и 4. вы точно определили, какое слово неверно, исправьте это.
  6. Если после исправления полное регулярное выражение по-прежнему не соответствует, повторите весь процесс с фиксированным регулярным выражением.