Наработки борьбы с DDOS и DOS

Sergey Smitienko hunter at comsys.com.ua
Sat Oct 27 12:18:10 MSD 2007


Alex Vorona пишет:

> elifan пишет:
>
>> Здравствуйте, коллеги.
>>
>> Кто-нибудь занимался борьбой с такими DoS аттаками на уровне nginx?
>> Если не жалко - поделитесь идеями. Скоро переедет ко мне несколько
>> сайтов которые периодически валят, надо подготовится...   
>
> FreeBSD, сетевая Intel fxp, порт 100Мбит, polling, http accept-filter
> в sysctl
> kern.maxfiles=90000
> kern.maxfilesperproc=80000
> net.inet.tcp.blackhole=2
> net.inet.udp.blackhole=1
> kern.polling.burst_max=1000
> kern.polling.each_burst=50
> net.inet.tcp.msl=10000
> kern.ipc.somaxconn=32768

Будьте готовы, что при атаке в системе закончатся сокеты для соединиея
nginx - backend. Так что я  бы добавил
sysctl net.inet.tcp.msl=3000 - уменьшаем время TIMEWAIT
sysctl net.inet.tcp.maxtcptw=40960 - ограничиваем количество TIMEWAIT 
сокетов
sysctl net.inet.tcp.nolocaltimewait=1 - отключаем TIMEWAIT для локальных 
сокетов.
sysctl net.inet.ip.portrange.first=1024
sysctl net.inet.ip.portrange.last=65535
sysctl net.inet.ip.portrange.randomized=0

Дальше резали на  уровне pf - загружали в таблицу IP с которых  
приходило  слишком
много хитов. PF с таблицами работает очень быстро. Исходники парсера 
логов есть на
http://www.comsys.com.ua/files.

-- 
Sergey Smitienko






More information about the nginx-ru mailing list