Crowdsec Docker Beispiel

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen

Absicherung von Docker-Containern mit CrowdSec

Ziel

CrowdSec soll neben SSH auch Angriffe auf Dienste erkennen, die in Docker-Containern betrieben werden. Dazu werden die Logs der Container ausgewertet.

Voraussetzungen

CrowdSec ist installiert und läuft.

Die Logs der Docker-Dienste sind für CrowdSec zugänglich, beispielsweise über das Journal:

  • journalctl -u docker.service | tail

Schritt 1: Parser für Docker-Logs aktivieren

Hub aktualisieren:

  • cscli hub update

Docker-Log-Parser installieren:

  • cscli parsers install crowdsecurity/docker-logs

Schritt 2: Traefik-Collection installieren

Traefik-Collection installieren:

  • cscli collections install crowdsecurity/traefik

Diese Collection enthält:

  • Parser für Traefik-Logs
  • Szenarien zur Erkennung typischer Angriffe auf HTTP-Dienste

Schritt 3: CrowdSec-Dienst neu starten

  • systemctl restart crowdsec

Überprüfung der Konfiguration

Aktive Szenarien anzeigen:

  • cscli scenarios list

Aktive Collections anzeigen:

  • cscli collections list

Hinweise zur Feinabstimmung

Nur bestimmte Container absichern:

  • Logs gezielt weiterleiten, z. B. mit spezifischen Journald-Filtern oder syslog.

CrowdSec-Logs live verfolgen:

  • journalctl -u crowdsec -f

Ergänzung: Weitere Dienste absichern

Falls nginx im Container laufen, empfiehlt es sich, folgende Collections zu installieren:

  • cscli collections install crowdsecurity/nginx

Fazit

Mit diesen Schritten lässt sich CrowdSec so erweitern, dass auch Angriffe auf Docker-Container erkannt und geblockt werden. Voraussetzung ist, dass die Logs der Container für CrowdSec zugänglich sind.