O Mod Evasive é um dos meus módulos favoritos do Apache junto ao Mod Security. Eles é um modulo preparado para cachear e lidar com altas requisições ao servidor apache, aumentando a capacidade de carga do mesmo e prevenindo uma boa parte de ataques DoS e DDoS direcionados.
Fazendo um teste com a ferramenta SlowLoris em um servidor apache Default por cerca de 30 segundos, foram capturadas mais de 10000 requisições e deixando o servidor indisponível de quase tão lento. Lentidão provocada pelo numero de requisições DNS realizadas. Vamos efetuar a instalação e configuração do Mod_Evasive.
Instalando o ModEvasive via repositório
# apt-get install libapache2-mod-evasive
Crie o diretório de Logs do Mod Evasive
# mkdir -p /var/log/apache2/evasive
# chown -R www-data:root /var/log/apache2/evasive
Agora vamos editar o arquivo de configuração do Mod_Evasive e parametrizar o nosso apache para identificar um ataque
# vim /etc/apache2/mods-available/evasive.load
Você terá que ver algo parecido com LoadModule evasive20_module /usr/lib/apache2/modules/mod_evasive20.so
Agora edite o arquivo evasive.conf para definir os parâmetros de configuração. Você terá que descomentar os itens que deseja usar
# vim /etc/apache2/mods-available/evasive.conf
<IfModule mod_evasive20.c>
#DOSHashTableSize 3097
#DOSPageCount 2
#DOSSiteCount 50
#DOSPageInterval 1
#DOSSiteInterval 1
#DOSBlockingPeriod 10
#DOSEmailNotify you@yourdomain.com
#DOSSystemCommand "su - someuser -c '/sbin/... %s ...'"
#DOSLogDir "/var/log/apache2/evasive/"
</IfModule>
DOSEmailNotify sammy@example.com :: E-mail de modificação.
DOSWhitelist 192.168.2.10 :: Whitelist do ModEvasive
DOSPageCount 20 :: É o numero de requisições que poderão ser efetuadas pelo mesmo IP dentro de um intervalo de 1 segundo
DOSSiteCount 100 :: É o numero de requisições que poderão ser efetuadas pelo mesmo IP vindo de X Web Site
DOSBlockingPeriod 10 é a quantidade de tempo em segundos que o site será bloqueado para aquele IP. Durante esse tempo o cliente receberá um 403 forbidden.
Veja também:
- ModSecurity Web Application Firewall: Configurando Regras de Bloqueio de SQL Injection e XSS
- Instalando o ModSecurity Detection: Open Source Web Application Firewall
Configure da forma que desejar e restarte o apache :)
Matheus, parabéns cara... Vou testar...
ResponderExcluirOpa, obrigado!!!
ExcluirQual Debian vocês estão usando no exemplo da imagem com a página do Apache ?.
ResponderExcluirDebian 8 Jessie.
Excluir