limit_req zone + if в nginx

D
На сайте с 28.06.2008
Offline
1114
5826

Господа - как то можно совместить limit_req zone и if ?

Идея тормознуть всю нечесть что ходит по

if ($server_protocol ~* "HTTP/1.0")

Все юзеры у меня на HTTP/2, пару процентов старых девайсов на HTTP/1.1 + боты на нем же.

А по HTTP/1.0 одно гуано лазит.

Andreyka
На сайте с 19.02.2005
Offline
822
#1
Не стоит плодить сущности без необходимости
VM
На сайте с 31.03.2009
Offline
81
#2

Спасибо. 2 месяца голову ломал как при использовании limit_req_zone админка бы не ложилась...

Location разбил на статику и скрипты, дальше мозгов не хватило..

А тут вписал свой ip и тебя сервер больше не посылает.

Класс !

Качественные и недорогие (от 169р за 1 Gb Ram) KVM VPS ssd (http://ruweb.net/?from=23123) в России которые... работают.
D
На сайте с 28.06.2008
Offline
1114
#3

Я наверное че то недогоняю, вот пример использования мар

map "$http_user_agent:$method:$uri" $block {
"HackYou:POST:/admin/some/url" "1";
}

if ($block) {
return 403;
}

И сюдя моей логике далеко не программиста, я все равно упрусь в limit_req zone в if - что не поддерживается. Так ?

S
На сайте с 17.08.2008
Offline
114
#4

Возможно в мап надо создать доп.секцию с доверенными айпи, которые бы не попадали в бан.

R
На сайте с 14.02.2010
Offline
77
#5
Dram:
limit_req zone в if - что не поддерживается.

error_page 444 = @slowed;

if ($block) {

return 444;

}

location @slowed {

limit_req zone=...

...

D
На сайте с 28.06.2008
Offline
1114
#6

r0mik, я конечно не спец, но в вашем примере помоему не рабочий код. Где условие, фильтрующие траф по протоколу HTTP/1.0 ?

D
На сайте с 28.06.2008
Offline
1114
#7

Вот только сегодня с утра до 12 дня - 11587 запросов по HTTP/1.0 - сгруппировал все апи, пробил, сплошь парсеры и спамботы.

Было бы все же здорово затормозить эту нечисть.

LEOnidUKG
На сайте с 25.11.2006
Offline
1773
#8

Это не возможно. Это просто никому не нужно.

HTTP 1.1 это подверсия HTTP 1.0. Не возможно отключить их друг от друга.

сгруппировал все апи, пробил, сплошь парсеры и спамботы.

А судьбу по IP не предугадываешь?

p.s. Вот эту бы энергию в полезное русло.

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
D
На сайте с 28.06.2008
Offline
1114
#9

Леня, неверю!!! Ну ведь простое условие

if ($server_protocol ~* "HTTP/1.0")

неужели никак нельзя прилипть к нему limit_req zone ?

LEOnidUKG
На сайте с 25.11.2006
Offline
1773
#10

Это не имеет смысла т.к. потом эти боты просто будут ходить по http 1.1, для curl это добавить 1 строчку.

Поэтому я и говорил про русло :)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий