DDoS + nginx + FreeBSD ?

12
S
На сайте с 14.08.2003
Offline
43
2260

В связи с DDoS'ом дедика, появилась пара вопросов.

1. На серве стоит nginx, тупо отдающий статик страничку. Пэхи нет. Когда netstat -na | wc -l начинает показывать около 37 тыс. одновременных коннектов - сервер перестает справляться. При этом top показывает idle около 60%, т.е. CPU справляется. Вопрос - где слабое место и как можно оптимизировать это дело? Может, кэш какой-то? или еще что-то?

2. Когда убиваешь nginx, кол-во коннектов по netstat начинает падать, но делает это очень медленно. Доходит до 3000 примерно за 5 минут. Почему они так долго держатся? Как можно уменьшить это время?

3. Как поведет себя iptables если в нем окажется окол 50 тыс. забаненных айпишников? Не сложит ли такая бан-таблица серв к чертям?

Святослав Черкасов
Andreyka
На сайте с 19.02.2005
Offline
822
#1

1) Настроить фрю как рекомендовал Сысоев

2) Версия фряхи какая?

3) Какой iptables на фре? Шутки шутим? На фре есть pf. Положит конечно, причем я думаю что там еше и спуф-син идет, адреса левые

Не стоит плодить сущности без необходимости
Boris A Dolgov
На сайте с 04.07.2007
Offline
215
#2

на FreeBSD есть iptables? :o

Boris A Dolgov добавил 25.05.2009 в 13:56

Судя по числу, надо попробовать увеличить количество воркеров nginx, либо количество открытых файлов и соединений на один воркер.

С уважением, Борис Долгов. Администрирование, дешевые лицензии ISPsystem, Parallels, cPanel, DirectAdmin, скины, SSL - ISPlicense.ru (http://www.isplicense.ru/?from=4926)
M
На сайте с 19.09.2007
Offline
112
#3
Boris A Dolgov:
на FreeBSD есть iptables? :o

Boris A Dolgov добавил 25.05.2009 в 13:56
Судя по числу, надо попробовать увеличить количество воркеров nginx, либо количество открытых файлов и соединений на один воркер.

воркеров там стока скок камешков (коре2 там) - на сей момент 2 воркера

есть смысл добавить ?

файлов ... каких файлов ?

kern.maxfiles: 256000

kern.maxfilesperproc: 230400

kern.openfiles: 4983

эрлимиты тоже до дури,

при этом такая же атака в другом ДЦ вообще раз в неделю - нгикс отстреливается не напрягаясь вообще, машина стоит как часики . причем машина с одним камнем, просто 4пенек.

пээфкой банить пробовал , ну банит. за сутки через лог "замечен что он ***ка участник доса" ориентировочно четверть миллиона было ИПов . естественно каждый в надцать потоков. Сети типа африки типа 41/8 ,112/8 113/8 115/8 116/8 чуть ли не полностью участие принимают.

аж интересно кому мы там в душу так нага***ли :)

при попытке ограничить через ipfw по setup limit машина через 5 сек начинает верещать по поводу "дофига динамик рулесов", собственно это не сильно удивительно,

поэтому было выключена ipfw setup limit и оставили только deny table -производительность выросла , проц холодный практически ... почти ожили

но регулярно боты добавляются и кончаются сокеты. я немного в растеряности :( так что присоединяюсь к вопросу "куда еще глянуть", ну кроме хендбука :)

как бы отбиваемся вроде более менее успешно, машинка подтупливает слегка, но отдает контент всем, в том числе и досерам но что-то я сам уже туплю , что-то с испугу проглядел ....:\

4пальца
На сайте с 30.03.2006
Offline
99
#4

Для более быстрого закрытия соединений нужно уменьшить число keepalive_timeout в конфиге nginx.

Размещаю рекламные статьи на площадках тематики "Новости/СМИ": тИЦ 850
Andreyka
На сайте с 19.02.2005
Offline
822
#5

Жаль, что в ipfw/pf нет аналога модуля iptables geoip

Можно было бы одной строкой забанить всю африку

Lupus
На сайте с 02.11.2002
Offline
241
#6
Andreyka:
Жаль, что в ipfw/pf нет аналога модуля iptables geoip
Можно было бы одной строкой забанить всю африку

Если это кому-то надо, то заполнить банную таблицу по геопризнаку можно полудюжиной строк шелл-кода.

There are two types of people in this world: 1. Those who can extrapolate from incomplete data.
Boris A Dolgov
На сайте с 04.07.2007
Offline
215
#7
Lupus:
Если это кому-то надо, то заполнить банную таблицу по геопризнаку можно полудюжиной строк шелл-кода.

И получить пару (десятков?) тысяч правил вместо одного.

Lupus
На сайте с 02.11.2002
Offline
241
#8
Boris A Dolgov:
И получить пару (десятков?) тысяч правил вместо одного.

Если бы вы внимательно читали, то заметили бы слово "таблица".

Andreyka
На сайте с 19.02.2005
Offline
822
#9

Так у меня есть те самые пара строк, которые сначала делают таблицы а потом льют диапазоны из базы geoip

Дело в том, что в iptables это все-равно работает быстрее и удобнее чем во фре

Lupus
На сайте с 02.11.2002
Offline
241
#10
Andreyka:
Дело в том, что в iptables это все-равно работает быстрее и удобнее чем во фре

Насчет быстрее, чем pf, я бы не был категоричен. По крайней мере, без замеров производительности.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий