Kleine ddos protection

Alles rund um sicherheitsrelevante Fragen und Probleme.
Antworten
Darkoon
Beiträge: 6
Registriert: 04.01.2015 22:13:46

Kleine ddos protection

Beitrag von Darkoon » 04.01.2015 22:20:34

Hey
Ich hab mir jetzt einen billigen vserver für ddos protection zwecke gekauft, nun möchte ich die firewall so konfigurieren dass nurnoch auf den port 80(wo mein reverse proxy läuft) maximal 10 connections per ip aufgebaut werden können.
Was jetzt mein problem ist:
Ich hab hier: http://www.cyberciti.biz/faq/iptables-c ... its-howto/
Das gefunden: /sbin/iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 20 -j REJECT --reject-with tcp-reset
Funktioniert aber anscheinend nicht:
iptables: No chain/target/match by that name.

Das os: Debian weezy (die aktuellste version/ komplett frisch aufgesetzt)
Für weitere protection vorschläge bin ich gern offen.

Ich freue mich auf eure antworten!
Danke :)

Benutzeravatar
GregorS
Beiträge: 3305
Registriert: 05.06.2008 09:36:37
Wohnort: Freiburg
Kontaktdaten:

Re: Kleine ddos protection

Beitrag von GregorS » 05.01.2015 13:41:52

Darkoon hat geschrieben:Hey
... Das gefunden: /sbin/iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 20 -j REJECT --reject-with tcp-reset
Funktioniert aber anscheinend nicht:
iptables: No chain/target/match by that name.
Was sagt denn 'iptables -L'?

Gruß

Gregor
Wenn man keine Probleme hat, kann man sich welche machen. ("Großes Lötauge", Medizinmann der M3-Hopi und sog. Maker)

wanne
Moderator
Beiträge: 7664
Registriert: 24.05.2010 12:39:42

Re: Kleine ddos protection

Beitrag von wanne » 05.01.2015 15:37:36

Darkoon hat geschrieben:nun möchte ich die firewall so konfigurieren dass nurnoch auf den port 80(wo mein reverse proxy läuft) maximal 10 connections per ip aufgebaut werden können.
Ich möchte mal anmerken dass für eine Größere Seite (Sowas wie heiße.de,bild.de...) 20-40 Verbindungen für einen einzelnen Browser durchaus normal sind. Ganz zu schweigen davon, wenn sich mehrere Geräte hinter einem NAT verstecken...
Mit so ner Konfiguration sorgst du mit unter für ein Surfen mit angezogener Handbremse...
Habe aber gerade mal hier im Debianforum getestet. Da macht mir mein Browser nur 3 auf. Auf jeden fall mal Gucken. Wie oft da was reinfällt. Ich limitiere Übleicherweise auf ganze Subnetze. Da setzte ich das Connlimit etwas höher. DDOS Blocken kann man dann meist sogar besser weil die meisst viele Clienten im gleichen Subnetz haben. (10x10 sind mehr als 1x50.)
Erwicht natürlich dann auch unschuldige, die im gleichen Subnetzt sitzen.
Darkoon hat geschrieben:Ich hab mir jetzt einen billigen vserver
Billige VServer können kein iptables. (Allerdings klingt die Fehlermeldung etwas komisch dafür.) Du kannst dir stattdessen einen nginx als Proxy hinstellen, der dir die Verbindungen limitiert. Der ist auch ziemlich flott.
rot: Moderator wanne spricht, default: User wanne spricht.

Darkoon
Beiträge: 6
Registriert: 04.01.2015 22:13:46

Re: Kleine ddos protection

Beitrag von Darkoon » 05.01.2015 16:48:58

GregorS hat geschrieben:
Darkoon hat geschrieben:Hey
... Das gefunden: /sbin/iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 20 -j REJECT --reject-with tcp-reset
Funktioniert aber anscheinend nicht:
iptables: No chain/target/match by that name.
Was sagt denn 'iptables -L'?

Gruß

Gregor
iptables -L :

Code: Alles auswählen

root@v258633:~/scripts# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
fail2ban-ssh  tcp  --  anywhere             anywhere             multiport dports ssh

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Chain fail2ban-ssh (1 references)
target     prot opt source               destination
DROP       all  --  XXXxxx.xxx.xxx.  anywhere
RETURN     all  --  anywhere             anywhere
root@v258633:~/scripts#
wanne hat geschrieben:
Darkoon hat geschrieben:nun möchte ich die firewall so konfigurieren dass nurnoch auf den port 80(wo mein reverse proxy läuft) maximal 10 connections per ip aufgebaut werden können.
Ich möchte mal anmerken dass für eine Größere Seite (Sowas wie heiße.de,bild.de...) 20-40 Verbindungen für einen einzelnen Browser durchaus normal sind. Ganz zu schweigen davon, wenn sich mehrere Geräte hinter einem NAT verstecken...
Mit so ner Konfiguration sorgst du mit unter für ein Surfen mit angezogener Handbremse...
Habe aber gerade mal hier im Debianforum getestet. Da macht mir mein Browser nur 3 auf. Auf jeden fall mal Gucken. Wie oft da was reinfällt. Ich limitiere Übleicherweise auf ganze Subnetze. Da setzte ich das Connlimit etwas höher. DDOS Blocken kann man dann meist sogar besser weil die meisst viele Clienten im gleichen Subnetz haben. (10x10 sind mehr als 1x50.)
Erwicht natürlich dann auch unschuldige, die im gleichen Subnetzt sitzen.
Darkoon hat geschrieben:Ich hab mir jetzt einen billigen vserver
Billige VServer können kein iptables. (Allerdings klingt die Fehlermeldung etwas komisch dafür.) Du kannst dir stattdessen einen nginx als Proxy hinstellen, der dir die Verbindungen limitiert. Der ist auch ziemlich flott.
Also ich hab jetzt auf der seite direkt iosec eingebunden, und auf dem vserver(als proxy server) libapache2-mod-evasive raufgeklatscht, ist ziemlich nice :)
Man bekommt also 2 mal iosec aufgebunden wenn man zu oft auf f5 drückt und danach hat man keinen zugriff mehr. Das ganze läuft zurzeit auf apache2.
Also 20 connections sind meiner meinung nach ausreichend, da das nur ein kleiner gameserver ist, und nur maximal 2 leute gleichzeitig drauf spielen,bzw surfen (was ich so gemerkt hab).
Der vserver läuft übrigens auf kms-hosting, weil die da einen netten ddos schutz mit drinnen haben, der mir den ärgsten mist vom pelz hält ;)

Kommen wir bitte nun zu libapache2-mod-evasive zurück, was sehr gut funktioniert, bis jetzt. Jetzt möchte ich iptables einbeziehen, nur geht das irgendwie nicht. Ich habe mich daran gehalten: http://tellini.info/2011/11/keeping-scr ... -iptables/
Nur hat iptables mit dem script schonwieder ein problem:
./ban_ip.sh x.x.x.x
iptables: No chain/target/match by that name.
./ban_ip.sh: 8: ./ban_ip.sh: at: not found

Wenn mir jemand dabei helfen würde währ das sehr nett :)

Darkoon
Beiträge: 6
Registriert: 04.01.2015 22:13:46

Re: Kleine ddos protection

Beitrag von Darkoon » 05.01.2015 20:07:59

Ok, kleines update, das script funktioniert jetzt, ..... theoretisch......unter root....

Also meine evasiv confi:

Code: Alles auswählen

DOSHashTableSize 3097
DOSPageCount 4
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 60
DOSLogDir /var/log/apache2/mod_evasive
DOSWhitelist 127.0.0.1
DOSSystemCommand "sudo /root/scripts/ban_ip.sh %s"
Im script steht:

Habe schön brav bei visudo das eingetragen:
www-data ALL=(ALL) NOPASSWD: /root/scripts/ban_ip.sh

Wenn ich mich dann also auf www-data via su umlogge kann ich auch meine ip sperren mit "sudo /root/scripts/ban_ip.sh x.x.x.x" , da komm ich für 3 minuten nicht auf die seite.
Nur bei einem test zeigts mir immer nur die "403 Forbidden" seite an.(also in der praxis machts mir keinen iptables eintrag)

Code: Alles auswählen

#!/bin/sh

IP=$1
IPTABLES=/sbin/iptables

$IPTABLES -A INPUT -s $IP -p tcp --destination-port 80 -j DROP

echo "$IPTABLES -D INPUT -s $IP -p tcp --destination-port 80 -j DROP" | at now + 3 minutes
Hilfe währ echt nett :hail:

wanne
Moderator
Beiträge: 7664
Registriert: 24.05.2010 12:39:42

Re: Kleine ddos protection

Beitrag von wanne » 06.01.2015 04:00:10

Darkoon hat geschrieben:wenn man zu oft auf f5 drückt und danach hat man keinen zugriff mehr.
Es geht nciht darum dass hier irgend jemand zu oft F5 drückt sondern dass Chrome einfach mal 20 Connections spornt, wenn er ein Seite mit vielen Bildern Javascript... Vorgesetzt bekommt. Ganz ohne dass du überhaupt irgend was machst außer die Startseite aufzurufen. Dafakto sperrst du halt mitunter einfach mal Nutzer aus, die einen Browser nutzen, die ein bisschen zu stark auf performance getrimmt sind.
rot: Moderator wanne spricht, default: User wanne spricht.

Darkoon
Beiträge: 6
Registriert: 04.01.2015 22:13:46

Re: Kleine ddos protection

Beitrag von Darkoon » 06.01.2015 20:31:23

wanne hat geschrieben:
Darkoon hat geschrieben:wenn man zu oft auf f5 drückt und danach hat man keinen zugriff mehr.
Es geht nciht darum dass hier irgend jemand zu oft F5 drückt sondern dass Chrome einfach mal 20 Connections spornt, wenn er ein Seite mit vielen Bildern Javascript... Vorgesetzt bekommt. Ganz ohne dass du überhaupt irgend was machst außer die Startseite aufzurufen. Dafakto sperrst du halt mitunter einfach mal Nutzer aus, die einen Browser nutzen, die ein bisschen zu stark auf performance getrimmt sind.
Ok, ich denk du hast mich falsch verstanden, das mit den max connections kann ich ja anpassen, das problem ist, dass er den befähl nicht ausführt(DOSSystemCommand "sudo /root/scripts/ban_ip.sh %s"). Also es kommt da zu keinem eintrag.
Der user wird schon gesperrt anhand ner 403 webseite, aber ein ddos zieht noch ziemlich viel cpu, deswegen iptables.
Mfg

Antworten