3.6 KiB
Troubleshooting & FAQ
Hilfe bei häufigen Problemen und Antworten auf oft gestellte Fragen.
Häufige Probleme
"dig: command not found"
# Debian/Ubuntu
sudo apt install dnsutils
# RHEL/CentOS/Fedora
sudo dnf install bind-utils
# Alpine
apk add --no-cache bind-tools
# Arch Linux
sudo pacman -S bind
"CrowdSec ist nicht erreichbar"
-
Prüfe ob CrowdSec läuft:
docker ps | grep crowdsec # oder systemctl status crowdsec -
Teste den Befehl manuell:
docker exec crowdsec cscli version -
Prüfe Docker-Berechtigungen:
groups $(whoami) | grep docker
"Lock-File existiert bereits"
-
Prüfe ob noch ein Prozess läuft:
cat /tmp/crowdsec-manager.lock ps aux | grep crowdsec-manager -
Wenn kein Prozess läuft, Lock manuell entfernen:
rm /tmp/crowdsec-manager.lock
Domain wird nicht aufgelöst
-
Manuell testen:
dig +short A example.com dig +short @8.8.8.8 A example.com -
DNS-Server in der Config setzen:
DNS_SERVER="8.8.8.8" -
Timeout erhöhen:
DNS_TIMEOUT=10 DNS_RETRIES=5
Berechtigungs-Fehler
# Script ausführbar machen
chmod +x crowdsec-manager.sh
# Log-Datei
sudo touch /var/log/crowdsec-manager.log
sudo chown $(whoami) /var/log/crowdsec-manager.log
# Backup-Verzeichnis
sudo mkdir -p /var/backup/crowdsec-manager
sudo chown $(whoami) /var/backup/crowdsec-manager
Interaktives Menü startet statt Cron-Sync
Ab v0.1.0 startet das Script standardmäßig das interaktive Menü. Für den Cron-Betrieb muss --sync-allowlist angegeben werden:
# Falsch (startet interaktives Menü):
*/30 * * * * /opt/.../crowdsec-manager.sh
# Richtig:
*/30 * * * * /opt/.../crowdsec-manager.sh --sync-allowlist
FAQ
F: Werden manuell erstellte CrowdSec-Decisions beeinflusst?
A: Nein. Das Script verwaltet nur Decisions mit dem konfigurierten ALLOWLIST_REASON. Alle manuell erstellten Einträge bleiben unberührt.
F: Was passiert wenn CrowdSec nicht erreichbar ist? A: Das Script bricht mit Exit-Code 1 ab. Beim nächsten Cron-Lauf wird erneut versucht. Die bestehende Allowlist bleibt unverändert.
F: Was passiert wenn eine Domain nicht aufgelöst werden kann? A: Die Domain wird übersprungen und eine Warnung geloggt. Alle anderen Domains werden normal verarbeitet. Bestehende Einträge in der Allowlist bleiben erhalten, da sie persistent sind.
F: Kann ich das Script auf einem anderen Server als CrowdSec laufen lassen?
A: Ja, über CSCLI_CMD z.B. via SSH:
CSCLI_CMD="ssh user@crowdsec-server cscli"
F: Unterstützt das Script Wildcard-Domains?
A: Nein, Wildcard-Domains (z.B. *.example.com) werden nicht unterstützt. Jede Subdomain muss einzeln eingetragen werden.
F: Wie viele Einträge kann das Script verwalten? A: Kein festes Limit. Die DNS-Auflösung wird linear pro Eintrag durchgeführt. Bei hunderten Domains kann die Laufzeit einige Minuten betragen.
F: Kann ich das Script unter macOS verwenden?
A: Ja, solange dig und Bash 4+ verfügbar sind. macOS liefert standardmäßig Bash 3.2 – installiere Bash 4+ z.B. via Homebrew.
F: Was ist der Unterschied zwischen dem interaktiven Menü und dem CLI?
A: Das interaktive Menü (Standard) bietet eine grafische Auswahl aller Funktionen. Der CLI-Modus (--sync-allowlist, --list, etc.) ist für automatisierten/Cron-Betrieb gedacht.
F: Können im interaktiven Menü auch direkte cscli-Befehle ausgeführt werden? A: Ja, Menüpunkt 40 ermöglicht die Ausführung beliebiger cscli-Befehle über den konfigurierten Basisbefehl.