Linux Security

Firewall-Bouncer unter Debian 13 einrichten – CrowdSec-Angriffe automatisch blockieren

Richten Sie den CrowdSec Firewall-Bouncer unter Debian 13 ein und blockieren Sie Angreifer automatisch auf Firewall-Ebene. Schritt für Schritt erklärt.

4 min Lesezeit
Grafik: CrowdSec Firewall-Bouncer richtig einrichten

So setzt CrowdSec Entscheidungen direkt in Firewall-Regeln um

Bislang haben wir gesehen, wie CrowdSec Angriffe erkennt, Logdateien analysiert und sogenannte Decisions erstellt. Eine Decision allein blockiert jedoch noch keinen Angreifer. Erst ein Bouncer setzt diese Entscheidungen in konkrete Schutzmaßnahmen um.

Für Linux-Server ist der Firewall-Bouncer die effizienteste Variante. Er übernimmt automatisch alle von CrowdSec erzeugten Decisions und erstellt daraus Firewall-Regeln. Dadurch werden Angreifer bereits auf Netzwerkebene blockiert – noch bevor sie Apache, Nginx oder SSH überhaupt erreichen.

In diesem Teil der Serie richten wir den Firewall-Bouncer ein, betrachten die Unterschiede zwischen nftables und iptables und testen die automatische Sperrung eines Angreifers.


Was ist ein Bouncer?

Ein Bouncer ist die Komponente, die auf die von CrowdSec erzeugten Decisions reagiert.

Der Ablauf sieht vereinfacht wie folgt aus:

Logdateien
      │
      ▼
CrowdSec Agent
      │
      ▼
Parser
      │
      ▼
Szenarien
      │
      ▼
Decision
      │
      ▼
Local API
      │
      ▼
Firewall-Bouncer
      │
      ▼
Firewall-Regel
      │
      ▼
Angreifer blockiert

Der Bouncer fragt die Local API regelmäßig nach neuen Decisions ab und setzt diese automatisch um.


Welche Bouncer gibt es?

CrowdSec unterstützt zahlreiche Bouncer.

Beispiele:

  • Firewall-Bouncer
  • Nginx-Bouncer
  • Apache-Bouncer
  • Traefik-Bouncer
  • HAProxy-Bouncer
  • Cloudflare-Bouncer
  • Caddy-Bouncer

Für Linux-Server empfiehlt sich in den meisten Fällen der Firewall-Bouncer.


nftables oder iptables?

Der Firewall-Bouncer unterstützt sowohl nftables als auch iptables.

nftables

nftables ist der moderne Nachfolger von iptables und wird unter Debian 13 standardmäßig verwendet.

Vorteile:

  • moderne Architektur
  • bessere Performance
  • einfachere Regelverwaltung
  • IPv4 und IPv6 gemeinsam
  • langfristige Weiterentwicklung

iptables

iptables ist weiterhin weit verbreitet und wird von älteren Systemen genutzt.

Vorteile:

  • hohe Kompatibilität
  • bewährte Technik
  • in vielen bestehenden Umgebungen vorhanden

Für neue Installationen empfiehlt sich jedoch nftables.


Prüfen, welche Firewall verwendet wird

Ob nftables aktiv ist, prüfen Sie mit:

sudo nft list ruleset

Erscheinen Firewall-Regeln, wird nftables verwendet.

Alternativ:

sudo systemctl status nftables

Für iptables:

sudo iptables -L

Firewall-Bouncer installieren

Unter Debian erfolgt die Installation über das CrowdSec-Repository.

Paketliste aktualisieren:

sudo apt update

Firewall-Bouncer installieren:

sudo apt install crowdsec-firewall-bouncer

Während der Installation verbindet sich der Bouncer automatisch mit der Local API.


Dienst starten

Status prüfen:

sudo systemctl status crowdsec-firewall-bouncer

Die Ausgabe sollte den Status

active (running)

anzeigen.

Falls erforderlich:

sudo systemctl enable --now crowdsec-firewall-bouncer

Installation überprüfen

Registrierte Bouncer anzeigen:

sudo cscli bouncers list

Beispiel:

NAME                         TYPE
firewall-bouncer             active

Damit ist sichergestellt, dass der Bouncer erfolgreich mit der Local API kommuniziert.


Entscheidungen übernehmen

Sobald CrowdSec eine Decision erzeugt, übernimmt der Firewall-Bouncer diese automatisch.

Der Ablauf:

SSH-Angriff
        │
        ▼
CrowdSec erkennt Angriff
        │
        ▼
Decision erzeugen
        │
        ▼
Firewall-Bouncer
        │
        ▼
Firewall-Regel erstellen
        │
        ▼
IP blockiert

Der Administrator muss dabei nichts weiter unternehmen.


Eigene Sperre testen

Zum Test kann eine Decision manuell erstellt werden.

Beispiel:

sudo cscli decisions add --ip 203.0.113.10

Kontrolle:

sudo cscli decisions list

Anschließend sollte der Firewall-Bouncer diese Sperre übernehmen.

Nach dem Test kann sie wieder entfernt werden.

sudo cscli decisions delete --ip 203.0.113.10

Firewall-Regeln prüfen

Bei nftables:

sudo nft list ruleset

Bei iptables:

sudo iptables -L -n

Hier erscheinen automatisch die durch CrowdSec erzeugten Regeln.


Live-Test durchführen

Ein besonders anschaulicher Test besteht darin, bewusst mehrere fehlgeschlagene SSH-Anmeldungen gegen den eigenen Server auszuführen.

Beispiel:

ssh testuser@server.example.com

Geben Sie mehrfach ein falsches Passwort ein.

Alternativ kann ein nicht existierender Benutzer verwendet werden.

ssh unbekannt@server.example.com

Nach Erreichen des Schwellwertes erstellt CrowdSec automatisch eine Decision, die der Firewall-Bouncer unmittelbar übernimmt.

Hinweis: Führen Sie solche Tests ausschließlich gegen eigene Systeme oder Systeme durch, für die Sie ausdrücklich autorisiert sind.


Alerts und Decisions beobachten

Alerts:

sudo cscli alerts list

Decisions:

sudo cscli decisions list

Firewall-Bouncer:

sudo systemctl status crowdsec-firewall-bouncer

CrowdSec:

sudo journalctl -u crowdsec -f

Firewall-Bouncer:

sudo journalctl -u crowdsec-firewall-bouncer -f

So lässt sich der gesamte Ablauf in Echtzeit verfolgen.


Performance

Der Firewall-Bouncer arbeitet äußerst ressourcenschonend.

Im Normalbetrieb verursacht er nur eine geringe CPU- und Speicherlast.

Vorteile der Sperrung auf Firewall-Ebene:

  • Angriffe werden bereits vor Apache oder Nginx abgefangen.
  • SSH erhält keine Verbindungsanfragen mehr.
  • Weniger Logeinträge.
  • Geringere Serverlast.
  • Schnellere Reaktion auf Angriffe.

Gerade bei häufigen Brute-Force-Angriffen ist dies ein großer Vorteil gegenüber Anwendungen, die Zugriffe erst auf Webserver- oder Anwendungsebene blockieren.


Best Practices

Für einen produktiven Einsatz haben sich folgende Maßnahmen bewährt:

  • nftables auf neuen Systemen bevorzugen.
  • Firewall-Bouncer beim Systemstart automatisch starten.
  • Hub-Komponenten regelmäßig aktualisieren.
  • Decisions regelmäßig kontrollieren.
  • Alerts überwachen.
  • Nur notwendige Ports freigeben.
  • Firewall-Regeln regelmäßig überprüfen.
  • Kombination mit SSH-Schlüsseln und Reverse-Proxys nutzen.

Typische Fehler

Firewall-Bouncer läuft nicht

Status prüfen:

sudo systemctl status crowdsec-firewall-bouncer

Keine Bouncer registriert

sudo cscli bouncers list

Decisions vorhanden – aber keine Sperren

Kontrollieren:

sudo nft list ruleset

oder

sudo iptables -L

Verbindung zur Local API fehlgeschlagen

Logs anzeigen:

sudo journalctl -u crowdsec-firewall-bouncer


Der Firewall-Bouncer ist die ideale Ergänzung zu CrowdSec und sorgt dafür, dass erkannte Angreifer nicht nur identifiziert, sondern unmittelbar auf Netzwerkebene blockiert werden. Dadurch erreichen schädliche Verbindungen weder den Webserver noch den SSH-Dienst, was die Serverlast reduziert und die Sicherheit deutlich erhöht.

Dank der Unterstützung von nftables und iptables lässt sich der Bouncer flexibel in bestehende Umgebungen integrieren. Für neue Debian-13-Systeme empfiehlt sich nftables, da es die moderne und leistungsfähigere Firewall-Technologie darstellt.

Im nächsten Teil der Serie beschäftigen wir uns mit dem CrowdSec Dashboard. Sie erfahren, wie Sie die Weboberfläche installieren und darüber Alerts, Decisions, Maschinen und Statistiken komfortabel verwalten können.


Teaser


SEO-Titel


Meta-Beschreibung


Meta-Schlagwörter


OG-Titel


OG-Beschreibung