Тема: DoS и *NIX
Показать сообщение отдельно
Непрочитано 22.06.2010, 17:26   #9
Пользователь

По умолчанию Re: DoS и *NIX

Ну нынешние линуксы тоже в "2 клика" ставятся (Ubuntu тот же самый) так что порог входа теперь стал пониже. Некоторые сборки линукса вполне вменяемо настроены "из коробки" (тот же CentOS), а некоторые надо ковырять напильником (Ubuntu Server), а есть вообще экземпляры, которые просто без отвертки, лома, напильника, кувалды и такой-то матери вообще даже ставиться не хотят (Gentoo), и все это linux, так что то, что "у меня установлен линукс" еще не показатель. Показатель - это первые несколько месяцев успешной бессбойной работы системы (когда она переживет ДоС/ДДоС, будет отстроена безопасность, установлены, настроены и оптимизированы все сервисы и т.д.). И следующая контрольная точка - это падение оборудования (чаще всего это хард) и запуск системы после ее устранения.

А по теме:
Время от времени проскакивают решения, позиционирующие себя как защита от DDoS-атак, реализованные на уровне apache + php. Это, конечно, красиво, но спасает только от толпы школьников, тыкающих F5, не более того.

(D)DoS - атака "отказ в обслуживании" достигается несколькими путями, но все они нацелены на выбирание ресурсов системы:
1. если приложение достаточно "тяжелое" (значительно потребляющее процессор и/или память, например, веб-сервер или сервер базы данных), то DoS достигается большой нагрузкой на процессор(ы).
2. если приложение достаточно "легкое" (например echo/ping-сервис), то можно выбрать разрешенное количество открытых сокетов на приложение (по-умолчанию это 1024 сокета, но этот параметр настраивается, всего в системе их может быть 65535, соответственно, если запросов больше, то новые сокеты не будут создаваться, на это и нацелена syn-атака) или выбрать интернет-канал (это можно достичь просто большим количеством данных, передаваемых с/на сервер).

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

Почитать можно, например, тут http://www.hackzone.ru/articles/zashita_ot_ddos.html (настройка линукс-системы для отражения ДДоСа), или тут http://ru.wikipedia.org/wiki/Iptables (вообще про iptables)

ЗЫ: ну и всегда можно найти "нестандартное" решение по защите, например, от нескольких тысяч одновременных подключений веб-сервер можно закрыть, настроив связку apache|php-cgi + nginx. Смысл в том, чтобы легкий и быстрый nginx отдавал статику (картинки, флеш, html-страницы и т.д.), а непосредственно обращения к php-скриптам, которые и дают основную нагрузку на систему, перенаправлял на apache|php-cgi, а ответы скриптов кешировал у себя на некоторое время.

Последний раз редактировалось Blakkky; 22.06.2010 в 17:56.
Blakkky вне форума Ответить с цитированием