Защита от DDoS на nginx В nginx есть параметр limit_req_zone, с его помощью можно ограничивать количество одновременных запросов к сайту с одного ip адреса. Создадим файл /etc/nginx/conf.d/mapping.conf geo $limited { default 1; <ip_address> 0; } map $limited $limit { 1 $binary_remote_addr; 0 ""; } limit_req_zone $limit zone=defender:10m rate=200r/s; $binary_remote_addr - зарезервированная переменная в nginx, в ней будет хранится ip клиента. zone=defender:10m - defender это произвольное имя зоны, 10m - объем памяти в мегабайтах для хранения данных в ней. rate=200r/s - ограничение равное 200 запросов в секунды с одного ip клиента. Тут мы используем модуль geo, который нам позволяет задать не просто IP адрес, но и подсеть из адресов. Присваиваем это все переменной $limited и создаем маппинг, где дефолтное значение равно 1, добавленные нами IP адреса или подсети будет иметь значение 0. Значение 0 в данном случае разрешающее, т.е. то, что имеет значение 0 не будет попадать под ограниче