The OpenNET Project / Index page

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



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

OpenNews: Новая версия пакетного фильтра для Linux - iptables 1.4.0, opennews (??), 26-Дек-07, (0) [смотреть все]

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


20. "Новая версия пакетного фильтра для Linux - iptables 1.4.0"  +/
Сообщение от Аноним (38), 26-Дек-07, 17:53 
пакетный фильтр в случае ДоС как раз и спасает,
особенно pf с лимитами
Ответить | Правка | Наверх | Cообщить модератору

23. "Новая версия пакетного фильтра для Linux - iptables 1.4.0"  +/
Сообщение от Andrew Kolchoogin (?), 26-Дек-07, 21:51 
>пакетный фильтр в случае ДоС как раз и спасает,
>особенно pf с лимитами

Особенно, когда DoS'ят Апач, вызывая динамический контент. Загрузка проца взлетает до 50-60, а лимиты всё ещё не исчерпаны. Ибо NAT'ы везде, и "задвигать" их сильно вниз некошерно.

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

26. "Новая версия пакетного фильтра для Linux - iptables 1.4.0"  +/
Сообщение от Дохтур (?), 26-Дек-07, 22:17 
>Особенно, когда DoS'ят Апач, вызывая динамический контент.

у нормальных людей опач работает бэкэндом. А такую паразитную активность весьма просто пресечь, ограничив число входящих SYN в ед. времени экспоненциально.
Чуть более сложные меры вообще исключат подобный сценарий, оставив только возможность полностью забить канал входящим трафиком(но от этого никто не застрахован).

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

34. "Новая версия пакетного фильтра для Linux - iptables 1.4.0"  +/
Сообщение от Andrew Kolchoogin (?), 27-Дек-07, 01:37 
>>Особенно, когда DoS'ят Апач, вызывая динамический контент.
> у нормальных людей опач работает бэкэндом.

    И что? Он от этого как-то сильно меньше CPU Time кушать начинает?

> А такую паразитную активность весьма просто пресечь, ограничив число входящих SYN
> в ед. времени экспоненциально.

    Exponential Backoff в данном случае совершенно бесполезен, так как это лишь _одна из возможных реакций_ на активность с некоторого IP-адреса. Тупой сброс соединений -- это, если хотите, EB после предельного перехода. :)

    Ну и что? Всё равно микропроцессор на Apache просядет. Как не выкручивайся. Потому, что не за'backoff'ить каждый конкретный IP без риска за'backoff'ить огромную сеть за NAT'ом.

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

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

    Почему, можно попытаться прогнуть апстрима на RSVP. :)))

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

51. "Новая версия пакетного фильтра для Linux - iptables 1.4.0"  +/
Сообщение от Аноним (-), 27-Дек-07, 10:56 
>    И что? Он от этого как-то сильно меньше
>CPU Time кушать начинает?

Да с cpu time не проблема. Опач обычно в prefork гоняют, так что чаще упираешься в пямять.
Да и кеширование на фронтенде решает ;))

>    Ну и что? Всё равно микропроцессор на Apache
>просядет. Как не выкручивайся. Потому, что не за'backoff'ить каждый конкретный IP
>без риска за'backoff'ить огромную сеть за NAT'ом.

Имхо, слабый DoS должен никак не сказываться на работе сервиса. А что-то более заметное будет иметь вполне очевидный профиль. И, кстати, борьба с DoS - это всегда компромисс и риск false positives.


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

+1

PS: спасибо за адекватную и достаточно сдержанную дискуссию.

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

68. "Новая версия пакетного фильтра для Linux - iptables 1.4.0"  +/
Сообщение от Andrew Kolchoogin (?), 27-Дек-07, 18:13 
>> И что? Он от этого как-то сильно меньше CPU Time кушать начинает?
> Да с cpu time не проблема. Опач обычно в prefork гоняют, так
> что чаще упираешься в пямять.

    Согласен.

> Да и кеширование на фронтенде решает ;))

    Далеко не всегда.

    В большинстве случаев, с которыми мне приходилось встречаться, Web-код написан, прямо скажем, не очень хорошо. Не сказать жёстче: руки бы повырывать. ;) И "агрессивное" кэширование приводит к появлению stale pages. А "кооперативное" кэширование на фронтэнде при помощи какого-нибудь memcached ещё в Web-код встраивать надо, а в плохой код его встроить просто невозможно.

> Имхо, слабый DoS должен никак не сказываться на работе сервиса. А что-то
> более заметное будет иметь вполне очевидный профиль. И, кстати, борьба с
> DoS - это всегда компромисс и риск false positives.

    Равно, как и борьба со спамом. Подписываюсь под каждым словом.

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

41. "Новая версия пакетного фильтра для Linux - iptables 1.4.0"  +/
Сообщение от Nikolay (??), 27-Дек-07, 05:29 
Пакетный фильтр вас не спасет при DOS-е службы. Уж слишком низкий может оказаться порог для дос аткаки. Обычный index.php какого-нибудь треклятого форумного движка может быть целеноправленно атакован сравнительно небольшим количеством запросом и ваш фильтр даже не сможет выделить эти аномалии из фона, а апач будет буксовать глотая последние мегабайты свопа.
Ответить | Правка | К родителю #26 | Наверх | Cообщить модератору

45. "Новая версия пакетного фильтра для Linux - iptables 1.4.0"  +/
Сообщение от Andrew Kolchoogin (?), 27-Дек-07, 09:23 
> Обычный index.php какого-нибудь треклятого форумного движка

    index.php ещё, как правило, переживаемо. А вот index.pl может уже на 50 запросах/сек ТА-А-А-АК раскорячить Apache... :)

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

47. "Новая версия пакетного фильтра для Linux - iptables 1.4.0"  +/
Сообщение от Аноним (38), 27-Дек-07, 10:17 
ОФФ: Andrew Kolchoogin, респект за грамотную дискуссию. Кое-что "открыл" для себя, что следовало бы знать уже лет 8 как, чьорт побьери. Век живи - век учись! :-)

Побольше бы таких участников конференций. Может, и с квалификацией кадров получше стало бы? :-)

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


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

54. "Новая версия пакетного фильтра для Linux - iptables 1.4.0"  +/
Сообщение от гость (?), 27-Дек-07, 12:16 
>ОФФ: Andrew Kolchoogin, респект за грамотную дискуссию. Кое-что "открыл" для себя, что
>следовало бы знать уже лет 8 как, чьорт побьери. Век живи
>- век учись! :-)
>Побольше бы таких участников конференций. Может, и с квалификацией кадров получше стало
>бы? :-)
>PS Просьба не обращать внимания на профессиональных флеймогонов - это единственное, что
>они знают толком.

Андрюша, хватит уже отвешивать себе комплименты с помощью виртуалов - смотреть противно!
Так и до дурки не далеко...

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

66. "Новая версия пакетного фильтра для Linux - iptables 1.4.0"  +/
Сообщение от Аноним (38), 27-Дек-07, 18:05 
>Андрюша, хватит уже отвешивать себе комплименты с помощью виртуалов - смотреть противно!

Так и до дурки не далеко...

гоЗть - хорош трепаться - санитары идут! ,)
Ну а по теме - молодец Андрей. А ты - ламо ,) Причем знаешь об этом от того и сопли-слюни агресивность ,)

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

52. "Новая версия пакетного фильтра для Linux - iptables 1.4.0"  +/
Сообщение от Antrewemail (??), 27-Дек-07, 11:21 
>> Обычный index.php какого-нибудь треклятого форумного движка
>
>    index.php ещё, как правило, переживаемо. А вот index.pl
>может уже на 50 запросах/сек ТА-А-А-АК раскорячить Apache... :)

Не надо наезжать на Perl, ибо связка mod_perl + Apache дает очень хорошую производительность.

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

71. "Новая версия пакетного фильтра для Linux - iptables 1.4.0"  +/
Сообщение от Andrew Kolchoogin (?), 27-Дек-07, 18:29 
> Не надо наезжать на Perl, ибо связка mod_perl + Apache дает очень
> хорошую производительность.

    Упаси меня Ларри наезжать на Perl. Просто PHP-интерпретатор легче перлового.

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

99. "Новая версия пакетного фильтра для Linux - iptables 1.4.0"  +/
Сообщение от Nickemail (??), 28-Дек-07, 09:36 
впику Вашей нелюбви к Netfilter

проблема: DoS на вебсервис и границы синов далеки до реакции, а апач, как выше выразилиьсь, доедает своп...
Что делать BSD админу - неизвестно.

А вот в Линухе проблема имеет вид даже некоторого решения.
Пишеться модуль, который в зависимости от нагрузки на CPU и/или винта и/или память, принимает или дропает пакет, собирается для текущего ядра и загружается в него.

Аналогичный модуль-собрат пишется и для user-level iptables тулзы.
Все границы/лимиты задаются параметрами этого user-level модуля из команды iptables.

Зависимость на род нагрузки исчезает. Это может быть сколь угодно плохой и неоптимальный пользовательский код.

В результате: можно вести разговор о дропе новых соединений, если загрузка системы и/или этих 3-х подсистем выше заданной. А также, совмещать эти лимиты с другими сетевыми ограничениями.
На практике получается более чем красивое и элегантное решение.
Например: в зависимости от нагрузки (уровни нагрузки: 5-10, 10-20, 20-30...) регулируется количество одновременных коннектов из /24 сетки (например: 50, 30, 10...). И даже глубина битности измеряемых сетей: /24, /25, /26....
В результате имеем более равномерное распределение мощностей системы между клиентами в условиях DoS'a.

Чем бы порадовал PF?

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

102. "Новая версия пакетного фильтра для Linux - iptables 1.4.0"  +/
Сообщение от pavel_simple (ok), 28-Дек-07, 10:37 
могу ошибаться -- но как мне думается тут и писать ничего не придётся
проблему можно будет решить например так
несколько recent (в зависимости от нагрузки) соответственным образом помечают пакет (-j MARK)
а потом в зависимости от марки используем limit

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

109. "Новая версия пакетного фильтра для Linux - iptables 1.4.0"  +/
Сообщение от Аноним (-), 28-Дек-07, 21:42 
дописать модуль к тому же apache, чтоб он рулил этой политикой, тогда можно хоть электрическим реле провода размыкать. это ниразу не дело ядра.
Ответить | Правка | К родителю #99 | Наверх | Cообщить модератору

119. "Новая версия пакетного фильтра для Linux - iptables 1.4.0"  +/
Сообщение от Nickemail (??), 30-Дек-07, 23:40 
кроме апача источников нагрузки бывает немало
Ответить | Правка | Наверх | Cообщить модератору

118. "Новая версия пакетного фильтра для Linux - iptables 1.4.0"  +/
Сообщение от nuclightemail (?), 30-Дек-07, 22:42 
Ой, и вы ЭТО называете красивым и элегантным решением?! Это же жуткий костыль. Начать с того, что следует организовывать вообще схему фронтенд/бэкенд (необязательно на одной машине). Если уж у вас такие DoS'ы, с которыми справляется ядро.

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

Наконец, когда решением предлагается _написать_ модуль ядра (!) - тут уже лицемерно говорить, что в одной ОСи это можно сделать, в другой нет - специалист, на такое способный, сделает для любой, средства есть.

Другое дело, что это может быть невозможно даже при наличии специалиста - например, когда ДДОСили bash.org.ru, они не имели возможность поменять на машине netfilter на nf-hipac - тупо из-за VDS (решили доморощенным аналогом). Да, хостер был плохой (потом сменили), да, отслеживание и перекрытие DoS'ов вообще задача хостера, ну вот такие были условия, что поделать...

Отсюда, кстати, видно, что предложенный к написанию модуль тем более хуже - сыграет на руку DDoS'у, дропая, возможно, вполне легитимные коннекты - не те критерии ибо.

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

120. "Новая версия пакетного фильтра для Linux - iptables 1.4.0"  +/
Сообщение от Nickemail (??), 30-Дек-07, 23:57 
>Ой, и вы ЭТО называете красивым и элегантным решением?!

Угу


>Это же жуткий
>костыль. Начать с того, что следует организовывать вообще схему фронтенд/бэкенд (необязательно
>на одной машине). Если уж у вас такие DoS'ы, с которыми
>справляется ядро.

кому следует орагнизовывать схему - тот организовывает схему.
А кому следует не принимать новый запрос в систему если загрузка выше нормы - тот не принимает запрос.


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

загрузка системы пока что понятие одно на систему. А не на ядро или на юзерлевел.
"загрузки чего-то в юзерлэнде" звучит неразумно.


>Такие вещи следует в юзерлэнде же и отрабатывать,

вообще неразумно.
Управлять user-level'ом из него же - ненадежно.

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

о какой команде ФАЕРВОЛУ идет речь? Мне кажеться Вы не уловили суть в принципе...


>В ядре отслеживать, что конкретно
>не нравится процессу - слишком сложно.

:))
улыбнуло.
Вообще-то это и есть задача ядра: отслеживать все что кому нравится и что нет.
Наиболее эффективно управлять как минимум траффиком и процессами - из ядра.

>Наконец, когда решением предлагается _написать_ модуль ядра (!) - тут уже лицемерно
>говорить, что в одной ОСи это можно сделать, в другой нет

предполагается отсутствие даунтайма на загрузкку нового ядра.
Netfiler модуль вставляется находу.
Если PF умеет это же - тогда все описанное может и он. Собственно, в этом был вопрос.


>- специалист, на такое способный, сделает для любой, средства есть.

неспециалист сидит дома или учится


>Другое дело, что это может быть невозможно даже при наличии специалиста -
>например, когда ДДОСили bash.org.ru, они не имели возможность поменять на машине
>netfilter на nf-hipac - тупо из-за VDS (решили доморощенным аналогом).
>Да, хостер был плохой (потом сменили), да, отслеживание и перекрытие DoS'ов вообще задача хостера

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


>Отсюда, кстати, видно, что предложенный к написанию модуль тем более хуже -
>сыграет на руку DDoS'у, дропая, возможно, вполне легитимные коннекты - не
>те критерии ибо.

расширьте сознание. Предлагаемый модуль НЕ дропает ничего.

Он умеет отслеживать загрузку. И именно в связке с другими методами ограничения дает неплохие результаты.

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

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

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




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

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