Использование Apache / 2.2.15 на RHEL6 с конфигурацией mod_evasive:
DOSHashTableSize 3097
DOSPageCount 14
DOSPageInterval 2
DOSSiteCount 70
DOSSiteInterval 1
DOSBlockingPeriod 60
К сожалению, он не заблокировал эту атаку, которая исходила только с 1 IP:
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:53 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:53 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:53 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
207.xxx.xxx.xxx - - [14/Jun/2015:06:06:54 +0400] "HEAD / HTTP/1.1" 200 - "-" "some fake user agent"
Mod_evasive работает, в других случаях блокирует некоторые IP-адреса. Не работает для запросов HEAD?
РЕДАКТИРОВАТЬ: мой apache работает в режиме prefork. Из того, что я читал, у mod_evasive есть проблемы с этим.
Измените переменную на что-то меньшее, 14 действительно высокое.
DOSPageCount 3
Поскольку атака исходит из того же места, вы можете забанить IP-адрес.
sudo iptables -t raw -I PREROUTING -s 207.x.x.x/32 -j DROP
Или вы можете установить mod_security, настроить его и добавить «какой-то поддельный пользовательский агент» в файл bad_robots.data, и он будет встречен 401 запрещенным.
НОТА
DDoS-атаки предназначены для использования как полосы пропускания, так и ресурсов. Вы можете заблокировать IP-адрес, заблокировать его с помощью mod_evasive или отклонить их запросы с помощью 401. НИ ОДИН ИЗ ЭТИХ МЕТОДОВ НЕ ОСТАНОВИТ DDoS-атаки. DDoS-атаки продолжат использовать всю вашу пропускную способность, не отключая ваше устройство. Лучший способ - обратиться к своему интернет-провайдеру и попросить его заблокировать вредоносные IP-адреса или обратиться в службу защиты от DDoS-атак, такую как cloudflare. Никакие другие действия не остановят DDoS-атаки.
Если вы постоянно находитесь под угрозой DDoS-атак, воспользуйтесь службой защиты от DDoS-атак. НИ ОДИН из упомянутых выше методов не остановит DDoS-атаки.