Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Сброс сое динений в ngin x
как вариант:
[root@srv001 ~]# cat /etc/crontab
...
0 0 * * * root /usr/local/etc/cron/pf-forbidden-smtp
...
[root@srv001 ~]# cat /usr/local/etc/cron/pf-forbidden-smtp
#!/usr/local/bin/bash
cat /srv/CommuniGate/CGP*/statistics.dat | grep '^\"SMTP \[.*\]\"=[0-9]
[0-9][0-9][0-9]*;$' | sed 's/^\"SMTP \[\(.*\)\]\"=[0-9][0-9][0-9]
[0-9]*;$/\1/g' > /usr/local/etc/pf-forbidden-smtp.lst
/etc/rc.d/pf reload
[root@srv001 ~]# cat /usr/local/etc/pf.conf
...
table <forbidden> persist file "/usr/local/etc/pf-forbidden-smtp.lst"
file "/usr/local/etc/pf-forbidden-http.lst"
block drop quick from <forbidden>
block drop quick to <forbidden>
...
On 22.05.2009, at 18:14, Konstantin Belov wrote:
Алексей wrote:
Здравствуйте,
Я сейчас фильтрую DDoS атаку, на основе
некоторых параметров отсеиваю
ботов. Сейчас у меня установлена return
503; для ботов, это безусловно
помогает но когда ботов слишком
много и они начинают посылать от 3к
запросов в секунду nginx начинает
ощутимо тормозить и нагружать
процессор. Что можно сделать чтобы он
не обрабатывал соединения а
завершал их если запрос
соответствует условиям? IP ботов
конечно
добавляются в фаерволл но перед этим
они обрабатываются nginx'om и
когда идёт 15к запросов/сек nginx
начинает очень сильно тормозить и
приходиться ждать пока IP добавятся в
фаерволл и nginx разгрузится.
Подскажите что можно предпринять.
Лучше логировать IP и самых активных
блочить фаерволом.
ipfw2 во freebsd отлично с этим справляется
(списки доходили до 40-50к уникальных ip)
|