CrowdSec mit Reverse Proxy und mehreren Diensten koppeln

Praxisnahe Anleitung für CrowdSec am Reverse Proxy mit korrekter Client-IP, passenden Bouncern und strukturierter Absicherung mehrerer Webdienste.

CrowdSec ist besonders stark, wenn es nicht nur rohe Systemlogs sieht, sondern auch sauber erkennt, was an deinen Webdiensten und Reverse Proxys passiert. Genau dort entstehen in Self-Hosted-Umgebungen viele relevante Signale: Login-Versuche, Scanner, 404-Wellen, Bot-Traffic oder auffällige Request-Muster.

In dieser Anleitung schauen wir uns an, wie du CrowdSec mit Reverse Proxy und mehreren Diensten koppeln kannst, worauf es bei Logs, echten Client-IP-Adressen, Bouncern und AppSec ankommt und wie du typische Fehler bei mehreren Domains oder vorgeschalteten Proxys vermeidest.


1. Warum CrowdSec gerade am Reverse Proxy viel bringt

Der Reverse Proxy ist oft die Stelle, an der fast aller eingehende Webverkehr sichtbar wird. Genau deshalb ist er für CrowdSec besonders wertvoll:

  • zentraler Blick auf viele Dienste
  • frühe Erkennung von bruteforce-artigem oder auffälligem HTTP-Traffic
  • gemeinsame Schutzschicht für mehrere Anwendungen
  • sauberere Auswertung als auf jeder einzelnen App getrennt

Wenn du bereits Caddy, Nginx oder Traefik vor mehreren Diensten betreibst, ist das oft der beste Einstiegspunkt für CrowdSec im Webbereich.


2. Das Grundmodell verstehen

In der Praxis bestehen solche Setups meist aus mehreren Bausteinen:

  • Security Engine liest Logs und erzeugt Entscheidungen
  • Local API stellt diese Entscheidungen Bouncern bereit
  • Bouncer setzt Sperren oder Remediation am Reverse Proxy um
  • optional AppSec für tiefere HTTP-Prüfung

Die offiziellen CrowdSec-Dokumente zu Nginx und Traefik unterscheiden dabei unter anderem zwischen Live- und Stream-Modi. Für kleinere produktive Umgebungen ist ein sauber nachvollziehbarer Stream- oder Standardbetrieb oft angenehm.


3. Der wichtigste Punkt: echte Client-IP statt Proxy-IP

Wenn CrowdSec nur die IP des Reverse Proxys oder eines vorgeschalteten CDN sieht, werden Entscheidungen schnell wertlos oder sogar irreführend. Genau deshalb ist die saubere Weitergabe der echten Client-IP zentral.

Das betrifft besonders Setups mit:

  • Cloudflare
  • vorgelagerten Load Balancern
  • mehreren Reverse-Proxy-Schichten
  • Container-Netzwerken mit internem Hop zwischen Proxy und Anwendung

Die CrowdSec-Dokumentation weist darauf hin, dass bei einer Local API hinter Reverse Proxy die Optionen für trusted proxies und die Nutzung von Forwarded-Headern korrekt gesetzt werden müssen, wenn man echte Client-Adressen sauber erfassen will.


4. Reverse-Proxy-Logs als primäre Signalquelle

Damit CrowdSec Webverhalten sinnvoll auswerten kann, braucht es brauchbare Logs. Achte darauf, dass dein Reverse Proxy wirklich protokolliert:

  • Client-IP
  • Request-Methode
  • angefragter Host oder Pfad
  • Statuscode
  • User-Agent oder ähnliche Kontextinformationen

Wenn diese Daten fehlen oder nur stark reduzierte Logs erzeugt werden, verliert CrowdSec einen grossen Teil seines Nutzens.


5. Mehrere Dienste über denselben Proxy schützen

Ein grosser Vorteil des Reverse-Proxy-Ansatzes ist, dass du nicht jeden einzelnen Dienst separat absichern musst. Stattdessen schützt du zentral den Einstiegspunkt für mehrere Anwendungen, etwa:

  • auth.example.com
  • status.example.com
  • docs.example.com
  • grafana.example.com

Das heisst nicht, dass App-spezifische Sicherheit überflüssig wird. Aber CrowdSec kann an dieser Stelle sehr gut auffällige Request-Muster und wiederkehrende Angriffe erkennen, bevor sie alle Backend-Dienste erreichen.


6. Bouncer passend zum Proxy wählen

CrowdSec bietet je nach Reverse Proxy unterschiedliche Bouncer oder Integrationen. Laut offizieller Dokumentation gibt es zum Beispiel spezifische Komponenten für Nginx und für moderne Traefik-AppSec-Setups.

Wichtig ist dabei:

  • nicht blind alte oder veraltete Integrationen übernehmen
  • zur eingesetzten Proxy-Variante passende Dokumentation nutzen
  • vor allem bei Traefik auf aktuelle AppSec- und Plugin-Hinweise achten

Gerade bei Traefik weist CrowdSec inzwischen ausdrücklich darauf hin, die aktuelle Plugin- und AppSec-Variante zu verwenden und nicht ältere, abgelöste Wege weiterzuschleppen.


7. AppSec bewusst und kontrolliert einsetzen

CrowdSec kann über AppSec nicht nur IP-basierte Entscheidungen treffen, sondern HTTP-Anfragen tiefer inspizieren. Das ist spannend, aber auch sensibler als reine IP-Blockierung.

Für den Einstieg würde ich AppSec so behandeln:

  • zuerst Logs und Bouncer sauber zum Laufen bringen
  • dann AppSec gezielt ergänzen
  • falsche Positive im Blick behalten
  • kritische Anwendungen nicht ohne Tests direkt hart absichern

Gerade bei Admin-Tools oder APIs mit ungewöhnlichen Request-Mustern lohnt sich ein kontrollierter Rollout.


8. Was bei Cloudflare oder vorgeschalteten Diensten wichtig ist

Wenn vor deinem Reverse Proxy noch Cloudflare oder ein anderer Dienst sitzt, musst du besonders sauber darauf achten, dass im Logging und in der Remediation die echte Ursprungs-IP ankommt.

Sonst drohen zwei Probleme:

  • CrowdSec trifft Entscheidungen gegen die falsche IP
  • deine Logs taugen nur eingeschränkt für Erkennung und Analyse

Diese Kette muss vom äussersten Proxy bis zum lokalen Reverse Proxy wirklich stimmen.


9. Eine sinnvolle Einführungsstrategie

Ich würde CrowdSec im Reverse-Proxy-Umfeld in dieser Reihenfolge einführen:

  1. Logs des Reverse Proxys prüfen
  2. sicherstellen, dass echte Client-IP sichtbar ist
  3. CrowdSec Security Engine sauber mit diesen Logs verbinden
  4. einen passenden Bouncer für den Reverse Proxy einrichten
  5. Entscheidungen und Remediation zuerst kontrolliert beobachten
  6. erst danach AppSec oder weitere Schutzschichten ergänzen

So bleibt das Setup nachvollziehbar und du findest Fehler deutlich schneller.


10. Typische Fehler in Multi-Dienst-Setups

  • CrowdSec sieht nur die Proxy-IP statt der echten Client-IP
  • Logs sind zu knapp oder nicht im erwarteten Format
  • mehrere Domains hängen am Proxy, aber die Log-Auswertung berücksichtigt Host-Kontext nicht sauber
  • der Bouncer läuft, aber ist nicht korrekt mit der Local API verbunden
  • AppSec wird zu früh aktiviert und blockiert legitime Requests
  • Reverse Proxy, CrowdSec und vorgeschaltete CDN-Schicht haben widersprüchliche IP-Header-Logik

Fast alle dieser Probleme lassen sich vermeiden, wenn du erst Logging und IP-Kette sauber validierst.


11. Was ich in der Praxis empfehlen würde

  • CrowdSec zuerst am zentralen Reverse Proxy ansetzen
  • echte Client-IP als absoluten Pflichtpunkt behandeln
  • mit wenigen gut verstandenen Collections und Signalen starten
  • Remediation zuerst kontrolliert beobachten
  • AppSec nur schrittweise und bewusst einführen

Damit schützt du mehrere Dienste gleichzeitig, ohne dir mit einem überhasteten Rollout unnötig Probleme einzubauen.


12. Fazit

CrowdSec entfaltet rund um Reverse Proxys besonders viel Wirkung, weil dort der gesamte Webverkehr mehrerer Dienste zusammenläuft. Genau deshalb ist es eine sehr starke Stelle für zentrale Erkennung und Remediation.

Der Schlüssel zum Erfolg liegt aber nicht in blossem Aktivieren, sondern in sauberem Logging, korrekter Client-IP-Erkennung, einem passenden Bouncer und einem kontrollierten Umgang mit AppSec.

Tipp:
Wenn du CrowdSec bereits auf einem Server hast, prüfe als Erstes deine Reverse-Proxy-Logs auf echte Client-IP und vollständige Request-Daten. Dieser eine Check entscheidet oft darüber, ob CrowdSec im Webbereich wirklich brauchbar arbeitet.