Идёт флуд на сервер. В логах такие строки, разные только айпи адреса
88.81.228.6 — - [06/Sep/2012:12:53:37 +0400] «GET / HTTP/1.0» 200 36271 "-" «Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US)» "-" | "-"
Хочу это дело фильтровать nginx
server {
.....
set $add 1;
set $ban '';
###### Rule 1 ########
if ($http_referer = '-' ) {
set $ban $ban$add;
}
if ($request_uri = '/') {
set $ban $ban$add;
}
if ($http_user_agent = 'Mozilla\/5\.0 \(Windows\; U\; Windows NT 6\.1\; en\-US\)') {
set $ban $ban$add;
}
if ($ban = 111) {
return 444;
}
######################
......
}
Но запросы всё равно проходят дальше nginx. Как правильно написать условия?
PS: Ещё подскажите как в iptables задать максимальное обращение к странице за единицу времени