допустим 100 в минуту.
допустим у меня 40 сайтов и чтоб в каждый конфиг не вписывать это как то можно сделать?
в апаче это делается просто evasive и все работает. в nginx не гугл не gpt не смог помочь.
проверяю через из стороннего сервера.
ab -n1000 -c50 https://123.com/
кто будет давать ссылку https://blog.nginx.org/blog/rate-limiting-nginx это тоже не работает я хз почему.
И там вариан с конкретным сайтом что мне не надо
добавлял в nginx.conf
limit_req_zone $binary_remote_addr zone=mylimit:10m rate=10r/s;
на сайте одном (а мне на все надо)
в логах на порт веб сервера запросы валят и ип сервера отправлящего запросы отображается верно.
server {
location / {
...
limit_req zone=mylimit;
...
}
}
так же пробовал через иптаблес
iptables -A INPUT -p tcp --dport 80 -m recent --set &&
iptables -A INPUT -p tcp --dport 80 -m recent --update --seconds 60 --hitcount 300 -j REJECT --reject-with tcp-reset &&
iptables -A INPUT -p tcp --dport 443 -m recent --set &&
iptables -A INPUT -p tcp --dport 443 -m recent --update --seconds 60 --hitcount 300 -j REJECT --reject-with tcp-reset
ОШИБКА: iptables v1.8.7 (nf_tables): RULE_APPEND failed (Invalid argument): rule in chain INPUT
какой инвалид аргрумент он утаивает
tcpdump запросы отображает все корректно
вобщем как я понял нет модуля with-http_limit_req_module
как его добавить? без компиляции? он у меня из apt