Есть ли какой-либо инструмент в Linux для автоматического изменения iptables, чтобы заблокировать проблемного клиента на основе анализа журнала Apache? Я помогаю запустить сайт, который иногда бывает перегружен запросами от конкретного пользователя. Единственное решение - добавить запись в iptables, чтобы заблокировать клиента-нарушителя. Обычно уже слишком поздно, когда я могу отреагировать вручную - следовательно, я хотел бы, чтобы какой-то механизм, основанный на правилах, изменил iptables. Я предполагаю, что потребуется какая-то нечеткая логика или статистический анализ.
Вы можете использовать что-то вроде fail2ban, в который IIRC встроена программа проверки журналов Apache.
Вы можете рассмотреть возможность использования iptables для ограничения скорости входящих соединений. Что в самой базовой настройке даст вам возможность ограничить количество входящих подключений числом в минуту.
Например, вы можете разрешить только 10 эхо-запросов в минуту с одного IP-адреса. Он действительно становится немного более сложным, чем это, с возможностью устанавливать пределы пакетов поверх долгосрочных средних ограничений.
Несколько хороших инструкций по его настройке http://kevin.vanzonneveld.net/techblog/article/block_brute_force_attacks_with_iptables/
Проверять, выписываться OSSEC. Лучший анализатор файлов журнала, который я использовал. Он также поддерживает активный ответ на основе анализа.