Page 1 of 1

DDoS via iptables blockieren

Posted: 2010-11-30 05:54
by inchez
Guten Morgen,

ich habe folgends Problem, auf einige unserer Gbit / 10 Gbit Server wird ein schwerer DDoS gefahren.

Diese Server sind nur Loadbalancer und hinter ihnen stehen via 100Mbit angebundene Appserver.

Wie kann ich bei den massiven und gut angebundenen Maschinen die "bad packets" filtern? Also die Gbit Server laufen ohne Probleme, sind nur 400Mbit vollgemüllt, das Problem ist sie geben diese 400Mbit weiter an die Appserver und die sind dann voll...

Habe im iptables mal eingestellt "Alles blockieren außer limit 1s, limit burst 2s." - Habe aber den Eindruck das die Regel nicht greift? Gibt zumindest keine Verbesserung der Situation.

Scripts wie DDoS Deflate bringen offenbar nichts da die Bots nur mit 1-3 Connections angreifen und ich dann mit DDoS Delfate auch normale User wegsperren würde...

Gruß

Re: DDoS via iptables blockieren

Posted: 2010-11-30 11:17
by daemotron
Wie sieht der DDoS denn genau aus? TCP oder UDP? Falls TCP (wie von mir vermutet): Regulärer Verbindungsaufbau mit anschließendem regulärem Request, oder irgendwas kaputtes (SYN/FIN o. ä.)?

Worauf ich raus will: woran erkennst Du ein Paket, das zu einem am DDoS beteiligten Client gehört? Auf Layer 3 bist Du da ziemlich eingeschränkt. Vielleicht hilft es, das ein oder andere Netz temporär auszusperren, Clients mit mehr als n TCP-Verbindungen pro Minute/Sekunde (die Rate hängt von der Applikation ab) für eine Minute auszusperren oder per Traffic Shaping runterzupriorisieren (wie das mit Linux geht, kann ich Dir aber nicht genau beschreiben).

Der eigentliche Knackpunkt wäre aber wohl der Application Layer - wenn Du dort ein zuverlässiges Merkmal findest (irgendein Request Header z. B.), könnte der Loadbalancer die Anfragen verwerfen, statt sie an die App-Server durchzureichen.

Re: DDoS via iptables blockieren

Posted: 2010-11-30 15:33
by inchez
Es ist ein Synflood der rein kommt.

Wie könnte ich denn z.B. den Useragent herausfinden und dann blockierenß

Gruß

Re: DDoS via iptables blockieren

Posted: 2010-11-30 15:39
by Joe User
SynCookies sind bereits aktiviert?

Re: DDoS via iptables blockieren

Posted: 2010-11-30 19:12
by daemotron
inchez wrote:Wie könnte ich denn z.B. den Useragent herausfinden und dann blockieren
Hängt vom eingesetzten Loadbalancer ab - bei einem reverse proxy-enden Apachen ginge das z. B. mit mod_authz_host und mod_setenvif. Bei anderen Loadbalancern (Pound, Varnish, HAProxy & Co) gibt es ähnliche Möglichkeiten.

Re: DDoS via iptables blockieren

Posted: 2010-12-01 04:39
by inchez
SynCoockes sind aktiviert, ja.

Ich benutze Nginx.

Gruß

Re: DDoS via iptables blockieren

Posted: 2010-12-02 18:22
by inchez
Ich hätte da mal eine Frage zum Aufbau von iptables rules.

Ich verwalte mein iptables per Webmin.

Wenn ich nun input rules aufstelle ist die Reinfolge relevant?

Habs aktuell wie folgt:

Accept 1.2.3.4 <- Eine IP die unbeschränkten Zugriff haben soll
Accept ssh port
Accept if limit 1 burst 2s
Accept www port
Block All

Nun sollte er ja 1.2.3.4 und ssh grundsätzlich rein lassen, und alles andere checken nach limit?

Oder hab ich da nen Denkfehler?

Gruß

P.s: Oder einfach http://www.configserver.com/cp/csf.html nutzen?

Re: DDoS via iptables blockieren

Posted: 2010-12-04 09:33
by daemotron
inchez wrote:Ich benutze Nginx.
Da geht das mit dem HttpBrowserModule.