Для начала блок в iptables подсетей herzner, ovh и тп…
Если запрашиваемые данные существуют - кешировать их…
Если не существуют - то добавлять ip всех кто такое запрашивает в блок, например через fail2ban…
и главное если у вас действительно по ip флуд, а у вас обычный сайт куда посетили ходят по домену, то в самом nginx сделать что бы он перестал отвечать по ip…
Не пытайся защититься от атак с помощью конфигурации Nginx. Ты так потратишь больше ресурсов, чем потенциально сможешь сэкономить. Блочь через iptables + ipset.
Ну и через это я тоже не умею iptables + ipset., и блочить как типа по ип? Вдруг обычные клиенты тоже попадут под бан, есть норм где написано как это делать iptables + ipset?
Да, блочить по IP-адресу. Просто дропать, без отсылки RST.
Вдруг обычные клиенты тоже попадут под бан
Возможно. Придётся выбрать, хочешь ли ты обрабатывать каждый запрос или нет. Блочить по параметрам в Nginx может оказаться дороже по ресурсам, чем просто отдавать ответы.
есть норм где написано как это делать iptables + ipset?
Ну меня сервер нормальный, там 2 ядра, 4гб озу и 30гб ссд, лучше фильтровать через нгинс попробовать, чтоб клиенты не пострадали, если уж не поможет, тогда уж через блок)
Просто как правильно файл конфиг нгинса настроить я хз, мне бы, чтоб скинули текст файл пример как выставить такие настройки, а то вдруг я не туда впишу
https://nginx.org/ru/docs/http/ngx_http_limit_conn_module.html
Ну вроде как у тебя правильно сделано... Или не работает?
Вообще в документации написано, что ограничения применяются на каждый IP в частности.
Т.е. если у тебя 10 запросов/сек и все с разных IP, это скорее всего не поможет.
У тебя запрашивают только статику?
Как вариант, можно страницы закешировать nginx-ом, чтобы не насиловать движок генерацией контента.
Главное не забыть про то, что страницы с cookie и прочее лучше не кешировать, а то так и до уязвимостей дойти можно.
Он как то странно работает CloudFlare, там норм ток проверка капчи и все, но это не спасает, последние запросы флуда на сайт не отображаются, может там есть лимит трафика хз, я через него ток блокировал некоторые ип, с которых были дос флуды запросов
Ну когда был дос флуд запросов типа GET/29i1934? трафик не падал особо, то есть я изменил файл конфиг нгинса вписал туда эти строки и перезапустил весь сервер, и флуд так же был( хз че делать
Пока ток помогла настройка sysctl и в nginx настройка от флуд, чтоб сервер не ложился вообще, но вот как отсеить напрочь этот дос когда он бывает, я хз
Там даже через фирефол допустим, что жать, чтоб забанить, он как бы не очень ясно показывается, фильтр или исключения, это на выбор показывается в фиревол))