ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Безопасность и Уязвимости > Администрирование > AntiDDos - АнтиДДОС
   
 
 
Опции темы Поиск в этой теме Опции просмотра

Настройка Nginx для отражения небольших ddos атак
  #1  
Старый 17.08.2009, 22:37
Аватар для PandoraBox
PandoraBox
Постоянный
Регистрация: 06.05.2007
Сообщений: 393
Провел на форуме:
1510937

Репутация: 398
Отправить сообщение для PandoraBox с помощью ICQ
По умолчанию Настройка Nginx для отражения небольших ddos атак



Nginx - веб сервер предназначеный для работы на высоконагруженных серверах. Ddos атака как раз и является той нагрузкой с которой этот web сервер может вполне удачно справится. Решения которые предоставляет Antiddos.org построены на кластерах под управлением FreeBSD и веб сервера Nginx. Мы провели очень много экспериментов по реакции nginx под нагрузкой и пришли к мнению что он является правильным выбором для работы на серверах которые подвергаются ddos атакам. Ниже привожу основные настройки данного сервера.

FreeBSD, сетевая Intel fxp, порт 100Мбит, polling, http accept-filter
в sysctl
Код:
sysctl kern.maxfiles=90000
sysctl kern.maxfilesperproc=80000
sysctl net.inet.tcp.blackhole=2
sysctl net.inet.udp.blackhole=1
sysctl kern.polling.burst_max=1000
sysctl kern.polling.each_burst=50
sysctl kern.ipc.somaxconn=32768
sysctl net.inet.tcp.msl=3000
sysctl net.inet.tcp.maxtcptw=40960
sysctl net.inet.tcp.nolocaltimewait=1
sysctl net.inet.ip.portrange.first=1024
sysctl net.inet.ip.portrange.last=65535
sysctl net.inet.ip.portrange.randomized=0
в 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?actio
Код:
n=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; #тут живёт апач
}
Дальше резали на уровне pf - загружали в таблицу IP с которых приходило слишком
много хитов. PF с таблицами работает очень быстро. Исходники парсера логов есть на
http://www.comsys.com.ua/files.

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

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

Источник: antiddos.org

Последний раз редактировалось PandoraBox; 17.08.2009 в 23:16..
 
Ответить с цитированием
 



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибки Windows 2 SVipeR Windows 9 02.03.2009 19:28
Редактирование содежимого прошивок для Самсунгов Digimortal Схемы и программы 3 28.02.2007 14:22
ОТЛИЧНАЯ СТАТЬЯ - "Как заметать следы" foreva Чужие Статьи 8 07.02.2005 12:44



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ