Nginx too many writing connections

Igor Sysoev is at rambler-co.ru
Sat Jun 2 14:04:37 MSD 2007


On Sat, Jun 02, 2007 at 08:27:48AM +0000, Stan wrote:

> Igor Sysoev <is at ...> writes:
> 
> > 
> > On Sat, Jun 02, 2007 at 07:05:04AM +0000, Stan wrote:
> > 
> > > Наш сервер повадились атаковать. Во время атаки
> > число writing connections
> > > доходит до лимита (15К), в результате nginx ругается на то,
> > что слишком много
> > > коннектов и отвечает не на все запросы.
> > > Вопрос в следующем: как атакующие добиваются этого
> > (большого числа открытых
> > > writing коннектов) и как с этим бороться ?
> > 
> > Какая ОС ?
> > 
> > Нужно увеличивать worker_connection, число файлов, сокетов,
> > сетевых буферов.
> > Нужно уменьшать таймауты, размер буфера отправки.
> > Ещё можно поставить
> > 
> > reset_timedout_connection  on;
> > 
> 
> ОС: Linux, kernel 2.6.8
> В ядре вроде всё, что можно, поуменьшал:
> 
> net.ipv4.tcp_synack_retries = 1                                                
>                                                                       
> net.ipv4.tcp_syncookies = 1                                                    
>                                                                       
> net.ipv4.tcp_fin_timeout=25                                                    
>                                                                       
> net.ipv4.tcp_keepalive_time=1200
> 
> worker_connections сейчас стоит 8192.

8192 - это мало.

> Вообще хочется для атакующих сразу DROP в iptables делать, чтобы лишние ресурсы
> не расходывали. Однако, почему-то limit_zone_module не видит этого множества
> установленных коннектов и не блокирует их. Я так понимаю, эти запросы повисают
> где-то до NGX_HTTP_PREACCESS_PHASE :-/


-- 
Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list