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

пользовательский фильтр для Fail2Ban

Я установил fail2ban и пытаюсь настроить его для блокировки IP-адресов, которые появляются в определенном сообщении, которое появляется в системном журнале. Сообщение в системном журнале:

racoon: ERROR: Invalid exchange type 243 from 103.14.62.181[11950]

Обычно каждое сообщение имеет свой IP-адрес, и номер в скобках (порт?) Также отличается. Похоже, я могу создать собственный фильтр, выполнив следующие действия:

racoon: ERROR: Invalid exchange type 243 from <HOST>

Но у меня вопрос, могу ли я остановиться на этом и сделать свое дело с помощью fail2ban, или мне нужно указать что-то вроде этого:

racoon: ERROR: Invalid exchange type 243 from <HOST>[IDONTKNOWWHATGOESHERE]

Если мне нужно указать что-то вроде приведенного выше, какой эффективный подстановочный знак должен появиться в скобках? Документация fail2ban об OpenVPN (ближайший пример) показывает это:

http://www.fail2ban.org/wiki/index.php/OpenVPN

* <HOST>:[0-9]{4,5} Connection reset, restarting \[[0-9]{1,2}\]

Похоже, они используют [0-9] {4,5} в качестве подстановочного знака для номера порта. Сработает ли это в моем случае или нет?

Я совершенно не согласен с моим примером для своего фильтра?

Конечная цель здесь состоит в том, чтобы все, что не удается с ошибкой обмена 243, было добавлено в таблицы IP с флагом DROP. У меня могут возникнуть дополнительные вопросы о моем фильтре и о том, что нет, после того, как я получу ответ на первый вопрос.

Да, вы можете остановиться на этом, и fail2ban сделает это. Вы можете проверить это с помощью fail2ban-регулярное выражение (1) утилита. Резюме

fail2ban-regex [OPTIONS] <LOG> <REGEX> [IGNOREREGEX]

поэтому, используя проделанную вами работу (обратите внимание, что мне пришлось добавить дату и время в начало предоставленной вами записи в журнале, иначе она жалуется.)

fail2ban-regex "Mar  3 07:36:19 racoon: ERROR: Invalid exchange type 243 from 103.14.62.181[11950]" "racoon: ERROR: Invalid exchange type 243 from <HOST>"

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

Use regex line : racoon: ERROR: Invalid exchange type 243 from <HOST>
Use single line: Mar  3 07:36:19 racoon: ERROR: Invalid exchange ty...

Matched time template MONTH Day Hour:Minute:Second
Got time using template MONTH Day Hour:Minute:Second

Results
=======

Failregex: 1 total
|- #) [# of hits] regular expression
|  1) [1] racoon: ERROR: Invalid exchange type 243 from <HOST>
`-

Ignoreregex: 0 total

Summary
=======

Addresses found:
[1]
    103.14.62.181 (Mon Mar 03 07:36:19 2014)

Date template hits:
2 hit(s): MONTH Day Hour:Minute:Second

Success, the total number of match is 1