Irie ensinar nesse tópico como se proteger de ataques DDoS não DOS, a nível software existem métodos seja por Python ou Perl de criar script capazes de derrubar até mesmo servidores gigantes não irei dizer como nem como funciona mais irei explicar superficialmente, o Python como exemplo possui uma biblioteca capaz de efetuar post enviando uma requisição com IP falso ou usando uma proxy list, isso é desafiador para segurança de um servidor já que geralmente a proteção se baseia no endereço de IP, certa vez fiz um teste desenvolvi um script em Python que gerava um range aleatório com 5 mil endereço de IPs e ataquei um servidor web próprio o seu Anti-DDOS lutou bravamente por 20 segundos e bloqueou 300 endereços de IP no entanto ele teve seus recursos esgotados e caiu imediatamente ou seja esse tipo de ataque pode ser devastador irei ensinar um soluções que não é 100% mais é o único meio usado inclusive por muitas empresas desse ramo.
Em um ataque comum a primeira coisa que leva o servidor web para baixo é a sobrecarga causada por apache, php e mysql ou MariaDB. mais o nginx é um guerreiro ele suporte muitos processos sem usar muitos recursos que tal usar essa vantagem como muralha de proteção?
Primeiro você tem que ter em mente a ideia de usar o Nginx como proxy localmente ou remotamente, siga os passo agora.
Em uma maquina VPS ou dedicada limpa execute os comandos abaixo:
cd /
mkdir anti_ddos
cd anti_ddos
git clone https://github.com/kyprizel/testcookie-nginx-module.git
cd testcookie-nginx-module
wget http://nginx.org/download/nginx-1.1.15.tar.gz
tar -xzvf nginx-1.1.15.tar.gz
cd nginx-1.1.15/
./configure --add-module=/anti_ddos/testcookie-nginx-module
make
make install
Depois que tudo estiver ok e o Nginx funcionando você o configura com os parâmetros sugeridos e explicados pelo projeto opensource
https://github.com/kyprizel/testcookie-nginx-module/blob/master/README
Bem como isso vai te ajudar? todas as solicitações do servidor web a partir de agora serão válidas com um cookie ou sessão e assim o sistema saberá se um navegador válido está acessando ou um script como python como exemplo, e assim só ira passar a solicitação adiante para o apache, php ou banco de dados se ela for válida. claro que isso não é 100% seguro mais ira mitigar todos os ataques os tornando irrelevantes.