
Dashboards mit Crowdsec: Metabase oder Prometheus mit Grafana
In diesem Beitrag werden wir uns zwei Optionen ansehen, um den Überblick über unsere Crowdsec-Infrastruktur zu behalten, Wir haben zwei Möglichkeiten, Ein bisschen einfach, Ein vorgefertigter Docker-Container. Oder, Warum nicht, das Leben genießen und in Prometheus integrieren und mit Grafana visualisieren!
Wenn wir den Status unserer Maschinen mit Crowdsec wissen möchten, Am besten ist es, dies über die GUI zu tun und einige Dashboards zu haben, die bereits von der Community erstellt wurden, um uns zu helfen, Wie ich schon sagte, Wir haben zwei Möglichkeiten, a einen Docker-Container mit Metabase verwenden, der bereits vorkonfiguriert ist, um eine Verbindung mit dem lokalen LAPI herzustellen, etwas Einfaches und Grundlegendes, das nützlich sein kann. O podemos enviarle a un Prometheus las métricas de nuestros agentes y luego visualizarlo en Grafana, al gusto.
Metabasis,
Necesitaremos Docker, si no lo tenemos instalado previamente:
sudo apt install docker.io -y
Y ejecutando 'sudo cscli dashboard setup –Hören 0.0.0.0’ Lo Desplegaremos:
sudo cscli dashboard setup --listen 0.0.0.0 ? Metabase benötigt 1-2 GB RAM, Ihr System unterschreitet diese Anforderung weiter ? Ja ? For metabase docker to be able to access SQLite file we need to add a new group called 'crowdsec' to the system, Ist es für Sie in Ordnung? ? (J/n) Y INFO[12-11-2022 05:09:02 NACHMITTAGS] Abrufen der Docker-Image-Metabasis/Metabasis:v0.41.5 ............................................................................................................................................. INFO[12-11-2022 05:09:32 NACHMITTAGS] creating container 'crowdsec-metabase' INFO[12-11-2022 05:09:38 NACHMITTAGS] Warten auf die Aktivierung der Metabasis (kann bis zu einer Minute dauern) .............................. INFO[12-11-2022 05:11:50 NACHMITTAGS] Metabasis ist bereit URL : 'http://0.0.0.0:3000' username : 'Cr******@cr******.nEt' password : 'xxxxxxxxxxxxxxxx'
Wenn der Metabase-Container gestartet wird, Wir werden jetzt in der Lage sein, einen Browser für HTTP zu öffnen://DIRECCION_IP:3000
Das wäre Home, wo wir direkt die Verbindung zu Crowdsec sehen, und 3 Paneele, mit der Liste der aktiven Entscheidungen, eine Historie von Warnungen oder ein allgemeines Dashboard.
Dashboard de CS – Liste der aktiven Entscheidungen,
Dashboard de CS – Verlauf der Warnung,
Dashboard de CS – Haupt-Dashboard.
Dann können wir das Dashboard stoppen, Abreißen oder löschen:
sudo CSCli Dashboard stop sudo CSCLI Dashboard Start sudo CSCLI Dashboard Remove --force
Prometheus + Grafana,
In jedem Crowdsec-Agenten, in Ihrer Konfigurationsdatei '/etc/crowdsec/config.yaml', Wir müssen Prometheus aktivieren, Wir geben einen Listening-Port an, über den wir die Metriken anbieten werden, So etwas in der Art:
Prometheus: ermöglichte: Wahres Niveau: Vollständige listen_addr: 0.0.0.0 listen_port: 6060
Und wir laden Crowdsec neu, um die oben genannten Änderungen zu übernehmen:
sudo systemctl restart crowdsec
Um zu beweisen, dass dies funktioniert, Wir können einen Curl auf diesen Port werfen, von der Maschine selbst oder von einer entfernten Maschine, Von Shell aus führen wir 'curl http aus://DIRECCION_IP:6060/Metrik’ zur Validierung:
HTTP krümmen://192.168.x.xxx:6060/Metrik # HILFE cs_active_decisions Anzahl der aktiven Entscheidungen. # TYP cs_active_decisions Spurweite cs_active_decisions{Aktion="Verbot",Herkunft="ICSC",Grund="crowdsecurity/CVE-2022-xxxxx"} 16 cs_active_decisions{Aktion="Verbot",Herkunft="ICSC",Grund="crowdsecurity/CVE-2022-xxxxx"} 2 cs_active_decisions{Aktion="Verbot",Herkunft="ICSC",Grund="crowdsecurity/CVE-2022-xxxxx"} 2 cs_active_decisions{Aktion="Verbot",Herkunft="ICSC",Grund="crowdsecurity/CVE-2022-xxxxx"} 669 cs_active_decisions{Aktion="Verbot",Herkunft="ICSC",Grund="Crowdsecurity/apache_log4j2_cve-XXXXX"} 11 cs_active_decisions{Aktion="Verbot",Herkunft="ICSC",Grund="crowdsecurity/fortinet-cve-xxxxx"} 237 cs_active_decisions{Aktion="Verbot",Herkunft="ICSC",Grund="crowdsecurity/grafana-cve-xxxxx"} 27 cs_active_decisions{Aktion="Verbot",Herkunft="ICSC",Grund="crowdsecurity/http-backdoors-attempts"} 101 cs_active_decisions{Aktion="Verbot",Herkunft="ICSC",Grund="crowdsecurity/http-bad-user-agent"} 3632 ...
Auf unserem Prometheus-Server können wir nun die Metriken jedes Crowdsec-Agenten hinzufügen, In der Konfigurationsdatei geben wir '/usr/local/bin/prometheus/prometheus.yml’
... scrape_configs: ... - job_name: 'crowdsec_OS-GRA-04' static_configs: - Ziele: ['192.168.x.xxx:6060'] etiketten: Maschine: 'OS-GRA-04' - job_name: 'crowdsec_OS-JITSI-05' static_configs: - Ziele: ['192.168.x.xxx:6060'] etiketten: Maschine: 'OS-JITSI-05' ...
Und wir würden Prometheus neu starten, damit es die Daten aus unserem Crowdsec bereits lesen kann!
sudo service prometheus restart
Wenn wir den Konnektor gegen den Prometheus von Grafana nicht haben, Wir machen es, Wir erstellen die Datenquelle.
Wir werden in der Lage sein von https://github.com/crowdsecurity/grafana-dashboards Vorkonfigurierte Dashboards, also laden wir einfach die JSON-Datei herunter und importieren sie in Grafana. Dies wäre das Dashboard mit den Details pro Agent oder "Crowdsec Details pro Maschine".
Dashboard de Crowdsec Insight, Ein kurzer Blick.
Und diese letzte 'Crowdsec Übersicht’ Zusammenfassend,
Brunnen, Nun, ich hoffe, Sie fanden es interessant oder zumindest neugierig, wie einfach es ist, den Status unserer Maschinen mit Crowdsec zu erfahren.
Eine Umarmung!