Debian server beheer

(D)DoS Deflate installeren en configureren

(D)DoS Deflate is een shell script waarmee je niet al te zware DoS en DDoS aanvallen af kunt slaan. Het script controleert elke minuut hoeveel verbindingen er met je server zijn en blokkeert vervolgens IP adressen die een in te stellen maximaal aantal verbindingen overschrijden.

DDoS Deflate gebruikt de volgende opdracht om te tellen hoeveel verbindingen er zijn:

netstat -ntu | awk ''{print $5}'' | cut -d: -f1 | sort | uniq -c | sort -n

Om het script te installeren zijn drie opdrachten nodig:

wget http://www.inetbase.com/scripts/ddos/install.sh
rnchmod 0700 install.sh
rn./install.sh

Als eerste belangrijke stap voeg je jouw eigen ip-adres toe aan de whitelist. Doe dat voor je verder iets met het script doet:

nano /usr/local/ddos/ignore.ip.list

In dat bestand zie je 127.0.0.1 al staan. Voeg je eigen IP adres(sen) toe aan de whitelist, elk op een eigen regel. Sla vervolgens de whitelist op met control+O en sluit nano af met control+x. Vervolgens moeten we het script zelf aanpassen aan Debian:

nano /usr/local/ddos/ddos.sh

Onder Debian doet het script het alleen met bash. Verander de eerste regel van het script in

#!/bin/bash

Verderop in het script moet je twee keer de verwijzing naar cron aanpassen. Verander:

service crond restart

twee keer in

/etc/init.d/cron restart

Vervolgens gaan de we configuratie van (D)DoS Deflate aanpassen:

nano /usr/local/ddos/ddos.conf

Je kunt daar instellen bij hoeveel verbindingen een IP adres geblokkeerd wordt. Het is lastig om daar het juiste aantal te geven. Ik heb het op 150 staan. Je kunt vervolgens instellen om iptables te gebruiken voor het blokkeren. En tenslotte kun je een e-mailadres instellen waar een berichtje heen gaat als een adres geblokkeerd wordt. Nu testen we het script met de volgende opdracht:

/usr/local/ddos/ddos.sh

Als alles goed geïnstalleerd is krijg je een lijstje te zien met IP adressen en het aantal verbindingen dat elk adres met jouw server heeft. Vervolgens laten we het script de cron opdracht maken die nodig is om elke minuut te draaien:

/usr/local/ddos/ddos.sh -c

(D)DoS Deflate is handig maar je moet het nut niet overschatten. Bij een zware aanval zal je server alsnog onderuit gaan. Daar tegen helpen alleen hardwarematige firewalls en véél bandbreedte.