Как остановить ботов, использующих nginx?

Мне нужно обнаружить ботов, которые действуют как аутентифицированные пользователи, и насыщать доступные соединения с базой данных, отправляя повторяющиеся запросы. Я задаюсь вопросом, возможно ли остановить фиктивные их, используя директивы nginx?

Идея состоит в том, чтобы настроить некоторые правила в конфигурации nginx, чтобы автоматически запрещать IPS, которые соединяют больше, чем определенные номера за определенный период времени (скажем, 30 раз в минуту).

1 ответ

Решение

Для этого есть модуль! http://wiki.nginx.org/HttpLimitReqModule. В документации к модулю есть хороший пример, которого достаточно для начала работы. Однако есть некоторые довольно серьезные ограничения с ограничением скорости на основе IP - CGN и некоторые виды принудительных прокси заставляют нескольких пользователей приходить с одного IP-адреса, а другие виды принудительных прокси заставляют одного пользователя приходить с нескольких IP-адресов. Тогда вы получите удовольствие и игры с ограничением скорости в кластере с балансировкой нагрузки... но если вы счастливы справиться с этими компромиссами, модуль nginx делает именно то, что говорит на жестяной панели.

Другие вопросы по тегам