Zum Hauptinhalt springen
Zurück zur Kategorie

Cloudflare-Integration: DDoS-Schutz und CDN

Vollständige Anleitung zur Cloudflare-Einrichtung, DNS-Konfiguration, WAF-Regeln, Page Rules, Under Attack-Modus und Origin-IP-Verschleierung zum Schutz Ihres Servers vor DDoS-Angriffen.

Lesezeit: 15 Min. DDoS-Schutz & Sicherheit
cloudflareddoscdnwafdnssicherheitpage-rules

Inhaltsverzeichnis

Cloudflare-Integration: DDoS-Schutz und CDN

Cloudflare ist eine leistungsstarke Plattform, die Ihre Website vor DDoS-Angriffen schützt, ein Content Delivery Network (CDN) bereitstellt und die Leistung verbessert. Diese Anleitung behandelt die Integration von Cloudflare mit Ihrem Server, DNS-Konfiguration, WAF-Regeln und erweiterte Schutzfunktionen.

Auf REXE-Servern kann die Cloudflare-Integration zusammen mit dem Path Panel DDoS-Schutz für mehrschichtige Sicherheit verwendet werden.

Cloudflare-Konto erstellen und Site hinzufügen

Um mit Cloudflare zu beginnen, müssen Sie ein Konto erstellen und Ihre Site hinzufügen.

Kontoerstellung

  1. Gehen Sie zu cloudflare.com
  2. Klicken Sie auf "Sign Up"
  3. Registrieren Sie sich mit E-Mail und Passwort
  4. Schließen Sie die E-Mail-Verifizierung ab

Site hinzufügen

  1. Klicken Sie im Dashboard auf "Add a Site"
  2. Geben Sie Ihren Domainnamen ein (z.B. example.com)
  3. Wählen Sie einen Plan (Free-Plan enthält DDoS-Schutz)
  4. Cloudflare scannt automatisch Ihre vorhandenen DNS-Einträge

DNS-Konfiguration

Damit Cloudflare funktioniert, müssen Sie die Nameserver Ihrer Domain auf Cloudflare umstellen.

Nameserver-Änderung

Cloudflare stellt zwei Nameserver-Adressen bereit:

ns1.cloudflare.com
ns2.cloudflare.com

Aktualisieren Sie diese Adressen im Panel Ihres Domain-Registrars.

DNS-Einträge verwalten

Verwalten Sie Ihre Einträge im Cloudflare DNS-Panel:

Typ    Name           Inhalt              Proxy
A      example.com    185.x.x.x          Proxied (orange Wolke)
A      www            185.x.x.x          Proxied
A      api            185.x.x.x          Proxied
MX     example.com    mail.example.com    DNS only (graue Wolke)
TXT    example.com    v=spf1 ...         DNS only

Lassen Sie E-Mail-Einträge wie MX, SPF und DKIM im "DNS only"-Modus (graue Wolke). E-Mail-Dienste funktionieren nicht im Proxy-Modus.

Proxy-Status (Orange/Graue Wolke)

StatusBeschreibung
Proxied (Orange)Verkehr läuft über Cloudflare, DDoS-Schutz aktiv
DNS Only (Grau)Nur DNS-Auflösung, kein Schutz
hljs bash
# DNS-Auflösungsprüfung
dig +short example.com
# Bei aktivem Cloudflare-Proxy erscheinen Cloudflare-IPs

# Echte IP-Prüfung
curl -s https://www.cloudflare.com/ips-v4

Origin-IP-Verschleierung

Einer der wichtigsten Vorteile von Cloudflare ist das Verbergen der echten IP-Adresse Ihres Servers. Achten Sie jedoch auf bestimmte Leckstellen.

IP-Leckstellen und Lösungen

hljs bash
# 1. IP-Leck durch Mail-Server-Header
# Lösung: Verwenden Sie eine andere IP/Server für E-Mail

# 2. Alte DNS-Einträge (SecurityTrails, Shodan)
# Lösung: IP nach Cloudflare-Einrichtung ändern

# 3. Direkter IP-Zugriff
# Lösung: Nur Verkehr von Cloudflare-IPs auf dem Server zulassen

Cloudflare-IP-Beschränkung auf dem Server

hljs bash
# Nur Cloudflare-IPs mit iptables zulassen
#!/bin/bash

# Cloudflare IPv4-Bereiche
CF_IPS=$(curl -s https://www.cloudflare.com/ips-v4)

# Bestehende HTTP/HTTPS-Regeln löschen
iptables -D INPUT -p tcp --dport 80 -j ACCEPT 2>/dev/null
iptables -D INPUT -p tcp --dport 443 -j ACCEPT 2>/dev/null

# Nur Cloudflare-IPs zulassen
for ip in $CF_IPS; do
    iptables -A INPUT -p tcp --dport 80 -s $ip -j ACCEPT
    iptables -A INPUT -p tcp --dport 443 -s $ip -j ACCEPT
done

# Anderen HTTP/HTTPS-Verkehr blockieren
iptables -A INPUT -p tcp --dport 80 -j DROP
iptables -A INPUT -p tcp --dport 443 -j DROP

echo "Cloudflare-IP-Beschränkung angewendet."

Echte IP mit Nginx ermitteln

Bei Verwendung des Cloudflare-Proxys sieht Ihr Server alle Anfragen als von Cloudflare-IPs kommend. Um die echte Besucher-IP zu erhalten:

hljs nginx
# /etc/nginx/conf.d/cloudflare.conf

# Cloudflare IPv4
set_real_ip_from 173.245.48.0/20;
set_real_ip_from 103.21.244.0/22;
set_real_ip_from 103.22.200.0/22;
set_real_ip_from 103.31.4.0/22;
set_real_ip_from 141.101.64.0/18;
set_real_ip_from 108.162.192.0/18;
set_real_ip_from 190.93.240.0/20;
set_real_ip_from 188.114.96.0/20;
set_real_ip_from 197.234.240.0/22;
set_real_ip_from 198.41.128.0/17;
set_real_ip_from 162.158.0.0/15;
set_real_ip_from 104.16.0.0/13;
set_real_ip_from 104.24.0.0/14;
set_real_ip_from 172.64.0.0/13;
set_real_ip_from 131.0.72.0/22;

real_ip_header CF-Connecting-IP;

WAF-Regeln (Web Application Firewall)

Cloudflare WAF schützt Ihre Webanwendung vor SQL-Injection, XSS und anderen Angriffen.

Benutzerdefinierte WAF-Regeln

# Verkehr aus bestimmten Ländern blockieren
(ip.geoip.country eq "XX") -> Block

# Bestimmte User-Agents blockieren
(http.user_agent contains "BadBot") -> Block

# wp-admin nur von bestimmter IP zugänglich
(http.request.uri.path contains "/wp-admin" and not ip.src eq 1.2.3.4) -> Block

# Rate Limiting: Mehr als 100 Anfragen pro Minute
(http.request.uri.path eq "/api/*") -> Rate Limit (100 req/min)

Page Rules-Konfiguration

Page Rules ermöglichen benutzerdefinierte Verhaltensweisen für bestimmte URL-Muster.

Häufige Page Rules

# 1. Immer HTTPS verwenden
URL: http://*example.com/*
Einstellung: Always Use HTTPS

# 2. Cache für API deaktivieren
URL: *example.com/api/*
Einstellung: Cache Level = Bypass

# 3. Aggressives Caching für statische Dateien
URL: *example.com/static/*
Einstellung: Cache Level = Cache Everything
             Edge Cache TTL = 1 month

Under Attack-Modus

Aktivieren Sie den Under Attack-Modus während eines aktiven DDoS-Angriffs.

API-Aktivierung

hljs bash
# Under Attack-Modus aktivieren
curl -X PATCH "https://api.cloudflare.com/client/v4/zones/ZONE_ID/settings/security_level" \
  -H "Authorization: Bearer API_TOKEN" \
  -H "Content-Type: application/json" \
  --data '{"value":"under_attack"}'

# Zurück zum Normalmodus
curl -X PATCH "https://api.cloudflare.com/client/v4/zones/ZONE_ID/settings/security_level" \
  -H "Authorization: Bearer API_TOKEN" \
  -H "Content-Type: application/json" \
  --data '{"value":"medium"}'

Vergessen Sie nicht, den Under Attack-Modus nach dem Angriff zu deaktivieren. Dauerhaft aktiv beeinträchtigt er die Benutzererfahrung.

SSL/TLS-Konfiguration

# Dashboard > SSL/TLS > Overview

Verschlüsselungsmodus:
- Off: Kein SSL (nicht empfohlen)
- Flexible: SSL zwischen Cloudflare und Besucher (Origin HTTP)
- Full: Self-signed Zertifikat auf Origin
- Full (Strict): Gültiges Zertifikat auf Origin (empfohlen)

REXE + Cloudflare Best Practices

  1. Doppelter Schutz: Path Panel + Cloudflare WAF
  2. Origin-IP-Verschleierung: Cloudflare-Proxy + iptables-Beschränkung
  3. SSL Full Strict: Ende-zu-Ende-Verschlüsselung mit Origin-Zertifikat
  4. Rate Limiting: Anfragebegrenzung für API-Endpunkte
  5. Bot-Management: Bösartige Bots filtern
  6. Cache-Optimierung: CDN-Cache für statische Inhalte

Fehlerbehebung

hljs bash
# Cloudflare-Verbindungsprüfung
curl -sI https://example.com | grep -i 'cf-ray\|server\|cf-cache'

# DNS-Propagierungsprüfung
dig +trace example.com

# Cloudflare-Fehlercodes
# 520: Webserver gibt unbekannten Fehler zurück
# 521: Webserver ist nicht erreichbar
# 522: Verbindungs-Timeout
# 523: Origin nicht erreichbar
# 524: Timeout aufgetreten

Fazit

Die Cloudflare-Integration bietet eine leistungsstarke DDoS-Schutzschicht, CDN-Leistung und WAF-Sicherheit für Ihren REXE-Server. Durch die korrekte Konfiguration von DNS, Origin-IP-Verschleierung und WAF-Regeln können Sie Ihren Server umfassend schützen.