On Fri, Mar 16, 2012 at 12:22:13AM +0200, Vadym S. Khondar wrote:

> Здравствуйте!
> 
> Столкнулся со следующей ситуацией:
> 
> есть сервер-фронтенд с nginx, два интерфейса - один для запросов 
> клиентов, второй для запросов к бекенду.
> Сервер периодически ддосят разными способами. После одной из таких атак, 
> когда практически остались только правильные запросы со стороны 
> клиентов, на интерфейсе к бекенду в течение длительного времени наблюдал 
> картину:
> 
> 13:26:44.675095 IP frontend_ip.27877 > backend_ip.80: Flags [.], ack 
> 2911656049, win 65535, length 0
> 13:26:44.675369 IP backend_ip.80 > frontend_ip.27877: Flags [.], ack 1, 
> win 8760, length 0
> 13:26:44.675377 IP frontend_ip.27877 > backend_ip.80: Flags [.], ack 
> 2911656049, win 65535, length 0
> 13:26:44.675619 IP backend_ip.80 > frontend_ip.27877: Flags [.], ack 1, 
> win 8760, length 0
> 13:26:44.675638 IP frontend_ip.27877 > backend_ip.80: Flags [.], ack 
> 2911656049, win 65535, length 0
> 13:26:44.675868 IP backend_ip.80 > frontend_ip.27877: Flags [.], ack 1, 
> win 8760, length 0
> 13:26:44.675876 IP frontend_ip.27877 > backend_ip.80: Flags [.], ack 
> 2911656049, win 65535, length 0
> 
> Временами количество такого трафика доходило до 20kpps.
> 
> Убийство nginx'а этого потока не остановила. Соединение это по нетстату 
> пребывало в FIN_WAIT_1.

когда оно там пребывало? до убиства или после?

> И таких потоков было несколько наряду с нормальными соединениями к бекенду.
> Поборолось явным block return для проблемных соединений.
> 
> uname -rms
> FreeBSD 9.0-RELEASE amd64
> nginx 1.0.10
> Интерфейс с проблемными соединениями - em.
> Есть pf с несколькими rdr и pass all no state для остального.

а нахера на интерфейсе к бекенду pf?

Ответить