Ограничение количества запросов(limit_req) в Nemesida WAF free

Добрый день! Как сделать ограничение количества запросов в Nemesida WAF free. Немезида не блочит Ddos атаки, во всяком случае, те запросы которые к нам приходят в последние дни (все началось после 24.02.). В личном кабинете никаких ddos не фиксирует. Мы добавили в виртуальный хост /etc/nginx/conf.d/waf.conf параметр limit_req, но такое ощущение, что он не отрабатывает (так как нагрузка сервера не падает и он не отбрасывает множественные запросы). Возможно в настройках waf это настраивается где-то еще(но я не нашел)?

Помогите пожалуйста решить проблему!!!
 

support

Well-known member
Staff member
Добрый день.

Блокирование DDoS-атак уровня приложений доступно только в коммерческой версии продукта. Подробней об ограничении FREE версии можно посмотреть на странице.
 
Что по поводу ограничить запросы средствами nginx (limit_req)? На этот вопрос вы не ответили. Почему не работает параметр в файле конфига waf.conf ?
 

support

Well-known member
Staff member
Добрый день.

nwaf_limit - устанавливает лимит заблокированных запросов, после которого IP-адрес будет заблокирован на время (в секундах), указанное в block_time.

Уточните, пожалуйста, у вас набирается заблокированных запросов больше лимита?
 
limit_req_zone $binary_remote_addr zone=perip:10m rate=1r/s; параметр в файле конфига. блокировка на 10мин при запросе 1раз в секунду

а у нас
root@waf-nginx:/var/opt/nginx/log# awk '{print $1}' access.log.1 | sort | uniq -c | sort -nr
2954455 181.214.173.128
1173884 84.17.47.29
937663 51.38.161.82
298659 65.109.6.195
296443 65.109.12.239
232775 109.107.208.11
227031 142.179.81.67
215901 185.158.115.229

Это только вершина в сортировке по логу(слева количество запросов, справа с какого адреса). Лог access.log.1 собирался всего 2 часа. Размер лога собранного за 2 часа = 5,8гб
 
это сортировка по кодам запроса за вчера(тоже часов за пять всего - лог переполняется, приходится чистить)

root@waf-nginx:/var/opt/nginx/log# awk '{print $9}' access.log | sort | uniq -c | sort -rn
27327002 503
8974759 301
2553444 200
32660 "-"
8095 150
6367 504
6118 400
2892 499
2888 157
310 408
53 222
22 403
14 "
9 0
5 202
2 \xD1\x81\xD1\x83\xD1\x89\xD0\xB5\xD1\x81\xD1\x82\xD0\xB2\xD1\x83\xD0\xB5\xD1\x82HTTP/1.1
2 HTTP/1.1"
1 ZY-\xB3\xD5\xE3\xE1\x9A\xCA$\xBE[?\xC1~g\x91"
1 z\xF4q\x9A\xA8\xB1\xD8s\xFE\xEAK\x91\xB1q'\xE3s\xFB\x1D\xA8"
1 %Z\xE5\xE7<\xA1\xC2\x81\xBFG\xDA+Y\x9C\x0Fg$"

а это сами запросы на которые ответом является код 200 (за то же время)

root@waf-nginx:/var/opt/nginx/log# awk '($9 ~ /200/)' access.log | awk '{print $7}' | sort | uniq -c | sort -rn
3060600 /
1850 /?PZcXkz=sZfTbI
1296 /?PmGgTR=kKsCqn
1168 /?Qqezjj=mMeQcw
1030 /?bKfxLB=IVkJoi
832 /?KvVVmt=KNVryt
740 /?gvukYB=uqOpbf
675 /?nwyPuE=FKwMpD
551 /?IYVVUm=wlhQSR
534 /?QfpFvf=JCxZNc
475 /?ObIjYL=BkdfSb
384 /?drYbvX=TxqeGr
297 /?pKMmNs=QpolHz
160 /?bgziFt=FEqQMF
151 /?DhFjPh=whdHoY
120 /?QxhpgM=oQfgIN
113 /?caJMWx=lgtJFq
95 /?xqcQCZ=AmwldG
86 /?HyphHH=AghJrN
85 /?KPfNTS=JLaQKa
8 /?flPGkv=rNgIwb
3 /?VTspkx=aMJQeG
2 /?RYeTig=gzoOxs
2 /favicon.ico
1 /upload/iblock/f88/96bulsutase47b7qqj4ejxxmfqar4vg6/300x135_v1-_2_.jpg
1 /robots.txt
1 /region/83_federal_zakon.php
1 /punktpropusk/PFO/sar.php
1 /index_contrast.php?type=special&PAGEN_2=130&PAGEN_1=620
1 /index_contrast.php?PAGEN_1=466&SHOWALL_2=1
1 /index_contrast.php?PAGEN_1=26&PAGEN_2=125
1 /gosserv/for/11/categorycategorycategorycategorycategorycategorycategorycategory?type=special%2F0%2F17592%2FGRAFIK%2F0%2F5402%2F0%2F121%2F0%2F527%2F0%2F542% 2F0%2F120%2F0%2F529%2F
1 /gosserv/for/11/categorycategorycategorycategorycategorycategorycategorycategorycategorycategory?type=special%2F0%2F17592%2FGRAFIK%2F0%2F5402%2F0%2F121%2F0% 2F18665%2F0%2F529%2F0%2F529%2F0%2F17592%2F0%2F529%2F0%2F17590%2F
1 /files/news/%D0%9E%D0%B3%D1%80%D0%B0%D0%BD%D0%B8%D1%87%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5%20%D0%BC%D0%B5%D1%80%D1%8B%2021%2003%2021%20%D0%B8%D0 %B7%20%D0%9C%D0%B8%D0%BA%D1%80%D0%BE%D0%B1%D0%B0.docx
1 /deyatelnost/zpp/?ELEMENT_ID=20679
1 /deyatelnost/zpp/?ELEMENT_ID=13451
1 /deyatelnost/zpp/?ELEMENT_ID=10707
1 /deyatelnost/sanitary-supervision/?ELEMENT_ID=8366
1 /deyatelnost/sanitary-supervision/?ELEMENT_ID=6573
1 /deyatelnost/sanitary-supervision/?ELEMENT_ID=19910
1 /deyatelnost/sanitary-supervision/?ELEMENT_ID=19751
1 /deyatelnost/information/ospa_obezyan/details.php?ELEMENT_ID=21811
1 /deyatelnost/information/ospa_obezyan/details.php?ELEMENT_ID=21810
1 /deyatelnost/information/ospa_obezyan/details.php?ELEMENT_ID=21808
1 /deyatelnost/information/ospa_obezyan/details.php?ELEMENT_ID=21807
1 /about/info/news_region/news_details_region.php?ELEMENT_ID=17775
1 /about/info/news/news_details.php?ELEMENT_ID=7686
1 /about/info/news/news_details.php?ELEMENT_ID=13609
 

support

Well-known member
Staff member

limit_req_zone $binary_remote_addr zone=perip:10m rate=1r/s; параметр в файле конфига. блокировка на 10мин при запросе 1раз в секунду

а у нас
root@waf-nginx:/var/opt/nginx/log# awk '{print $1}' access.log.1 | sort | uniq -c | sort -nr
2954455 181.214.173.128
1173884 84.17.47.29
937663 51.38.161.82
298659 65.109.6.195
296443 65.109.12.239
232775 109.107.208.11
227031 142.179.81.67
215901 185.158.115.229

Это только вершина в сортировке по логу(слева количество запросов, справа с какого адреса). Лог access.log.1 собирался всего 2 часа. Размер лога собранного за 2 часа = 5,8гб
Добрый день.

Это функционал относится к Nginx, ознакомитесь, пожалуйста, с официальной документацией Nginx.
 
Top