CrowdSec

Inoffizielles CrowdSec-Plugin ohne Verbindung zu CrowdSec: Alarme, Sperren und Top-Bedrohungen aus Ihrer Local API im EmDash-Admin.

Erweiterung

CrowdSec

Inoffizielles CrowdSec-Plugin ohne Verbindung zu CrowdSec: Alarme, Sperren und Top-Bedrohungen aus Ihrer Local API im EmDash-Admin.

  • Kategorie: crowdsec
  • Status: Verfügbar
  • Version: 0.1.3
  • Preis: Unbekannt
  • Quelle: Offizielles Plugin-Register
  • Installation: Sandbox-Plugin aus dem Register
  • Geprüft: 2026-10-21

Beschreibung

Ein inoffizielles Plugin. Es steht in keiner Verbindung zu CrowdSec und wird von CrowdSec weder unterstützt noch empfohlen.

CrowdSec im EmDash-Admin, gelesen aus Ihrer CrowdSec Local API mit einem eigenen Maschinen-Login.

Im Dashboard: eine CrowdSec-Karte mit den Alarmen der letzten 24 Stunden im Vergleich zu den 24 davor, den derzeit gültigen Sperren, Alarmen nach Art (WAF, Bot-Challenge, Verhalten) und den Top-Szenarien.

CrowdSec-Seite: 7, 30 oder 90 Tage Alarme nach Art und pro Tag verhängte Sperren, mit den Top-Szenarien, Quelladressen, Ländern, AS-Organisationen und angegriffenen Pfaden.

Alarme: ein Explorer für die gespeicherten Alarme. Zeiträume von einer Stunde bis zu allem Gespeicherten oder seit Ihrem letzten Besuch, Tabs nach Art, zwei Aufschlüsselungen mit Histogrammen, Filter nach Adressbereich, Land, Szenario, Verhalten, Netzwerk, Pfad oder Engine, nach Adresse gruppierte Alarme und eine Live-Detailansicht jedes Alarms.

Entscheidungen: die Entscheidungen, die LAPI derzeit durchsetzt, live gelesen und nach Ablauf sortiert.

Traffic-Diagramme: bösartiger Traffic, den der Firewall-Bouncer verworfen hat, aufgeteilt nach Community-Blockliste, Ihren eigenen Erkennungen und manuellen Sperren, sein Anteil am gesamten Traffic, geprüfte und blockierte Web-Anfragen, die Bot-Challenge und aktive Sperren nach Quelle. Aus den Metriken Ihrer eigenen Engine und Ihres Bouncers, nie aus der Cloud von CrowdSec.

MCP-Werkzeuge: eine Zusammenfassung, Top-Bedrohungen, ein Alarm-Explorer, Traffic, aktive Entscheidungen und die Alarme zu einer Adresse, dazu drei, die etwas verändern.

Optionale Änderungen: Bei aktiviertem „Änderungen erlauben“ können Administratoren eine Adresse oder einen Bereich für eine feste Zeit sperren, eine Entscheidung entfernen und alte Alarme löschen. Eine Sperre umfasst nie Ihre eigene Adresse, die der Website, die des LAPI-Hosts, Ihre geschützten Adressen, privaten Adressraum oder eine Adresse auf einer Zulassungsliste.

Die Tage richten sich nach Ihrer Zeitzone. Erforderlich ist ein CrowdSec-LAPI, den die Website erreichen kann.

Installation

Sie benötigen CrowdSec 1.7 oder neuer mit seiner Local API unter einem öffentlichen HTTPS-Hostnamen (EmDash lehnt private Adressen ab) und EMDASH_ENCRYPTION_KEY auf der Website (npx emdash secrets generate erzeugt einen).

  1. Legen Sie auf dem CrowdSec-Host eine Maschine für das Plugin an: sudo cscli machines add emdash-crowdsec --auto -f /root/emdash-crowdsec.yaml. Die Datei enthält ihre ID und ihr Passwort.
  2. Veröffentlichen Sie LAPI hinter einem Reverse-Proxy, der nur die Adresse des EmDash-Servers und nur diese Routen zulässt: POST /v1/watchers/login, GET /v1/alerts, GET /v1/alerts/. Für Änderungen zusätzlich POST /v1/alerts, DELETE /v1/alerts/, DELETE /v1/decisions/ und POST /v1/allowlists/check. Lassen Sie niemals DELETE /v1/decisions ohne ID zu. Nehmen Sie den Pfad von jeder Bot-Challenge aus. Die README enthält nginx- und Traefik-Beispiele für einen einzelnen Host.
  3. Installieren Sie das Plugin aus der Registry. Seine einzige Berechtigung ist der Netzwerkzugriff: auf Ihre LAPI-URL und, solange Änderungen aktiviert sind, auf cloudflare-dns.com.
  4. Öffnen Sie unter Plugins die Einstellungen des Plugins: Geben Sie die LAPI-URL (ohne /v1), die Maschinen-ID und das Passwort sowie Ihre Zeitzone ein. Speichern Sie.
  5. Öffnen Sie Plugins, CrowdSec, und wählen Sie Check setup. Beheben Sie alles, was dort genannt wird.
  6. Um Sperren und Entsperrungen zu erlauben, aktivieren Sie „Änderungen erlauben“ und tragen Sie die Adressen Ihres Servers und Ihres Zuhauses unter „Geschützte Adressen“ ein.

Auf Cloudflare Workers benötigt die Synchronisierung den Cron-Trigger aus dem Deployment-Leitfaden von EmDash. Um die MCP-Werkzeuge zu nutzen, aktivieren Sie unter Plugins den Agent-Zugriff für das Plugin.

FAQ

Macht das Plugin meinen CrowdSec-LAPI öffentlich? Nein. EmDash erlaubt einem Plugin nur Aufrufe an öffentliche HTTPS-Hostnamen, daher wird LAPI über einen Pfad auf einem solchen erreicht, aber der vorgeschaltete Proxy lässt nur die Adresse Ihres EmDash-Servers und nur die vom Plugin genutzten Routen durch. Alle anderen erhalten 403, und jede Anfrage benötigt außerdem den eigenen Maschinen-Login des Plugins. LAPI selbst lauscht weiterhin auf 127.0.0.1. Die README zeigt die Einrichtung.

Die Anmeldung schlägt mit „incorrect Username or Password“ fehl, aber das Passwort stimmt. LAPI lehnt einen User-Agent ab, der nicht die Form name/version hat. Ein Proxy, der den des Plugins ersetzt, verursacht das.

Die Einrichtungsprüfung meldet, dass eine Route abgelehnt wurde (403). Ihr Proxy lässt sie für den EmDash-Server nicht zu. Fügen Sie sie hinzu, wie die README es zeigt.

Warum sind die Zahlen der ersten Tage niedrig? Der Verlauf wird beginnend mit dem neuesten, ein Zeitfenster nach dem anderen, gelesen. Die Seite zeigt an, solange er noch gelesen wird.

Warum ist die Liste der Entscheidungen kürzer als cscli decisions list? Sie listet Ihre eigenen Entscheidungen. Die Community-Blockliste und weitere Listen enthalten Tausende mehr, die als eine Zahl über der Liste angezeigt werden.

Warum ist die Top-Liste nur ungefähr? Jeder Tag behält seine 25 häufigsten Werte, seltenere werden daher unterzählt.

Wo sind die Reputationsabzeichen? Das Plugin fragt nie die Cloud von CrowdSec ab. Der Explorer zeigt lokale Hinweise: Banned now und Seen before.

Mein LAPI sammelt Alarme von mehreren Hosts. Jeder Alarm behält die Engine, die ihn ausgelöst hat. Benennen Sie sie in der Einstellung Engine names.

Warum kann ich diesen Alarm nicht löschen? Das Löschen würde seine Entscheidungen löschen, ohne dass Bouncer davon erfahren. Entfernen Sie die Entscheidung und löschen Sie den Alarm zwei Minuten später.

Warum wurde meine Sperre abgelehnt? Die Meldung nennt die Regel. Die README listet alle auf.

Woher kommen die Traffic-Diagramme? Aus den Metriken Ihrer eigenen Engine und Ihres Firewall-Bouncers, nie aus der Cloud von CrowdSec. Legen Sie deren URLs in den Einstellungen fest.

In welcher Zeitzone liegen die Tage? In der der Einstellung Time zone, Australia/Sydney, sofern nicht geändert. Ein unbekannter Name pausiert die Synchronisierung, der Verlauf bleibt erhalten.

Sicherheit

Melden Sie ein Sicherheitsproblem vertraulich über das Advisory-Formular des Repositorys: https://github.com/shanelord01/emdash-crowdsec/security/advisories/new

Worauf das Plugin zugreifen kann

Nur Netzwerkanfragen, an zwei Ziele: die von Ihnen eingegebene LAPI-URL und, solange „Änderungen erlauben“ aktiv ist, cloudflare-dns.com, um die Adressen der Website und des LAPI-Hosts nachzuschlagen. Es hat keinen Zugriff auf Ihre Inhalte, Benutzer oder Medien. Es nutzt nur die in der README aufgeführten LAPI-Routen, nie DELETE /v1/decisions mit einem Filter, nie ein Massenlöschen von Alarmen und folgt keiner Weiterleitung, sodass das Passwort nie an einen anderen Host gesendet wird. Unverschlüsseltes HTTP und URLs mit Zugangsdaten werden abgelehnt.

Zugangsdaten

Das Maschinenpasswort wird mit EMDASH_ENCRYPTION_KEY verschlüsselt gespeichert. Das LAPI-Token wird nie gespeichert: Jeder Lauf meldet sich an und hält es im Speicher. Geben Sie dem Plugin eine eigene Maschine und veröffentlichen Sie LAPI so, dass nur der EmDash-Server und nur die Routen des Plugins durchkommen.

Wer was darf

Redakteure und Administratoren sehen die Karte, die Seiten und die Lesewerkzeuge. Nur Administratoren können etwas ändern, und nur bei aktiviertem „Änderungen erlauben“. Auf den Seiten prüft das Plugin die Rolle selbst. Die Routen der Schreibwerkzeuge sind von EmDash auf Administratoren beschränkt.

Sperrschutz

Eine Sperre wird unter Nennung der Regel abgelehnt, wenn sie die Adresse des Anfragenden (bei einem MCP-Werkzeug den Egress des Clients), die Adressen der Website oder des LAPI-Hosts, einen Eintrag unter „Geschützte Adressen“, privaten, Loopback-, Link-Local-, CGNAT- (einschließlich 100.64.0.0/10 von Tailscale), Multicast- oder reservierten Adressraum, einen Bereich größer als /16 oder /48 oder einen Eintrag der CrowdSec-Zulassungsliste umfasst, der zuerst geprüft wird, da LAPI ihn bei manuellen Sperren überspringt. IPv6, das IPv4 trägt, wird anhand dieser IPv4-Adresse beurteilt, und Teredo wird abgelehnt. Ein fehlerhafter geschützter Eintrag lässt jede Änderung scheitern.

Alarme löschen

Ein Alarm wird nur gelöscht, wenn seine Entscheidungen vor mehr als zwei Minuten endeten, da das Löschen seine Entscheidungen entfernt, ohne dass Bouncer davon erfahren.

Änderungsprotokoll

0.1.3

  • Die Seiten stehen ab EmDash 1.2 in einem CrowdSec-Ordner in der Seitenleiste (Overview, Alerts, Decisions). Ihre Adressen bleiben unverändert; ältere EmDash-Versionen listen sie einzeln auf.
  • Aktive Sperren nach Quelle benötigen das Prometheus-level: full der Engine. Der Abschnitt Metrics der README weist darauf hin.
  • Keine neuen Berechtigungen und keine Änderung an den MCP-Werkzeugen.

0.1.2

  • Die Filter des Alarm-Explorers stehen in einer Zeile und werden beim Auswählen sofort angewendet.

0.1.1

  • Die CrowdSec-Alarmseite ist ein Explorer: Zeiträume von einer Stunde bis zum gesamten Verlauf oder seit Ihrem letzten Besuch, Tabs nach Art, zwei umschaltbare Aufschlüsselungen mit Histogrammen, Filter als Chips, nach Adresse gruppierte Alarme mit einer Ansicht je Adresse und einer Live-Detailansicht jedes Alarms sowie Hinweise Banned now und Seen before.
  • Engines: Jeder Alarm behält den CrowdSec-Agenten, der ihn ausgelöst hat, als Aufschlüsselung und Filter, dazu eine Spalte und ein Diagramm, wenn es mehr als einen gibt, benannt in der Einstellung Engine names.
  • Ein neues MCP-Werkzeug, alerts_explorer. EmDash fragt beim Update erneut nach Agent-Zugriff.
  • Gespeicherte Alarme wandern bei den ersten Synchronisierungen in ein kompaktes Alarmprotokoll.
  • Demodaten entfernt: Das Plugin benötigt einen erreichbaren LAPI. Eine Installation, die sie genutzt hat, fragt nach den LAPI-Einstellungen und löscht ihre Demozeilen, sobald diese gesetzt sind.
  • Kürzere Zeitangaben, schmalere Tabellen, eine 90-Tage-Seite mit Drei-Tage-Balken und ein Metrik-Sampler, der ohne Dashboard-Besuch seinen Einstellungen folgt.

0.1.0

Erste Veröffentlichung: die Dashboard-Karte, die CrowdSec-Seite, die Seiten für Alarme und Entscheidungen, eine Einrichtungsprüfung, Traffic-Diagramme, acht MCP-Werkzeuge sowie optionale Sperren, Entsperrungen und das Löschen von Alarmen für Administratoren, mit Schutz für Ihre eigenen Adressen.

Vollständiger Verlauf: CHANGELOG.md.