Fail2Ban, как сопоставить любую строку - PullRequest
0 голосов
/ 23 октября 2019

У меня очень простая ситуация, но я не могу понять, как работает регулярное выражение ... У меня есть приложение, генерирующее журнал, только когда возникает проблема с входом в систему. Таким образом, в журнале нет ни одной строки, за исключением случаев неправильного входа в систему или попыток сброса пароля слишком много раз. Таким образом, потенциально, мне даже не нужно искать определенную строку в журнале, любые записи совпадают. Вот пример журнала:

2019-10-20 18:44:35 127.0.0.1 login.php : Authentication error - account not initialized : client XXXX, login YYYY
2019-10-20 21:31:17 127.0.0.1 login.php : Authentication error - password error : client XXXX, login XXXX
2019-10-20 21:29:39 127.0.0.1 login.php : Authentication error - client contains wrong chars : client XXXX, login YYYY 
2019-10-21 06:25:25 127.0.0.1 login.php : Authentication error - account locked : client XXXX, login YYYY
2019-10-21 06:48:11 127.0.0.1 user.php : Authentication - Unlocking : client XXXX, login YYYYY

У меня проблема с регулярным выражением, потому что я не могу понять, как оно работает (в течение многих лет). Все, что я пробовал, выдает мне ошибки при запуске fail2ban: Невозможно скомпилировать регулярное выражение, Нет группы идентификаторов сбоев в «Ошибка аутентификации», ... Черт, это выглядит так просто!

1 Ответ

0 голосов
/ 23 октября 2019

Наконец-то ...

[INCLUDES]
before = common.conf

[Definition]
failregex = <HOST> .* Authentication

Обратите внимание, это работает, но я ничего не понял. Если у кого-то есть ссылка, где объясняется, как работает fail2ban. Я нашел много, но ни у одного из них нет четких объяснений.

...