Здравствуйте, nginx-ru.
Имеется ли возможность указать Nginx закрывать keep-alive соединение
после обработки некоторого числа запросов ?
На сервер периодически производятся DOS-атаки.
Число соединений к серверу ограничивается iptables следующим образом:
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -m state --state ESTABLISHED -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -m connlimit --connlimit-above 15
--connlimit-mask 32 -j REJECT --reject-with icmp-port-unreachable
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -m hashlimit --hashlimit 2/sec
--hashlimit-mode srcip --hashlimit-name port80 --hashlimit-burst 20 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -j LOG
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -j DROP
Но это не мешает установить некоторое число соединений и слать в них
огромное число запросов.
Результат (статистику на сегодня, 90 Kb) можно увидеть на
http://clamav.tomsk.ru/nginx/
Статистика собирается через stub_status. Возможна ли ситуация, что
запрос (например в силу некорректности) отображается в выводе
stub_status, а в лог не записывается ?
В логах nginx ожидаемого мной числа записей лога запросов не нахожу
(часть location проксируется на бакэнд и лог поэтому отключен).
Какие еще есть методы борьбы с атаками ?
--
С уважением,
Pavel V Rochnyack mailto:pavel2000@xxxxxx
ICQ: 12 29 7 27 27