3ащита apache

1 234
K
На сайте с 24.03.2004
Offline
223
#31
Alexei42:
Делаем IDS на кластере из сонек? :)

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

проверенная ддос защита (http://ddos-protection.ru) -> http://ddos-protection.ru (http://ddos-protection.ru), бесплатный тест, цена от размера атаки не зависит.
Andreyka
На сайте с 19.02.2005
Offline
822
#32
kostich:
многие тут скажут, что вот они отбивали атаку с 6-7тыс ботов... замечу, что это просто ддос-еры тупанули... если бы с 6-7 тыс ботов зарядили синфлуд или syn/ack, то канал бы накрылся моментом... а если тупой флуд, то конечно можно на апаче отбивать различными модулями... с некоторых ip вваливают аж по 5kpps...

зы. тема стара как ip...

У меня nginx кушает одновременно и по 8k конкурентных запросов, при этом LA на ксеоне выше 4 не идет.

А синфлуд убивать - не писюковое дело, это циски/фортигейты пусть кушают

Не стоит плодить сущности без необходимости
K
На сайте с 24.03.2004
Offline
223
#33
Andreyka:
У меня nginx кушает одновременно и по 8k конкурентных запросов, при этом LA на ксеоне выше 4 не идет.

Андрей, ну какие 8к... речь идет о том, что за 3 секунды ему впердолят 70-80к... и будет потом это все на таймауте тупить.

Andreyka:

А синфлуд убивать - не писюковое дело, это циски/фортигейты пусть кушают

ты модели кокнкретные приведи пожалуйста, которые синфлуд убивают...

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

На железке/файре вписываем лимит конкурентных коннетов и не переживаем за таймауты

http://www.radware.com/content/products/dp/default.asp, цены начинаются от 12,500

K
На сайте с 24.03.2004
Offline
223
#35
Andreyka:
На железке/файре вписываем лимит конкурентных коннетов и не переживаем за таймауты
http://www.radware.com/content/products/dp/default.asp, цены начинаются от 12,500

э... мужик, ты его юзал?

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

Нет, я юзал cisco riverhead aka guard, но это подороже будет :)

Jooz
На сайте с 30.07.2007
Offline
49
#37
kostich:
а nginx софтина хорошая... правда от ddos она мало чем спасает...

Зависит пожалуй от /dev/голова

Один из вариантов, не панацея конечно но суть ясна:

в sysctl

kern.maxfiles=90000
kern.maxfilesperproc=80000
net.inet.tcp.blackhole=2
net.inet.udp.blackhole=1
kern.polling.burst_max=1000
kern.polling.each_burst=50
net.inet.tcp.msl=10000
kern.ipc.somaxconn=32768


в nginx моменты

worker_processes 1;
worker_rlimit_nofile 80000;
events {
worker_connections 50000;
}

server_tokens off;
log_format IP '$remote_addr';
reset_timedout_connection on;

listen xx.xx.xx.xx:80 default rcvbuf=8192 sndbuf=16384
backlog=32000 accept_filter=httpready;


фильтрацию url например по критерию POST index.php?action=login с пустым
реферером можно реализовать так

set $add 1;
location /index.php {
limit_except GET POST {
deny all;
}
set $ban "";
if ($http_referer = "" ) {set $ban $ban$add;}
if ($request_method = POST ) {set $ban $ban$add;}
if ($query_string = "action=login" ){set $ban $ban$add;}
if ($ban = 111 ) {
access_log /var/log/nginx/ban IP;
return 404;
}
proxy_pass http://127.0.0.1:8000;#тут живёт апач
}


ну и по крону уже раз в минуту добавлять в ipfw table новые ИП из лога

25Мбитный DDoS, преимущесвенно режущийся ipfw, остатки проходят на
nginx, который по критерию обучает ipfw и остатки проксирует на апач -
LA 0, сайт работает.

Чуть более мощный сервер на гигабитном Realtek re и 100Мбит порту с
поллингом загибался от pps где-то до 20Мбит

Будьте готовы, что при атаке в системе закончатся сокеты для соединиея
nginx - backend. Так что я бы добавил

sysctl net.inet.tcp.msl=3000 - уменьшаем время TIMEWAIT
sysctl net.inet.tcp.maxtcptw=40960 - ограничиваем количество TIMEWAIT сокетов
sysctl net.inet.tcp.nolocaltimewait=1 - отключаем TIMEWAIT для локальных сокетов.
sysctl net.inet.ip.portrange.first=1024
sysctl net.inet.ip.portrange.last=65535
sysctl net.inet.ip.portrange.randomized=0


Дальше резали на уровне pf - загружали в таблицу IP с которых
приходило слишком много хитов. PF с таблицами работает очень быстро.
Исходники парсера логов есть на http://www.comsys.com.ua/files

Источник: http://www.opennet.ru/base/net/ddos_nginx.txt.html

Чтобы произошло чудо нужно обязательно дунуть (http://www.sape.ru/r.d06b0321e5.php). Если не дунуть (http://www.sape.ru/r.d06b0321e5.php) чуда не произойдет (С) А.Акопян т/п "Спокойной ночи малыши"
K
На сайте с 24.03.2004
Offline
223
#38
Jooz:
Зависит пожалуй от /dev/голова
Один из вариантов, не панацея конечно но суть ясна:

Ну молодцы люди, что я еще могу сказать... данная фильтрация только от тупого флуда спасает, базового, от мелкого вполне успешно... а все остальное кладет это моментом. Если про pps-ы, то это железно сдохнет в р-не 200kpps-ов, если не меньше... большая часть подобных решений куда-то уходит уже на сотне kpps. У pf-ных таблиц и freebsd есть минус один, но про него пока не буду... это вообще минус скорее SMP систем, но если все грамотно готовить, то это можно обойти... правда обходится это уже на своем ядре и своей версии стека.

и судя по примеру воевать с ддосом там руками собрались.

backlog=32000

ахренеть можно... параметр реально от /dev/голова зависит.

1 234

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