fail2ban apache-badbots не блокирует IP

Я пытаюсь получить fail2ban, чтобы заблокировать работу моего веб-сайта некоторыми вредоносными ботами. Я начал с того, что просто включил "apache-badbots" по умолчанию в jail.local (я изменил путь к журналу, чтобы он соответствовал моим собственным журналам и пользователю, которому он отправляет отчеты)

enabled = true фильтр = apache-badbots действие = iptables-multiport [имя = BadBots, порт = "http, https"] sendmail-buffered [имя = BadBots, lines = 5, dest = jisti] logpath = / var / logs / httpd / access_log bantime = 172800 maxretry = 1

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

Я проверил apache-badbots.conf в фильтрах. Я пришел к выводу, что регулярное выражение, вероятно, не соответствует пользовательскому формату журнала, который я использовал, и на самом деле не ищет конкретного плохого бота, который забивает мой сайт. Я возился с failregex, а затем протестировал с помощью

fail2ban-regex / var / log / httpd / access_log /etc/fail2ban/filter.d/apache-badbots.conf

. Это сообщение об успехе и более 300 совпадений. «Ухуху», - подумал я. Я перезапустил fail2ban. Вскоре после этого я увидел, как бот снова забивает сайт, а fail2ban ничего не делает. Я проверил iptables, просто чтобы убедиться, что он что-то делает, но неправильно принимает правило iptables

iptables -S -P ВВОД ПРИНЯТЬ -P ПРИНЯТЬ ВПЕРЕД -P ПРИНЯТЬ ВЫХОД -N fail2ban-BadBots -N fail2ban-SSH -N fail2ban-php-url-open -A ВХОД -p tcp -m tcp --dport 22 -j fail2ban-SSH -A fail2ban-BadBots -j ВОЗВРАТ -A fail2ban-SSH -j ВОЗВРАТ -A fail2ban-php-url-open -j RETURN

Также я должен упомянуть, когда он блокирует атаки SSH, он правильно добавляет правила iptables. Так что что-то работает, только не apache-badbots.

Затем я попытался настроить ведение журнала fail2ban для отладки и чтения fail2ban.log. К сожалению, там ничего не помогло. Были записи журнала для запуска тюрьмы и определения правильного регулярного выражения, а также определения действий. Однако в журнале не было никаких записей для сопоставления jail apache-badbots и принятия мер против любого IP.

Также я упомяну, что тюрьма SSH, похоже, работает нормально, поэтому fail2ban действительно работает на компьютере, только не тюрьма apache-badbots.

Что мне нужно сделать, чтобы заставить ее работать?

3
задан 29 April 2016 в 20:12
1 ответ

В вашем jail.local вы направляете fail2ban на / var / logs / httpd / access_log вместо / var / log / httpd / access_log , как в вашем тесте регулярного выражения.

2
ответ дан 3 December 2019 в 06:58

Теги

Похожие вопросы