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

Как добавить джейл для определенных IP в fail2ban?

Я хотел бы добавить конкретный список IP-адресов, для которых я хотел бы получить электронное письмо от Fail2ban после того, как они сделают пару запросов «GET».

Шаблон, который следует искать в журналах доступа apache, - ^ 1.2.3.4 -. * $, Но fail2ban-regex не работает (и я не могу винить это), говоря:

Не удается удалить регулярное выражение. Индекс 0 недействителен Нет группы узлов в ^ 1.2.3.4 -. * $

Могу ли я как-то установить переменную "HOST" в пользовательских фильтрах / тюрьмах?

Регулярное выражение должно иметь группировку (круглые скобки) для IP-адреса, поэтому fail2ban знает какой IP забанить:

В каждой строке failregex часть, которая соответствует имени хоста или IP-адресу, должна быть заключена в (?P<host> ... ) бутерброд. Это специфичное для Python расширение регулярных выражений, которое присваивает содержимое совпадения имени <host>. В <host> Тег - это то, как вы сообщаете fail2ban, какой хост подключается, поэтому он должен присутствовать в каждой строке failregex. В противном случае fail2ban выдаст сообщение об ошибке «Нет группы хоста».

В вашем случае ваше регулярное выражение должно быть

^(?P<host>1.2.3.4) - .*$