Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Настройка защиты от ддос
#1
Здесь, я хочу вам рассказать, как правильно настроить юникс систему, для защиты от ддос атак
Если кому интерестно - просто поделюсь тем, что умею сам.


Всё что от нас потребуется - настроить параметры tcp
Ищем /etc/sysctl.conf

Вот собственно какие параметры туда можно добавить:

1. net.ipv4.tcp_keepalive_time = 60 // если на канале молчанка в течении 60 сек - сервер пробует клиент на живучесть

2. net.ipv4.tcp_keepalive_intvl = 10 //если проба неудачна - повторить через 10 сек

3. net.ipv4.tcp_keepalive_probes = 5 //повторить проверку 5 раз, если неудачно - закрыть соединение

4. net.ipv4.tcp_syncookies = 1 // защита от syn флуда. врубать ТОЛЬКО если ядро собрано с CONFIG_SYNCOOKIES

5. net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.all.rp_filter = 1 //Установка IP спуфинга защиты очереди на источник проверки маршрута.

6. net.ipv4.tcp_max_orphans = 131072 //защита орфанами от левых ддос...не забываем - каждый орфан жрет 64байта (или 64 кб...не помню точно) памяти.

вот в принципе элементарные меры которые должны помочь
[SIGPIC][/SIGPIC]
Ответ
#2
напиши для какой ОС или полный адрес куда лезть
а то нубы снова ныть будут =)
ЛЮДИ ВКЛЮЧИТЕ ВАШИ МОЗГИ
а то китайцы уже андроидов в телефоны пихают
Nokia N810
[Изображение: Bez_nazvy-2.png]
[Изображение: account_detailed.gif]
Ответ
#3
Дебилиан, Бубунта, етс...
Ответ
#4
Devilop
а то нубы снова ныть будут =)

Точно) забыл сказать, спс напомнил)

Надо будет обновить значения переменных...
от рута надо

sysctl -p

уж как охото...если не ребутать - изменения будут вступать для новых коннектов или для реконектнувшихся...

На счет систем...всё верно..+ сан, хат, альт....
[SIGPIC][/SIGPIC]
Ответ
#5
Ну это только начало (да и то в некоторых местах спорное). А дальше? Smile

Это не особо поможет от серьезного ДДоСа, а позволит системе по-больше ресурсов слопать в случае ДДоСа (если атака маленькая, то просто увеличение некоторых лимитов на потребление ресурсов поможет не упасть сервису, а если серьезная, то это только усугубит происходящее).
И, кстати, один сокет-"сиротка" (orphan) на самом деле поедает 64к памяти, т.е. предлагается под них отдать 8Гб оперативной памяти (64к * 131072), не много ли под "помирающие сокеты"? При хорошей атаке последствия будут не просто плачевным, а смертельными, особенно, если физической памяти меньше, либо равно 8Гб.

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

Ну и из того, что надо бы сделать, сделано процентов 10% примерно, где повышение лимитов на файловые/сокетные дескрипторы, где тюнинг контрека, где правила iptables под разные типы сервисов?
Маловато будет, надо работать дальше Smile
Ответ
#6
Blakkky мне хотелось бы выслушать твои предложения по поводу "дальше". Буду очень благодарен.
Ответ
#7
частичная настройка системы
[Изображение: 483559.gif]
Ответ
#8
Настройка системы это хорошо, но если стоит хороший сервер на *nux и канал 100мб. от 200 ботов может спасти iptables, конечно не является панацеей, но от школьников и середнячков может спасти. Причем хорошее дополнение к любому антиddos приложению. Принцип построен на блоке навязчивых ip-адресов, чем больше пакетов, тем дольше блок. Sprut и т.п. начинает ложить свой канал. Данные парамметры проверялось на исходящем гигабитном канале, входящий 100мб.

Код:
iptables -F
iptables -t nat -F
iptables -X

iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

sysctl net.netfilter.nf_conntrack_acct=1

iptables -A INPUT -s *.*.*.* -j ACCEPT
iptables -A INPUT -s *.*.*.*/* -j ACCEPT
iptables -A INPUT -s *.*.*.*/* -j ACCEPT
iptables -A INPUT -s *.*.*.*/* -j ACCEPT
iptables -A INPUT -s *.*.*.* -j ACCEPT
iptables -A INPUT -s *.*.*.* -j ACCEPT
iptables -A INPUT -p TCP -s 0/0 --dport **** -j DROP      //прикрываемые порты
iptables -A INPUT -p TCP -s 0/0 --dport **** -j DROP       //прикрываемые порты

iptables -N LOGIN
iptables -N LOGIN_REJECT_1
iptables -N LOGIN_REJECT_2

iptables -A INPUT -p tcp --dport *** -m state --state NEW -j LOGIN      //правило для парта

iptables -A LOGIN -m recent --update --name LOGIN_REJECT_1 --seconds    600 --hitcount 1 -j DROP
iptables -A LOGIN -m recent --update --name LOGIN_REJECT_2 --seconds   3600 --hitcount 1 -j DROP

iptables -A LOGIN -m recent --set --name LOGIN_c1
iptables -A LOGIN -m recent --set --name LOGIN_c2

iptables -A LOGIN -m recent --update --name LOGIN_c1 --seconds    60 --hitcount  10 -j LOGIN_REJECT_1
iptables -A LOGIN -m recent --update --name LOGIN_c2 --seconds   600 --hitcount  20 -j LOGIN_REJECT_2

iptables -A LOGIN -m limit --limit 1/sec --limit-burst 3 -j ACCEPT

iptables -A LOGIN -j REJECT

iptables -A LOGIN_REJECT_1 -m recent --set --name LOGIN_REJECT_1
iptables -A LOGIN_REJECT_1 -j LOG --log-prefix "INPUT LOGIN REJECT: (10min)"
iptables -A LOGIN_REJECT_1 -j REJECT

iptables -A LOGIN_REJECT_2 -m recent --set --name LOGIN_REJECT_2
iptables -A LOGIN_REJECT_2 -j LOG --log-prefix "INPUT LOGIN REJECT: (1hour)"
iptables -A LOGIN_REJECT_2 -j REJECT

iptables -N HTTP
iptables -N HTTP_REJECT_1

iptables -A INPUT -p tcp --dport **** -m state --state NEW -j HTTP

iptables -A HTTP -m recent --update --name HTTP_REJECT_1 --seconds    60 --hitcount 10 -j DROP

iptables -A HTTP -m recent --set --name HTTP_c1

iptables -A HTTP -m recent --update --name HTTP_c1 --seconds    60 --hitcount  20 -j HTTP_REJECT_1

iptables -A HTTP -m limit --limit 10/sec --limit-burst 30 -j ACCEPT

iptables -A HTTP -j REJECT

iptables -A HTTP_REJECT_1 -m recent --set --name HTTP_REJECT_1
iptables -A HTTP_REJECT_1 -j LOG --log-prefix "INPUT HTTP REJECT: (1min)"
iptables -A HTTP_REJECT_1 -j REJECT

Что как куда, пробитые линуксойды поймут, остальным курить iptables.
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Настройка mysql по AION maa 4 4,300 12-29-2010, 02:13 PM
Последний пост: landser
  Скачивание исходников, Коспиляция и Настройка сервера Aion by APU100KPAT HuKoJIaC 3 5,915 01-20-2010, 06:17 PM
Последний пост: HuKoJIaC

Перейти к форуму:


Пользователи, просматривающие эту тему: 2 Гость(ей)