The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Решение от ddos"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Информационная безопасность (Firewall и пакетные фильтры / Linux)
Изначальное сообщение [ Отслеживать ]

"Решение от ddos"  +/
Сообщение от gumentchuk (ok) on 19-Ноя-12, 23:30 
Есть сервак на хостинге, работает под Centos 6.2. Вся борьба с ддос ложится на фаервол, sysctl и некоторые параметры apache, nginx. Иногда бывают периоды, когда сутки сайты на серваке тупят сильно, потом отпускает и все работает отлично. Оперативная память при тупеже фактически не занята, ее 12 Гб, а процессор Xeon X3430 может прыгать на четырех ядрах до 100%. К примеру лог сайта вырос до 350Мб, в среднем добавляется 2000 строчек в секунду, еще один сайт имеет 90 Мб логов. То, что это ддос сомнений нет, досят, что самое интересное на протяжении суток по Росии с 00:00.
Есть несколько идей, посоветуйте есть ли смысл хоть одной из них:
1. Перед сервером поставить комп с FreeBSD (на нем pf), который возьмет фильтрацию на себя, а основной сервер только будет обрабатывать http и mysql запросы
2. Дополнительно у хостинга заказать еще один физический порт  и рознести самые тяжелые сайты на физические интерфейсы (остальное поднять на виртуальных, распределив по данным интерфейсам)
3. Поменять сервак на более мощный, с возможностью установки второго проца
4. Купить Cisco, хотя я думаю большинство ее функций можно организовать и на компе с FreeBSD
5. Или же не спешить и еще поковырять Centos, хотя уже закончатся скоро идеи куда ковырять
Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Решение от ddos"  +/
Сообщение от PavelR (ok) on 20-Ноя-12, 08:32 
> Есть сервак на хостинге, работает под Centos 6.2.

ок, бывает.

> Вся борьба с ддос ложится на фаервол, sysctl и некоторые параметры apache, nginx.

включаем модуль телепатического анализа настроек... проверка.... настройкивпорядке...

>Иногда бывают периоды, когда сутки сайты на серваке тупят сильно, потом отпускает и
> все работает отлично.
> Оперативная память при тупеже фактически не занята, ее
> 12 Гб, а процессор Xeon X3430 может прыгать на четырех ядрах
> до 100%.

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


> К примеру лог сайта вырос до 350Мб,

какие-то нереально страшные объемы :-)))

>в среднем добавляется 2000 строчек в секунду, еще один сайт имеет 90 Мб
> логов. То, что это ддос сомнений нет, досят, что самое интересное
> на протяжении суток по Росии с 00:00.

Как только админ не может справиться с сервером - сказать клиенту, что это DDOS - лучшее решение. Вы уверены, что 2000 строчек в секунду - это не лог отдачи статики ?

> Есть несколько идей, посоветуйте есть ли смысл хоть одной из них:
> 1. Перед сервером поставить комп с FreeBSD (на нем pf), который возьмет
> фильтрацию на себя, а основной сервер только будет обрабатывать http и
> mysql запросы

Конечно имеет смысл, больше железа - больше денег админу за его обслуживание.

> 2. Дополнительно у хостинга заказать еще один физический порт  и рознести
> самые тяжелые сайты на физические интерфейсы (остальное поднять на виртуальных, распределив
> по данным интерфейсам)

Конечно, мы же видим что всё уже упирается в пропускную скорость порта. Это же DDOS, а вы раздаете статику - значит надо 10Gb порт заказывать. (Да, был DDOS тупой, на главную страницу. Отдача 50Кбайт страницы "всем желающим" положила 1Gb порт по исходящему трафику).

> 3. Поменять сервак на более мощный, с возможностью установки второго проца

Два проца - это мало, надо больше. Эх, Intel, почему нельзя, а ?

> 4. Купить Cisco, хотя я думаю большинство ее функций можно организовать и
> на компе с FreeBSD

Конечно же все циски одинаковы.... И да, большинство функций - да, можно организовать на компе с FreeBSD.

> 5. Или же не спешить и еще поковырять Centos, хотя уже закончатся
> скоро идеи куда ковырять

Не спешить - это всегда разумно. И это единственная идея, которая имеет смысл.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Решение от ddos"  +/
Сообщение от gumentchuk (ok) on 20-Ноя-12, 10:08 
Спасибо за пинок, еще не смотрел в сторону Xchace, должен будет немного снизить нагрузку на проц
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Решение от ddos"  +/
Сообщение от PavelR (ok) on 20-Ноя-12, 10:19 
> Спасибо за пинок, еще не смотрел в сторону Xchace, должен будет немного
> снизить нагрузку на проц

Если это реальный DDOS, то вам нужен скрипт, который будет анализировать лог-файл запросов веб-сервера, находить аномальную активность и блокировать её в файрволле.

Кэширование особо не поможет, т.к. даже если в ответ на запросы отдавать статический файл - можно забить исходящий канал.

В общем случае, отдавать ответы на DDOSзапросы смысла не имеет, надо файрволлить.

поскольку ОС - линукс, а файрволл - iptables - то обязательно использование ipset.

Тогда вы сможете выдержать этот DDOS (не забивающий входящий канал, а работающий на перегрузку веб-сервера).

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "Решение от ddos"  +/
Сообщение от gumentchuk (ok) on 20-Ноя-12, 11:15 
>[оверквотинг удален]
>> снизить нагрузку на проц
> Если это реальный DDOS, то вам нужен скрипт, который будет анализировать лог-файл
> запросов веб-сервера, находить аномальную активность и блокировать её в файрволле.
> Кэширование особо не поможет, т.к. даже если в ответ на запросы отдавать
> статический файл - можно забить исходящий канал.
> В общем случае, отдавать ответы на DDOSзапросы смысла не имеет, надо файрволлить.
> поскольку ОС - линукс, а файрволл - iptables - то обязательно использование
> ipset.
> Тогда вы сможете выдержать этот DDOS (не забивающий входящий канал, а работающий
> на перегрузку веб-сервера).

У меня скрипт есть, только он сейчас банит по количеству соединений на 80 порт. Вытягиваю с помощью netstat
у меня реализовано 2 списка ipset: один постоянный, а второй 10 минутный для IP со скрипта бана, попробую скрипт оптимизировать под tcpdump и лог Apapche+ лог Nginx
все IP из списков рублю не DROP, а REJECT с опцией tcp-reset, так сбрасывает соединения

Кроме того выставлены connlimit на 80 порт, на маску 32 5, на 24 10
Лог постоянно заполнен ответами о блокировке, за лимит как правило выходит 4-8, но их много
Если бы один IP или сеть, а тут толпа с сетей абсолютно разных, ладно бы Китай или Иран (которые у меня в вечном бане), а тут сетки из России, еще и в разнобой. Забанить сеть из России с маской 8, это всеравно, что петлю на шею одеть для ресурсов направленности СНД и России.
Количество процесов apache ограничено 50, макс клиентов 300, в резерве 20 процесов.
Но при тупеже проще убрать эти параметры, тогда хотябы открываются страницы с тупежом, а когда включено, то Apache может и вовсе не открыть нормальному пользователю страницу, поцессы все заняты. Но убрал это, по ssh начинается тупеж.

Что самое интересное вчера был тупеж, сегодня сайты нормально открываются. Если начинаются тормоза, то как правило они продолжаются сутки, после этого попуск.

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

Еще одним негативным фактором есть использование directadmin, который дырявый и пришлось не один день ковырять его, чтобы обеспечить безопастность, а потом как оказалось закрыть дыру в exim от спама.

Если бы не Directadmin, я бы уже давно перешел на чистый nginx, а так только поставил его как прокси.

Все виртуальные хосты разнесены по IP, а процессы apache запускаются под пользователями в целях безопастности. Поэтому nginx пока крутится на главном сайте под его пользователем, если переводить остальные вылетает очень часто белое окно, пишут, что php_fpm помагает, но он по моему требует 5.3 php. Еще одна лажа, что сайты на Joomla, и версии от 1,5 до 3.0. php 5.2 обновишь до 5.3 половина перестанет работать нормально. Локально проверено. А сидеть ковырять каждый уж очень не интересно.

Фаервол вообще настроен от заприщающего правила -P INPUT DROP и открыто только нужные порты.

Может есть какие еще советы, ведь сайты находятся на биржах ссылок, есть реклама, пропадание на длительное время может завести в бан на биржах.

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

5. "Решение от ddos"  +/
Сообщение от gumentchuk (ok) on 20-Ноя-12, 11:26 
за xchace заговорил, вроде пишут, что снижает нагрузку с проца, нет необходимости компилировать скрипты, для этого надо больше оперативы, а у меня ее свободной до 6 Гб.
Мне сервачек то дали с своей оперативой 4 Гб, и еще две планки по 4Гб.
Вот с чем, а с этим проблем никогда нет.

И еще интересная вещь, joomla при запросе одновременно создает на двух сайтах до 8 соединений, что придает особого колорита при атаке.

Стабильно раз на две недели я начинаю боротся с мельницами целые сутки, поэтому и начинаю задумываться о разных вариантах, которые были написаны в первом посту.

Поэтому не спешить, а ждать не получается.

Я еще и не знаю че меня угораздило Centos поставить, всю сознательную жизнь занимался freebsd (очень давно debian, хотя от Centos в плане настройки мало чем отличается), а тут послушал товарищей и поставил щастье. Понятно, что любую систему можно до ума довести, но по моему в freebsd уже много чего и так до ума доведено. Да и pf привлекательнее выглядит, лично мое мнение.

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

6. "Решение от ddos"  +/
Сообщение от RandomOracle on 20-Ноя-12, 12:07 
>[оверквотинг удален]
> Стабильно раз на две недели я начинаю боротся с мельницами целые сутки,
> поэтому и начинаю задумываться о разных вариантах, которые были написаны в
> первом посту.
> Поэтому не спешить, а ждать не получается.
> Я еще и не знаю че меня угораздило Centos поставить, всю сознательную
> жизнь занимался freebsd (очень давно debian, хотя от Centos в плане
> настройки мало чем отличается), а тут послушал товарищей и поставил щастье.
> Понятно, что любую систему можно до ума довести, но по моему
> в freebsd уже много чего и так до ума доведено. Да
> и pf привлекательнее выглядит, лично мое мнение.

День добрый, напишите мне в аську 614979759, помогу в отражении атаки

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру