(D) DoS Deflate é um script em shell Bash, leve, projetado para auxiliar no processo de bloquear ou minimizar um ataque de negação de serviço. Ele utiliza o comando abaixo para criar uma lista de endereços IP conectados ao servidor, juntamente com o seu número total de conexões. É uma das soluções mais simples e mais fácil de instalar a nível de software.
netstat-ntu | awk ‘{print $ 5}’ | cut-d:-f1 | sort | uniq-c | sort-n
Endereços IP com mais de um número pré-configurado de conexões são automaticamente bloqueados no firewall do servidor, que pode ser tanto iptables quanto APF.
Características notáveis
É possível armazenar endereços IP em uma whitelist, via /usr/local/ddos/ignore.ip.list.
Simples arquivo de configuração: /usr/local/ddos/ddos.conf
Os endereços IP são automaticamente desbloqueados após um prazo pré-configurados (default: 600 segundos)
O script pode ser executado em uma freqüência escolhida através do arquivo de configuração (default: 1 minuto)
Você pode receber alertas de e-mail quando endereços IP são bloqueados.
Instalação
wget http://www.inetbase.com/scripts/ddos/install.sh
chmod 0700 install.sh
. / Install.sh
Desinstalação
wget http://www.inetbase.com/scripts/ddos/uninstall.ddos
chmod 0700 uninstall.ddos
. / Uninstall.ddos
Hack
Caso a intensidade do ataque seja muito grande que o tempo de 1 minuto de intervalo entre as execuções do ddos.sh não esteja sendo o suficiente para bloquear todos os atacantes, altere a partir da linha 81 do script ddos.sh, comentando a linha 81 a qual corresponde a inserção do período de intervalo de execução do script na cron e inserindo as linhas abaixo para que o script execute a cada 15 segundos:
echo “* * * * * root /usr/local/ddos/ddos.sh >/dev/null 2>&1″ >> $CRON
echo “* * * * * sleep 15 && root /usr/local/ddos/ddos.sh >/dev/null 2>&1″ >> $CRON
echo “* * * * * sleep 30 && root /usr/local/ddos/ddos.sh >/dev/null 2>&1″ >> $CRON
echo “* * * * * sleep 45 && root /usr/local/ddos/ddos.sh >/dev/null 2>&1″ >> $CRON