У меня много запросов с реферером, таким как alexa.com, google.com и т. Д., На главную и пару других страниц сайта. Строка из access.log
109.172.15.39 - - [11/Jan/2013:02:30:30 +0400] "GET /topic?criteria=%&x=0&y=0&pageNo=34 HTTP/1.1" 403 571 "http://www.alexa.com/" "Mozilla/5.0 (compatible; MSIE 7.0; Windows NT 5.1)"
Я использую iptables для блокировки IP-адресов вручную, но я нашел сценарий (D) DoS Deflate и добавил его в cron, но он дал никаких результатов. После этого добавляю в конфигурацию nginx следующий
if ($http_referer ~* "ask\.com") {
return 403;
}
....
Он работает, и теперь я могу открыть сайт. Но я думаю, это плохая идея. Посоветуйте, пожалуйста, какие-то способы защиты от DDOS-атак.
Использование iptables для блокировки DoS-атаки не является правильным решением. Ваш брандмауэр должен отбрасывать пакеты, так не означает ли это, что трафик в любом случае нанесет ущерб? Потребление полосы пропускания здесь является реальной проблемой.
Я бы посоветовал связаться с вашим интернет-провайдером, чтобы они могли остановить атаку на магистраль.
нота Я бы рассмотрел другие причины, по которым ваш сайт не отвечает. С тем, что вы предоставили, я не вижу причин думать, что проблемы возникают из-за большого объема трафика.