Crowdsec Docker Beispiel: Unterschied zwischen den Versionen
| Zeile 1: | Zeile 1: | ||
| − | ==== Docker- | + | ==== Absicherung von Docker-Containern mit CrowdSec ==== |
;Ziel | ;Ziel | ||
| − | CrowdSec soll | + | CrowdSec soll neben SSH auch Angriffe auf Dienste erkennen, die in Docker-Containern betrieben werden. Dazu werden die Logs der Container ausgewertet. |
==== Voraussetzungen ==== | ==== Voraussetzungen ==== | ||
| Zeile 8: | Zeile 8: | ||
CrowdSec ist installiert und läuft. | CrowdSec ist installiert und läuft. | ||
| − | Docker | + | Die Logs der Docker-Dienste sind für CrowdSec zugänglich, beispielsweise über das Journal: |
* '''journalctl -u docker.service | tail''' | * '''journalctl -u docker.service | tail''' | ||
| − | ==== Parser für Docker aktivieren ==== | + | ==== Schritt 1: Parser für Docker-Logs aktivieren ==== |
Hub aktualisieren: | Hub aktualisieren: | ||
* '''cscli hub update''' | * '''cscli hub update''' | ||
| − | Docker-Parser installieren: | + | Docker-Log-Parser installieren: |
* '''cscli parsers install crowdsecurity/docker-logs''' | * '''cscli parsers install crowdsecurity/docker-logs''' | ||
| − | ==== | + | ==== Schritt 2: Traefik-Collection installieren ==== |
| − | Collection installieren: | + | Traefik-Collection installieren: |
| − | * '''cscli collections install crowdsecurity/ | + | * '''cscli collections install crowdsecurity/traefik''' |
Diese Collection enthält: | Diese Collection enthält: | ||
| − | * Parser für | + | * Parser für Traefik-Logs |
| − | * Szenarien zur Erkennung typischer Angriffe auf | + | * Szenarien zur Erkennung typischer Angriffe auf HTTP-Dienste |
| − | ==== CrowdSec neu starten ==== | + | ==== Schritt 3: CrowdSec-Dienst neu starten ==== |
| − | |||
* '''systemctl restart crowdsec''' | * '''systemctl restart crowdsec''' | ||
| − | ==== | + | ==== Überprüfung der Konfiguration ==== |
Aktive Szenarien anzeigen: | Aktive Szenarien anzeigen: | ||
| Zeile 41: | Zeile 40: | ||
* '''cscli collections list''' | * '''cscli collections list''' | ||
| − | ==== | + | ==== Hinweise zur Feinabstimmung ==== |
Nur bestimmte Container absichern: | Nur bestimmte Container absichern: | ||
| − | * z. B. | + | * Logs gezielt weiterleiten, z. B. mit spezifischen Journald-Filtern oder syslog. |
CrowdSec-Logs live verfolgen: | CrowdSec-Logs live verfolgen: | ||
* '''journalctl -u crowdsec -f''' | * '''journalctl -u crowdsec -f''' | ||
| − | ==== | + | ==== Ergänzung: Weitere Dienste absichern ==== |
| − | + | Falls nginx oder HTTP-APIs im Container laufen, empfiehlt es sich, folgende Collections zu installieren: | |
* '''cscli collections install crowdsecurity/nginx''' | * '''cscli collections install crowdsecurity/nginx''' | ||
* '''cscli scenarios install crowdsecurity/http-bf''' | * '''cscli scenarios install crowdsecurity/http-bf''' | ||
| Zeile 57: | Zeile 56: | ||
==== Fazit ==== | ==== Fazit ==== | ||
| − | Mit | + | 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. |
Version vom 9. April 2025, 06:55 Uhr
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 oder HTTP-APIs im Container laufen, empfiehlt es sich, folgende Collections zu installieren:
- cscli collections install crowdsecurity/nginx
- cscli scenarios install crowdsecurity/http-bf
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.