Установка и настройка libapache2-mod-evasive

Модуль libapache2-mod-evasive может помочь защитится веб-серверу Apache от от атак медленного чтения, а так же некоторых других направленных атак.

Установка в Linux Ubuntu/Debian:

sudo apt-get install libapache2-mod-evasive

Откроем стандартный или создадим файл конфигурации:

sudo nano /etc/apache2/mods-available/evasive.conf

Пример содержимого:

<IfModule mod_evasive20.c>
#Размер таблицы адресов
DOSHashTableSize 4096
#Количество одновременно открытых одинаковых страниц сайта для каждого хоста в интервал времени
DOSPageCount 5
#Количество открытых страниц сайта для каждого хоста в интервал времени
DOSSiteCount 50
#Интервал времени для DOSPageCount в секундах
DOSPageInterval 1
#Интервал времени для DOSSiteCount в секундах
DOSSiteInterval 1
#Период блокировки хоста в секундах
DOSBlockingPeriod 10
#Файл логов
DOSLogDir /var/log/mod_evasive.log
#Email для уведомлений о блокировке
DOSEmailNotify test@example.com
#Можно выполнить команду
#DOSSystemCommand    "su - someuser -c '/sbin/... %s ...'"
#Список адресов для которых не будут работать ограничения
DOSWhitelist 127.0.0.1
DOSWhitelist 192.168.1.1
</IfModule>

Активируем модуль:

sudo a2enmod mod-evasive

Перезагружаем apache:

/etc/init.d/apache2 restart

Проверяем (должно отобразится evasive20_module (shared)):

sudo apachectl -t -D DUMP_MODULES|grep evasive

Выполняем стандартный скрипт для проверки:

perl /usr/share/doc/libapache2-mod-evasive/examples/test.pl