Apache - mod_limit защита от DDoS

Защита информации, сетевая безопасность, уязвимости

Модератор: Rostov114

Apache - mod_limit защита от DDoS

Сообщение zk » 10 мар 2008, 00:18

mod_limit - защита веб-сервера apache от http и syn флуда я написал модуль mod_limit. Этот модуль позволяет задавать в настройках веб-сервера ограничения по приему запросов с одного IP адреса и блокировать клиентов превышающих эти ограничения.
страница проекта: http://freed0m.org/?index=mod_limit

mod_limit.zip
Модуль под Win32 для Apache 2.2.x
(2.7 Кб) Скачиваний: 1049

пример настройки:
Код: Выделить всёРазвернуть
<IfModule limit_module>
  LimitMaxSyn      50
  LimitSynAct      HARDBAN
  LimitSynTmo      10
  LimitMaxReq      200
  LimitReqAct      SOFTBAN
  LimitReqTmo      5
  LimitBanMsg      "Your IP is temporary blocked. Please wait %d minutes."
  LimitHtSize      8011
  LimitWriteLog    On
</IfModule>


расшифровка параметров:
mitMaxSyn - задаёт лимит "пустых" соединений подряд. Пустым считается соединение в котором не пришло ни одного верного http-запроса. Этот лимит определяет реакцию на syn flood. Установленное значение в 50 соединений достаточно, чтобы исключить ложные срабатывания, но тем не менее syn-флуд превышает этот лимит практически мгновенно.
LimitSynAct - задаёт действие, предпринимаемое при превышении LimitMaxSyn. Этот параметр может иметь три значения: PASS - игнорировать событие, HARDBAN - не принимать соединения атакующего и SOFTBAN - выдавать атакующему сообщение о блокировке.
LimitSynTmo - задаёт таймаут действия LimitSynAct в минутах. Время бана в 10 минут достаточно, чтобы отбить желание сканировать порты или заблокировать атаку с вебшеллов. В случае серьёзного ддоса рекомендуется увеличить это значение до нескольких часов. Отсчёт таймаута начинается с момента прекращения флуда атакующим.
LimitMaxReq - задаёт лимит количества http-запросов с одного IP адреса в минуту. Значение в 200 позволяет достаточно быстро реагировать на http-флуд, но тем не менее оставляет небольшой риск ложного срабатывания. В том случае, если посетители вашего сайта часто выкачивают множество страниц программной качалкой, рекомендуется увеличить это значение до 500-1000.
LimitReqAct - задаёт действие, предпринимаемое при вревышении LimitMaxReq. Задается аналогично LimitSynAct.
LimitReqTmo - задаёт таймаут действия LimitReqAct в минутах. Отсчёт таймаута начинается с момента превышения лимита.
LimitBanMsg - задаёт сообщение о блокировке, выдаваемое при действии SOFTBAN. С помощью идентификатора %d в сообщение можно вставить оставшееся время блокировки в минутах.
LimitHtSize - задаёт размер внутренней таблицы, предназначенной для поиска статистики, связанной с IP адресом. При значении 8011 модуль использует около 64кб памяти. Большие значения целесообразны только при экстремальных нагрузках.
LimitWriteLog - включает запись в error.log сервера сообщений о срабатывании mod_limit. Рекомендуется включить для сбора статистики срабатываний.
zk
Администратор
 
Сообщения: 1971
Зарегистрирован: 02 сен 2007, 16:04
Домен: vfose.ru

Re: Apache - mod_limit защита от DDoS

Сообщение Lundil » 10 мар 2008, 11:14

а под Linux????? мне виндовый не подойдет :(
Аватара пользователя
Lundil
Активный участник
 
Сообщения: 330
Зарегистрирован: 31 окт 2007, 10:41
Откуда: Саратов
Домен: http://mcsar.ru

Re: Apache - mod_limit защита от DDoS

Сообщение zk » 10 мар 2008, 13:04

а под Linux????? мне виндовый не подойдет :(

Ну по Linux как обычно, заходишь на страничку проекта, качаешь сырцы, компилишь...
Правда проект изначально виндовый, но вроде его собирали под unix-like...
zk
Администратор
 
Сообщения: 1971
Зарегистрирован: 02 сен 2007, 16:04
Домен: vfose.ru

Re: Apache - mod_limit защита от DDoS

Сообщение Костик » 11 мар 2008, 01:00

Хочу сделать замечание ибо фатальная ошибка.

Код: Выделить всёРазвернуть
"Your IP is temporary blocked.
Please wait %d minutes."


Это надо писать одной строчкой
Код: Выделить всёРазвернуть
"Vash IP adres zablokirovan. Pojaluysta podojdite %d minut"
FreeBSD 9.2 and Fedora 18 user
Аватара пользователя
Костик
Активный участник
 
Сообщения: 1944
Зарегистрирован: 03 сен 2007, 02:15

Re: Apache - mod_limit защита от DDoS

Сообщение vk » 09 апр 2009, 07:14

предположим мы вставили в конфиг апача:

пример настройки:
Код: Выделить всёРазвернуть
<IfModule limit_module>
  LimitMaxSyn      50
  LimitSynAct      HARDBAN
  LimitSynTmo      10
  LimitMaxReq      200
  LimitReqAct      SOFTBAN
  LimitReqTmo      5
  LimitBanMsg      "Your IP is temporary blocked. Please wait %d minutes."
  LimitHtSize      8011
  LimitWriteLog    On
</IfModule>


далее - как его запустить? на сколько знаю там должно быть типо:
LoadModule mime_module apache/modules/mod_mime.so

чето у меня никак не получается его "завести" :)
vk
Активный участник
 
Сообщения: 95
Зарегистрирован: 22 фев 2009, 15:24

Re: Apache - mod_limit защита от DDoS

Сообщение Костик » 09 апр 2009, 12:46

LoadModule limit_module modules/mod_limit.so

<IfModule limit_module>
LimitMaxSyn 50
LimitSynAct HARDBAN
LimitSynTmo 10
LimitMaxReq 400
LimitReqAct SOFTBAN
LimitReqTmo 5
LimitBanMsg "Vash IP adres zablokirovan. Pojaluysta podojdite %d minut"
LimitHtSize 8011
LimitWriteLog On
</IfModule>
FreeBSD 9.2 and Fedora 18 user
Аватара пользователя
Костик
Активный участник
 
Сообщения: 1944
Зарегистрирован: 03 сен 2007, 02:15

Re: Apache - mod_limit защита от DDoS

Сообщение vk » 01 июл 2009, 06:27

Lundil писал(а):а под Linux????? мне виндовый не подойдет :(

Выложите плиз для линя, а не могу найти... ((
vk
Активный участник
 
Сообщения: 95
Зарегистрирован: 22 фев 2009, 15:24

Re: Apache - mod_limit защита от DDoS

Сообщение Rostov114 » 01 июл 2009, 10:15

На *nix настраивайте Огненную стену. Ибо попытайтесь на *nix системах перегрузить Apache обычным нажатием F5
Некоммерческий проект «HSDN»
Аватара пользователя
Rostov114
Автор
 
Сообщения: 3199
Зарегистрирован: 18 окт 2007, 02:21

Re: Apache - mod_limit защита от DDoS

Сообщение vk » 01 июл 2009, 12:32

поподробнее плиз...
vk
Активный участник
 
Сообщения: 95
Зарегистрирован: 22 фев 2009, 15:24

Re: Apache - mod_limit защита от DDoS

Сообщение Rostov114 » 01 июл 2009, 13:05

vk писал(а):поподробнее плиз...

Не знаю как у вас а у себя я на BSD сделал так:
в /etc/rc.conf добавил:
Код: Выделить всёРазвернуть
firewall_enable="YES"
firewall_script="/etc/ipfw.rules"

И настроил /etc/ipfw.rules

А насчет того что модуль для apache под *nix это бред...ибо если не верно сервер на Win32 настроен его можно загрузить обычным F5...на *nix даже при коряво настроенном веб сервере его не реально будет загрузить через F5
Некоммерческий проект «HSDN»
Аватара пользователя
Rostov114
Автор
 
Сообщения: 3199
Зарегистрирован: 18 окт 2007, 02:21

След.

Вернуться в Компьютерная безопасность

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

cron