DoS & DDoS Mitigation

Denial-of-Service-Angriffe überlasten Ihren Server mit Anfragen, bis er nicht mehr erreichbar ist. Diese Seite gibt einen vollständigen Überblick über alle Schutzmaßnahmen — von Firewall-Regeln über Fail2Ban bis zu externem DDoS-Schutz.

Auf dieser Seite

DoS vs. DDoS: Ein einfacher DoS-Angriff kommt von einer einzelnen Quelle und kann effektiv auf dem Server selbst abgewehrt werden. Ein verteilter DDoS-Angriff mit Tausenden von Quell-IPs übersteigt die Kapazitäten eines einzelnen Servers — hier ist ein vorgelagerter DDoS-Schutzdienst die einzig wirksame Lösung.

Schutzmaßnahmen im Überblick

Ein vollständiger DoS-Schutz besteht aus mehreren Schichten. Die folgende Tabelle zeigt, welche Maßnahmen auf welcher Ebene wirken:

MaßnahmeBetriebssystemEbeneSchützt gegen
iptables / nftablesLinuxNetzwerkSYN-Floods, Verbindungsfluten
Fail2BanLinuxAnwendungBrute-Force, SSH-Angriffe, HTTP-Scans
Nginx Rate-LimitingLinuxHTTPSlowloris, HTTP-Floods, API-Missbrauch
Windows Defender FirewallWindowsNetzwerkRDP-Brute-Force, Port-Scans
Externer DDoS-SchutzAlleVorgelagertVolumetrische DDoS-Angriffe

Empfohlene Werte nach Servertyp

Die richtigen Rate-Limit-Werte hängen vom Einsatzzweck ab. Diese Tabelle gibt Orientierungswerte — starten Sie großzügiger und beobachten Sie die Logs, zu strenge Limits blockieren legitime Nutzer.

ServertypSSHHTTP/HTTPSHinweis
Webserver / WordPress3/min, burst 520/s, burst 100Zusätzlich Nginx Rate-Limiting empfohlen
Game Server3/min, burst 5Game-Ports (z. B. UDP 25565) separat schützen, großzügigere Burst-Werte für Spieler
Mailserver3/min, burst 5SMTP (25), IMAP (993), POP3 (995) zusätzlich mit Fail2Ban schützen
VPS / Allgemein3/min, burst 510/s, burst 50Konservative Grundkonfiguration — je nach Dienst anpassen

1. Rate-Limiting mit iptables Linux

Mit dem limit- und recent-Modul können Sie die Anzahl neuer Verbindungen pro IP und Zeitfenster begrenzen.

SSH-Port absichern (Port 22)

Maximal 3 neue Verbindungen pro Minute — weitere Versuche werden verworfen:

Terminal
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m limit --limit 3/m --limit-burst 5 -j ACCEPT iptables -A INPUT -p tcp --dport 22 -j DROP

Webserver absichern (Port 80 / 443)

Begrenzt etablierte Verbindungen auf 20 pro Sekunde pro IP — schützt gegen Slowloris und HTTP-Floods:

Terminal
iptables -A INPUT -p tcp --dport 80 -m state --state ESTABLISHED -m limit --limit 20/s --limit-burst 100 -j ACCEPT iptables -A INPUT -p tcp --dport 80 -j DROP iptables -A INPUT -p tcp --dport 443 -m state --state ESTABLISHED -m limit --limit 20/s --limit-burst 100 -j ACCEPT iptables -A INPUT -p tcp --dport 443 -j DROP

Temporäres IP-Blocking mit dem recent-Modul

IPs, die innerhalb von 60 Sekunden mehr als 15 neue Pakete senden, werden automatisch blockiert:

Terminal
iptables -A INPUT -p tcp --dport 80 -m state --state NEW -m recent --set iptables -A INPUT -p tcp --dport 80 -m state --state NEW -m recent --update --seconds 60 --hitcount 15 -j DROP iptables -A INPUT -p tcp --dport 80 -j ACCEPT

2. Rate-Limiting mit nftables Linux

Mit nftables lässt sich Rate-Limiting direkt in der Konfigurationsdatei definieren — übersichtlicher und performanter als iptables.

SSH-Brute-Force-Schutz

Fügen Sie diese Zeilen in den input-Block Ihrer nftables-Konfiguration ein:

/etc/nftables.conf
Terminal
tcp dport 22 ct state new limit rate 5/minute accept tcp dport 22 ct state new drop

HTTP-Flood-Schutz

Begrenzt neue HTTP/HTTPS-Verbindungen auf 100 pro Sekunde:

/etc/nftables.conf
Terminal
tcp dport { 80, 443 } ct state new limit rate 100/second accept tcp dport { 80, 443 } ct state new drop

SYN-Flood-Schutz

Verwirft TCP-Pakete ohne gültigen Verbindungsstatus:

/etc/nftables.conf
Terminal
tcp flags syn / fin,syn,rst,ack limit rate 1000/second burst 2000 packets accept tcp flags syn / fin,syn,rst,ack drop

Laden Sie die Konfiguration nach jeder Änderung mit nft -f /etc/nftables.conf neu.

3. Fail2Ban — automatisches IP-Blocking Linux

Fail2Ban überwacht Log-Dateien und sperrt automatisch IPs, die zu viele fehlgeschlagene Versuche produzieren. Es arbeitet nahtlos mit iptables und nftables zusammen.

Installation

Terminal
apt update && apt install fail2ban

SSH-Schutz konfigurieren

Erstellen Sie die folgende neue Datei. Sie legt fest, dass SSH-Adressen nach 5 Fehlversuchen innerhalb von 10 Minuten für 1 Stunde gesperrt werden:

Neue Datei erstellen: /etc/fail2ban/jail.local
Terminal
[sshd] enabled = true port = ssh maxretry = 5 bantime = 3600 findtime = 600

Dienst starten & Status prüfen

Terminal
systemctl enable --now fail2ban fail2ban-client status sshd

4. Nginx Rate-Limiting Linux

Nginx bietet integriertes Rate-Limiting auf HTTP-Ebene — ideal gegen Slowloris, API-Missbrauch und HTTP-Floods, die die Firewall bereits passiert haben.

Schritt 1: Rate-Limit Zone definieren

Fügen Sie folgende Zeile in den http-Block Ihrer Nginx-Hauptkonfiguration ein:

/etc/nginx/nginx.conf — im http-Block
Terminal
limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s;

Schritt 2: Rate-Limit auf einen Server-Block anwenden

Fügen Sie folgendes in den location-Block Ihrer Site-Konfiguration ein:

/etc/nginx/sites-available/ihre-domain.conf — im server-Block
Terminal
server { location / { limit_req zone=one burst=20 nodelay; } }

rate=10r/s erlaubt 10 Anfragen pro Sekunde pro IP. burst=20 erlaubt kurze Spitzen — danach werden überschüssige Anfragen mit HTTP 503 abgelehnt.

5. Windows Defender Firewall & RDP absichern Windows

Auf Windows-Servern erfolgt der Schutz über die Windows Defender Firewall und Kontorichtlinien. Der kritischste Angriffspunkt ist RDP (Port 3389).

RDP auf eine bestimmte IP einschränken

Erlaubt RDP-Zugriff ausschließlich von einer vertrauenswürdigen IP — alle anderen werden blockiert:

PowerShell
New-NetFirewallRule -DisplayName "RDP von Admin-IP" -Direction Inbound -LocalPort 3389 -Protocol TCP -Action Allow -RemoteAddress 192.0.2.5 New-NetFirewallRule -DisplayName "RDP blockieren" -Direction Inbound -LocalPort 3389 -Protocol TCP -Action Block

Empfohlene Werte für Windows-Server

ServertypRDPEmpfehlung
Webserver (IIS)Nur Admin-IPIIS Dynamic IP Restrictions Modul aktivieren
Game ServerNur Admin-IPGame-Ports explizit freigeben, alle anderen blockieren
MailserverNur Admin-IPSMTP/IMAP/POP3-Ports nur für notwendige Quellen öffnen

Kontosperrungsrichtlinie konfigurieren

Öffnen Sie secpol.mscKontorichtlinien → Kontosperrungsrichtlinie — wirkt wie Fail2Ban für RDP und lokale Anmeldungen:

EinstellungEmpfohlener Wert
Kontosperrungsschwellenwert5 Fehlversuche
Kontosperrdauer30 Minuten
Beobachtungsfenster15 Minuten

6. Regeln persistent speichern Linux

iptables-Regeln gehen nach einem Neustart verloren — speichern Sie sie dauerhaft:

Debian / Ubuntu

Terminal
apt install iptables-persistent netfilter-persistent save

CentOS / RHEL

Terminal
iptables-save > /etc/sysconfig/iptables systemctl restart iptables

nftables (alle Distributionen)

Terminal
nft list ruleset > /etc/nftables.conf systemctl enable --now nftables

7. Externer DDoS-Schutz

Bei volumetrischen DDoS-Angriffen (mehrere Gbit/s) sind serverseitige Maßnahmen wirkungslos — die Leitung ist bereits überlastet, bevor Pakete den Server erreichen:

CDN mit DDoS-Schutz
Viele CDN-Anbieter bieten integrierten DDoS-Schutz — einfach durch DNS-Umstellung aktivierbar.
Server4You Netzwerkschutz
Als Ihr Hoster verfügen wir über Schutzmaßnahmen auf Netzwerkebene. Volumetrische Angriffe werden bereits auf Infrastrukturebene erkannt und mitigiert, bevor sie Ihren Server erreichen.
Dedicated Scrubbing
Spezialisierte DDoS-Schutzdienste für Unternehmen mit besonders hohen Verfügbarkeitsanforderungen.

Weiterführende Firewall-Anleitungen

Für vollständige Firewall-Konfigurationen mit Default-Deny-Strategie empfehlen wir unsere detaillierten Anleitungen.