Dashboard con Crowdsec: Metabase o Prometheus con Grafana

In questo post esamineremo due opzioni per tenere traccia della nostra infrastruttura Crowdsec, Avremo due opzioni, Un po' semplice, Un contenitore Docker pronto all'uso. O, Perché no, goditi la vita e integrala in Prometheus e visualizzala con Grafana!

Se vogliamo conoscere lo stato delle nostre macchine con Crowdsec, la cosa migliore è farlo tramite GUI e avere alcune dashboard già realizzate dalla community che ci aiutano, Come ho detto, Abbiamo due opzioni, a utilizzare un contenitore Docker con Metabase già preconfigurato per connettersi al LAPI locale, qualcosa di semplice ed essenziale che può essere utile. Oppure possiamo inviare una metrica Prometheus dai nostri agenti e poi visualizzarla in Grafana, quanto basta.

Metabase,

Avremo bisogno di Docker, se non lo abbiamo installato in precedenza:

sudo apt install docker.io -y

Y ejecutando 'sudo cscli dashboard setup –ascolta 0.0.0.0’ lo desplegaremos:

sudo configurazione della dashboard cscli --listen 0.0.0.0
    ? La metabase richiede 1-2 GB di RAM, Il tuo sistema è al di sotto di questo requisito continua ? Sì
    ? For metabase docker to be able to access SQLite file we need to add a new group called 'crowdsec' to the system, Va bene per te ? (S/n) Y INFORMAZIONI[12-11-2022 05:09:02 Pomeriggio] Estrazione della metabase/metabase dell'immagine docker:v0.41.5
    .............................................................................................................................................
    INFORMAZIONI[12-11-2022 05:09:32 Pomeriggio] creating container 'crowdsec-metabase'
    INFO[12-11-2022 05:09:38 Pomeriggio] In attesa che la metabase sia attiva (può richiedere fino a un minuto)
    ..............................
    INFORMAZIONI[12-11-2022 05:11:50 Pomeriggio] La metabase è pronta URL       : 'http://0.0.0.0:3000'
        username  : 'Cr******@cr******.nEt'
        password  : 'xxxxxxxxxxxxxxxx'

Cuando arranque el contenedor de Metabase, Ya podremos abrir un navegador a http://DIRECCION_IP:3000

Este sería el Home, dove vediamo direttamente la connessione a Crowdsec, e 3 Pannelli, con l'elenco delle decisioni attive, una cronologia degli avvisi o una dashboard generale.

Dashboard de CS – Elenco delle decisioni attive,

Dashboard de CS – Cronologia avvisi,

Dashboard de CS – Dashboard principale.

Quindi possiamo fermare la Dashboard, Strappalo o eliminalo:

sudo CSCli Dashboard Stop sudo CSCLI Dashboard Start sudo CSCLI Dashboard Remove --Force

Prometeo + Grafana,

In ogni agente Crowdsec, nel tuo file di configurazione '/etc/crowdsec/config.yaml', dovremo abilitare Prometheus, Indicheremo una porta di ascolto attraverso la quale offriremo le metriche, Qualcosa del genere:

Prometeo:
  Abilitato: Livello reale: Pieno listen_addr: 0.0.0.0
  listen_port: 6060

E ricarichiamo Crowdsec per applicare le modifiche di cui sopra:

sudo systemctl restart crowdsec

Per dimostrare che funziona, Possiamo lanciare un ricciolo a quel porto, dalla macchina stessa o da una remota, Da Shell eseguiamo 'curl http://DIRECCION_IP:6060/Metriche’ per convalidare:

Curl HTTP://192.168.x.xxx:6060/Metriche
    # HELP cs_active_decisions Numero di decisioni attive.
    # TIPO cs_active_decisions calibro cs_active_decisions{azione="Vietare",origine="ICSC",reason="crowdsecurity/CVE-2022-xxxxx"} 16
    cs_active_decisions{azione="Vietare",origine="ICSC",reason="crowdsecurity/CVE-2022-xxxxx"} 2
    cs_active_decisions{azione="Vietare",origine="ICSC",reason="crowdsecurity/CVE-2022-xxxxx"} 2
    cs_active_decisions{azione="Vietare",origine="ICSC",reason="crowdsecurity/CVE-2022-xxxxx"} 669
    cs_active_decisions{azione="Vietare",origine="ICSC",reason="Crowdsecurity/apache_log4j2_cve-xxxxx"} 11
    cs_active_decisions{azione="Vietare",origine="ICSC",reason="Crowdsecurity/Fortinet-CVE-xxxxx"} 237
    cs_active_decisions{azione="Vietare",origine="ICSC",reason="Crowdsecurity/grafana-CVE-xxxxx"} 27
    cs_active_decisions{azione="Vietare",origine="ICSC",reason="crowdsecurity/http-backdoors-attempts"} 101
    cs_active_decisions{azione="Vietare",origine="ICSC",reason="crowdsecurity/http-bad-user-agent"} 3632
...

Ora sul nostro server Prometheus saremo in grado di aggiungere le metriche di ogni agente Crowdsec, Nel suo file di configurazione indichiamo '/usr/local/bin/prometheus/prometheus.yml’

...
scrape_configs:
...
  - job_name: 'crowdsec_OS-GRA-04'
    static_configs:
    - Obiettivi: ['192.168.x.xxx:6060']
      Etichette:
        macchina: 'OS-GRA-04'

  - job_name: 'crowdsec_OS-JITSI-05'
    static_configs:
    - Obiettivi: ['192.168.x.xxx:6060']
      Etichette:
        macchina: 'OS-JITSI-05'
...

E riavvieremmo Prometheus in modo che possa già leggere i dati dal nostro Crowdsec!

sudo service prometheus restart

Se non abbiamo il connettore contro il Prometheus di Grafana, Noi lo facciamo, creiamo l'Origine Dati.

Saremo in grado di scaricare da https://github.com/crowdsecurity/grafana-dashboards Dashboard preconfigurate, quindi scarichiamo semplicemente il file JSON e lo importiamo in Grafana. Si tratta della dashboard con i dettagli per agente o dei "Dettagli Crowdsec per macchina".

Dashboard de Crowdsec Insight, Un breve sguardo.

E quest'ultima 'Panoramica di Crowdsec’ In sintesi,

Bene, Bene, spero che tu abbia trovato interessante o almeno curioso il modo semplice per conoscere lo stato delle nostre macchine con Crowdsec.

Un abbraccio!

Post consigliati

Autore

nheobug@bujarra.com
Autor del blog Bujarra.com Cualquier necesidad que tengas, Non esitate a contattarmi, Cercherò di aiutarti ogni volta che potrò, Condividere è vivere ;) . Goditi i documenti!!!