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ß
DDoS via iptables blockieren
-
- Administrator
- Posts: 2636
- Joined: 2004-01-21 17:44
Re: DDoS via iptables blockieren
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.
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.
“Some humans would do anything to see if it was possible to do it. If you put a large switch in some cave somewhere, with a sign on it saying 'End-of-the-World Switch. PLEASE DO NOT TOUCH', the paint wouldn't even have time to dry.” — Terry Pratchett, Thief of Time
-
- Posts: 65
- Joined: 2007-10-01 20:17
Re: DDoS via iptables blockieren
Es ist ein Synflood der rein kommt.
Wie könnte ich denn z.B. den Useragent herausfinden und dann blockierenß
Gruß
Wie könnte ich denn z.B. den Useragent herausfinden und dann blockierenß
Gruß
-
- Project Manager
- Posts: 11164
- Joined: 2003-02-27 01:00
- Location: Hamburg
Re: DDoS via iptables blockieren
SynCookies sind bereits aktiviert?
PayPal.Me/JoeUser ● FreeBSD Remote Installation
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
-
- Administrator
- Posts: 2636
- Joined: 2004-01-21 17:44
Re: DDoS via iptables 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.inchez wrote:Wie könnte ich denn z.B. den Useragent herausfinden und dann blockieren
“Some humans would do anything to see if it was possible to do it. If you put a large switch in some cave somewhere, with a sign on it saying 'End-of-the-World Switch. PLEASE DO NOT TOUCH', the paint wouldn't even have time to dry.” — Terry Pratchett, Thief of Time
-
- Posts: 65
- Joined: 2007-10-01 20:17
Re: DDoS via iptables blockieren
SynCoockes sind aktiviert, ja.
Ich benutze Nginx.
Gruß
Ich benutze Nginx.
Gruß
-
- Posts: 65
- Joined: 2007-10-01 20:17
Re: DDoS via iptables blockieren
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?
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?
-
- Administrator
- Posts: 2636
- Joined: 2004-01-21 17:44
Re: DDoS via iptables blockieren
Da geht das mit dem HttpBrowserModule.inchez wrote:Ich benutze Nginx.
“Some humans would do anything to see if it was possible to do it. If you put a large switch in some cave somewhere, with a sign on it saying 'End-of-the-World Switch. PLEASE DO NOT TOUCH', the paint wouldn't even have time to dry.” — Terry Pratchett, Thief of Time