# OPNsense DDoS Protection: Härtung gegen Überlastungsangriffe
TL;DR / Management Summary Ein massiver DDoS-Angriff kann jede Firewall lahmlegen, indem er den RAM (State-Tabelle) oder die CPU flutet. OPNsense bietet integrierte Mechanismen wie SYN-Proxy, Rate Limiting und Sticky Tables, um kleine bis mittlere Angriffe (DoS) abzufedern. Ein Senior Admin nutzt diese Features, um automatische Sperren für aggressive Quell-IPs zu verhängen und so die Dienstverfügbarkeit für legitime User zu sichern. Hinweis: Massive volumetrische Angriffe (Gbit/s Bereich) müssen bereits beim ISP oder via Cloud-Dienst (Cloudflare) gefiltert werden.
# 1. Einführung & Bedrohungsszenarien
Die Anatomie des Sturms.
Wir schützen uns gegen drei Arten von Angriffen:
- State Exhaustion: Der Angreifer versucht, die State-Tabelle der Firewall zu füllen (Artikel 554).
- Application Layer (L7): Zu viele Anfragen an den Webserver (Port 80/443).
- SYN Flood: Überflutung mit Verbindungsanfragen, die nie abgeschlossen werden.
# 2. Härtung auf Protokoll-Ebene
Den ‘pf’ Paketfilter tunen.
# 1. SYN-Proxy
Der SYN-Proxy schaltet sich zwischen Client und Server. Er schließt den TCP-Handshake erst ab, bevor er die Verbindung an den internen Server weitergibt.
- Aktion: In der Firewall-Regel unter
Advanced Options -> State TypeaufSYN Proxystellen (nur für kritische Inbound-Dienste).
# 2. Connection Limits
Begrenzen Sie, was ein einzelner Host darf:
- Max. states per host: z.B.
100. Verhindert, dass eine IP alle Ressourcen belegt. - Max. new connections / per second: z.B.
10. Stoppt schnelle Bot-Scanner.
# 3. Deep Dive: Sticky Tables & Auto-Block
Vom Scanner zum Blackhole.
OPNsense kann IPs automatisch in eine Sperrliste verschieben, wenn sie sich “schlecht” verhalten.
- Alias erstellen:
BRUTE_FORCE_BLOCKS(Typ:External). - In der Firewall-Regel (z.B. für Web oder VPN):
- Setzen Sie das Limit für
Max. Source NodesundMax. src-nodes connections. - Wählen Sie im Feld
Identify and add to aliasden AliasBRUTE_FORCE_BLOCKS.
- Setzen Sie das Limit für
- Ergebnis: Jeder, der das Limit überschreitet, landet automatisch im “Gefängnis” und wird global geblockt.
# 4. Day-2 Operations: Rate Limiting (Shaper)
Drosseln statt Blockieren.
Manchmal ist ein kompletter Block zu radikal.
- Aktion: Nutzen Sie den Traffic Shaper (Artikel 552), um die Anzahl der Pakete pro Sekunde (PPS) für unkritische Protokolle (z.B. ICMP) hart zu limitieren.
- Vorteil: Die Firewall bleibt erreichbar, auch wenn sie mit Pings bombardiert wird.
# 5. Troubleshooting & “War Stories”
Wenn der Schutz den User trifft.
# Top 3 Fehlerbilder
-
Symptom: Legitime User werden fälschlicherweise geblockt.
- Ursache: Zu strikte Limits für “Max. connections per host”. Moderne Browser öffnen oft 20-30 parallele Verbindungen für eine einzige Webseite.
- Lösung: Limit auf mindestens
50-100erhöhen.
-
Symptom: Firewall ist CPU-seitig am Limit während eines Angriffs.
- Ursache: Logging für die Block-Regeln ist aktiv. Das Schreiben tausender Log-Zeilen pro Sekunde verbraucht mehr CPU als das eigentliche Blockieren.
- Lösung: Logging für DDoS-Blockregeln deaktivieren.
-
Symptom: Die State-Tabelle läuft trotzdem voll.
- Lösung: Timeouts für
unauthenticatedVerbindungen radikal senken (System -> Settings -> Advanced).
- Lösung: Timeouts für
# “War Story”: Der “Friendly” DoS
Ein Admin aktivierte ein neues Monitoring-System, das alle 5 Sekunden 50 verschiedene Checks gegen die Firewall ausführte.
Das Ergebnis: Innerhalb von 5 Minuten landete der Monitoring-Server im BRUTE_FORCE_BLOCKS Alias. Der Admin verbrachte Stunden mit der Suche nach “Netzwerkfehlern”, bis er in die Alias-Tabelle schaute.
Lehre: Whitelisten Sie Ihre eigenen Management-IPs (Artikel 555) in allen Rate-Limiting Regeln!
# 6. Monitoring & Alerting
Die Sturmwarnung.
# IDS (Suricata) Integration
Nutzen Sie Suricata (Artikel 589), um spezifische DDoS-Signaturen (z.B. Slowloris) zu erkennen.
- KPI:
Packets per secondam WAN. Wenn dieser Wert ohne Grund um 500% steigt -> Alarm!
# 7. Fazit & Empfehlung
Schutz gegen Überlastung ist eine Frage der Balance.
- Empfehlung: Nutzen Sie SYN-Proxy nur für extrem exponierte Dienste.
- Wichtig: Der beste Schutz gegen große DDoS-Attacken ist eine Anycast-IP oder ein Cloud-Scrubbing Dienst (z.B. Cloudflare Magic Transit). OPNsense schützt Sie gegen das “Rauschen”, nicht gegen einen gezielten 100 Gbit/s Angriff.
# Anhang: Cheatsheet
| Aufgabe | Pfad |
|---|---|
| State Limits | Firewall -> Rules -> [Edit Rule] -> Advanced |
| Auto-Block Alias | Firewall -> Aliases |
| SYN-Proxy Check | Diagnostics -> Network -> States |
| Global Timeouts | System -> Settings -> Advanced |