Installer DDOS Deflate sur Debian 7

1/52/53/54/55/5 (4 votes, moyenne: 4,00 sur 5)
Loading...
I

Attention, cet article a plus d'une année d'ancienneté. Il est possible que les informations présentées ne soient plus à jour, spécialement dans le cadre d'un article technique.


Bonjour à tous,

 

Aujourd’hui, on va voir comment installer le script DDOS Deflate sur un serveur Debian 7 « Wheezy ».

 

Avant tout, Deflate est un « vieux » programme qui ne semble plus être mis à jour et qui ne fonctionne pas sur Debian Wheezy sans quelques modifications.

Toutefois, après résolutions de quelques petites erreur (nom du service cron, et shell d’exécution du script) j’ai réussi à le rendre fonctionnel et il est quand même très efficace donc je vous partage mes configurations.

 

Installation de DDOS Deflate :

J’ai créer mon propre fork de DDOS Deflate, spécialement pour Debian Wheezy, tout est disponible sur mon github.

On installe Deflate avec ce script :

wget -O- https://raw.githubusercontent.com/stylersnico/DDOS-Deflate-for-Debian-7/master/install.sh | sh

 

 

Lancement de DDOS Deflate :

Le script est automatiquement lancé et configuré lors de l’installation et si tout fonctionne bien vous devriez avoir quelque chose comme cela qui est passé dans votre shell :

 

[....] Restarting periodic command scheduler: cron[....] Stopping periodic co[ ok scheduler: cron.
[ ok ] Starting periodic command scheduler: cron.
[....] Restarting periodic command scheduler: cron[....] Stopping periodic co[ ok scheduler: cron.
[ ok ] Starting periodic command scheduler: cron.

 

Maintenant, lancez la commande suivante :

/usr/local/ddos/ddos.sh

 

Cette commande devrait vous sortir le même résultat :

netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr | grep -v -e server -e Address -e 127.0.0.1 -e 0.0.0.0

 

Par exemple pour moi :

root@debian:/usr/local/ddos# /usr/local/ddos/ddos.sh
 1 192.168.1.24
 1 serveurs)
 1 locale
root@debian:/usr/local/ddos# netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr | grep -v -e server -e Address -e 127.0.0.1 -e 0.0.0.0
 1 192.168.1.24
 1 serveurs)
 1 locale

 

Si tout est bon, votre DDOS Deflate devrait marcher.

 

 

Test de fonctionnement :

Je vais me servir d’Apache Bench sur un serveur distant pour voir le comportement du serveur de test avec la commande suivante :

ab -n 200000 -c 100 http://192.168.1.13/

 

Voici le résultat :

root@debian:~# ab -n 200000 -c 100 http://192.168.1.13/
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking 192.168.1.13 (be patient)
Completed 20000 requests
Completed 40000 requests
apr_poll: The timeout specified has expired (70007)
Total of 45522 requests completed
root@debian:~#

 

La bestiole est un peu longue à la détente vu que le script s’exécute 1 fois par minute, mais ça marche.

Maintenant on rentre cette commande (192.168.1.231 était l’ip de mon serveur qui lançait l’attaque) :

iptables -L INPUT -v -n | grep "192.168.1.231"

 

Et voici le résultat :

1425 93716 DROP       all  --  *      *       192.168.1.231        0.0.0.0/0

 

Et lorsque j’essaye de relancer une attaque :

root@debian:~# ab -n 200000 -c 100 http://192.168.1.13/
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking 192.168.1.13 (be patient)
apr_poll: The timeout specified has expired (70007)

 

Et le top c’est que le processeur n’est pas du tout utilisé ! Voyez par vous même :

iptable-anti-ddos-test

 

 

Pas mal non ?

Mais le problème c’est qu’il faudra au maximum 1 minute au système pour se déclencher en cas d’attaque. C’est court, mais sur certains serveurs peu puissant c’est suffisant pour crashé le système alors si vous souhaitez protéger un serveur web par exemple, je vous conseille de suivre cet article en supplément, comme ça Nginx pourra mitiger l’attaque avant qu’elle soit définitivement bloquée par iptables.

 

A propos de l'auteur

Nicolas Simond

Ingénieur Systèmes et Réseaux et guitariste hard rock et metal à mes heures perdues.
Je suis le créateur et l'unique rédacteur d'Abyss Project, c'est ici que je note la plupart de mes procédures et quelques divagations.

Si vous l'article vous a aidé, pensez à me payer un café :)

Subscribe
Notify of
guest

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

6 Commentaires
Plus récents
Plus anciens Populaires
Inline Feedbacks
View all comments
Sn4kY
Sn4kY
9 années plus tôt

Salut.
J’essaye de comprendre la différence entre ta version et l’original.
D’après ce que j’ai pu en lire, tu as simplement abandonné le /etc/cron.d/ddos.cron au profit de /etc/crontab ?

cron ne lit tout simplement pas le fichier d’origine, mais /etc/cron.d/ddos fonctionne parfaitement….

stc
stc
9 années plus tôt

Salut, merci pour cet article, la j’installe une wheezy 7.5 quand je lance la commande ./ddos.sh -c j’ai 2 petits messages :
crond: unrecognized service
crond: unrecognized service
Je l’ai alors lancé sans l’option -c, ça change quoi ?
Merci

Renaud
Renaud
9 années plus tôt

Impossible de le DL a partir de debian « connexion en cours » et ça reste bloquer pareille pour no more DDOS…