Posts Tagged ddos

Apache2 – mod_evasive

Vediamo come prevenire attacchi DDOS con questo modulo di apache:

# up2date -i httpd-devel
# cd /usr/local/src
# wget http://www.zdziarski.com/blog/wp-content/uploads/2010/02/mod_evasive_1.10.1.tar.gz
# tar -zxvf mod_evasive_1.10.1.tar.gz
# cd mod_evasive
# /usr/sbin/apxs -cia mod_evasive20.c

Adesso aggiungiamo quanto segue in /etc/apache2/apache2.conf

<IfModule mod_evasive20.c>
DOSHashTableSize 3097
DOSPageCount 5
DOSSiteCount 100
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 600

</IfModule>

# /etc/init.d/apache2 restart

Share

, ,

No Comments

Rate-limit: salvaci dal DDoS

Questo interessantissimo modulo di IPTables ci permette di regolare le connessioni in arrivo sulla nostra macchina, in modo da limitare i danni, sia in caso di DDoS che di bruteforce, in quest’ultimo caso puo’ essere evitato con le seguenti regole:

iptables -I INPUT -p tcp --dport 22 -i eth0 -m state --state NEW -m recent --set
iptables -I INPUT -p tcp --dport 22 -i eth0 -m state --state NEW -m recent \
--update --seconds 60 --hitcount 4 -j DROP

Dopo 4 tentativi in 60 secondi l’ip viene droppato.

Con la seguente regola invece possiamo limitare i pacchetti di tipo ICMP (molto spesso usati negli attacchi DDoS) a 3 richieste per secondo, il resto viene droppato:

iptables -I INPUT -p icmp --icmp-type echo-request -m limit !--limit 3/s -j ACCEPT

Un attacco DDoS invece su di un range di porte che va dalla 20100 alla 20400 e che accetta pacchetti UDP puo’ essere limitato cosi’:

iptables -A INPUT -p udp -m udp --dport 20100:20500 -m state --state NEW -m recent --set --name DEFAULT \
--rsource
iptables -A INPUT -p udp -m udp --dport 20100:20500 -m state --state NEW -m recent --update --seconds 10 \
--hitcount 10 --name DEFAULT --rsource -j DROP

Share

, , , ,

No Comments