Visualizando los registros de Suricata en Grafana o Kibana
Después de ver cómo instalamos Suricata y haberlo dejado funcional, ahora es momento de tratar sus datos y visualizarlos de una manera más amigable, para ello nos apoyaremos de Grafana como visualizador, aunque con Kibana podrás realizarlo de igual manera (o más sencilla). Todo ello gracias a que almacenaremos los LOGs de Suricata en Elasticsearch.
El proceso es realmente sencillo, en la máquina que corre Suricata le instalaremos Filebeat para recolectar el fichero de log y enviarselo a Elasticsearch directamente, tras ello habilitaremos el módulo de suricata y lo configuramos. Una vez lo tengamos listo, debería nuestro Elasticsearch empezar a almacenar estos registros, y con Grafana poder explotarlos, o con Kibana, vaya.
Abrimos nuestro Kibana, en el menú izquierdo vamos al icono de «SIEM» > «Add data with Beats» > «Suricata logs» y nos dará todo el detalle de qué necesitamos. Es esta URL: http://IP_ELASTIC_SEARCH:5601/app/kibana#/home/tutorial/suricataLogs
Nos posicionamos sobre la pestaña «DEB» (en mi caso, ya que Suricata corre bajo Debian Buster) y como vemos viene perfectamente explicadito.
Instalación de Filebeats:
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.7.0-amd64.deb dpkg -i filebeat-7.7.0-amd64.deb
Editamos el fichero de configuración de Filebeat (/etc/filebeat/filebeat.yml), indicaremos el nombre del índice a utilizar en Elasticsearch, así como si tenemos Kibana y queremos importar los dashboards por defecto:
#================ Elasticsearch template setting ==================== ... setup.template.name: "suricata" setup.template.pattern: "suricata-*" setup.dashboards.index: "suricata-*" setup.ilm.enabled: false ... setup.kibana: host: "FQDN_O_DIRECCION_IP_KIBANA:5601" ... #---------------------- Elasticsearch output ------------------------ output.elasticsearch: # Array of hosts to connect to. hosts: ["FQDN_O_DIRECCION_IP_ELASTICSEARCH:9200"] index: "suricata-%{+yyyy.MM.dd}" ...
Habilitamos el módulo de Suricata, creamos unos dashboards predeternubadis en Kibana de Suricata, arrancamos el demonio de Filebeat y hacemos que se inicie de manera automática con el sistema.
filebeat modules enable suricata filebeat setup systemctl start filebeat systemctl enable filebeat.service systemctl status filebeat
Y sin hacer nada más podremos ir a los Dashboards de Kibana o a sus visualizaciones e ir viendo los datos que nos va recogiendo.
Si queremos visualizarlo en Grafana, deberemos como siempre crear un Data Source apuntando al índice de Suricata de nuestro Elasticsearch y podremos hacer las gráficas como nos interese, con simples consultas como lo haríamos desde el Discover de nuestro Kibana, imaginación al poder!
Y nada, al de 5 minutos podrás hacer Dashboards así de simplones y que te permiten visualizar rápidamente qué pasa, qué equipos acceden a cuales, ver las conexiones, etc…
Posts recomendados:
- Gestión de calendarios con Radicale - 23 de mayo de 2024
- Monitorizando las reglas UTM web de nuestro firewall gracias a Centreon - 21 de mayo de 2024
- Backup automatizado de la configuración de Fortigate - 16 de mayo de 2024