Cómo configurar un reenviador (forwarder) para enviar datos de log (syslog y otros) de un equipo Linux a un servidor SIEM con Splunk. De esta forma los log y eventos del equipo Linux se enviarán al servidor SIEM y quedarán centralizados para su explotación y correlación.

Configurar receptor (receiving) en servidor SIEM Splunk

En primer lugar accederemos a la consola web de gestión de Splunk para agregar un reenviador (forwarder). Para ello, una vez dentro de la consola, pulsaremos en «Settings» y en «Forwarding and receiving»:

Configurar receptor (receiving) en servidor SIEM Splunk

En «Configure receiving» pulsaremos en «+ Add new»:

Configurar receptor (receiving) en servidor SIEM Splunk

Introduciremos el puerto que usaremos para la recepción de los datos de log y syslog de los equipos Linux (y otros) mediante reenviadores (forwarders), por defecto el puerto 9997:

Configurar receptor (receiving) en servidor SIEM Splunk

Descarga e instalación de Splunk Universal Forwarder 8.2.6 for Linux

Desde la web oficial de Splunk, en descargas, buscaremos la descarga de Splunk Universal Forwarder 8.2.6 for Linux. Deberemos tener usuario registrado en Splunk y deberemos aceptar los términos de licencia. Una vez hecho esto podremos descargar el paquete de instalación en formato .rpm, .deb o .tgz. En nuestro caso, tenemos un servidor Linux Debian 11, por lo que elegiremos .deb. Nos descargará directamente el fichero de instalación del forwarder para Linux y también nos dará la opción de copiar el comando wget para descargarlo directamente en nuestro equipo Linux, el comando:

Descarga e instalación de Splunk Universal Forwarder 8.2.6 for Linux

Desde la consola shell de comandos de Linux, descargaremos el fichero de instalación del forwarder, ejecutando el comando copiado anteriormente:

Descarga e instalación de Splunk Universal Forwarder 8.2.6 for Linux

Una vez descargado el fichero, lo instalaremos con el comando:

Tras instalarlo, lo iniciaremos con:

Nos solicitará usuario administrador del servidor de Splunk y contraseña, los introduciremos y pulsaremos INTRO:

Descarga e instalación de Splunk Universal Forwarder 8.2.6 for Linux

El cliente de Splunk Forwarder quedará instalado e iniciado:

Descarga e instalación de Splunk Universal Forwarder 8.2.6 for Linux

A continuación agregaremos el reenviador al servidor con el comando:

Donde:

  • 192.168.1.2:9997: IP y puerto del servidor de Splunk. Usaremos el mismo puerto que hayamos indicado en el cliente forwarder creado anteriormente en Splunk.
  • admsp:contraseña: usuario y contraseña del servidor Splunk.
Descarga e instalación de Splunk Universal Forwarder 8.2.6 for Linux

Agregaremos también un poll de reenvío con el comando:

Como siempre, indicando la IP del servidor de Splunk y el puerto que queramos usar.

Descarga e instalación de Splunk Universal Forwarder 8.2.6 for Linux

Por último, iremos añadiendo los elementos (monitores) que queramos enviar al servidor Splunk desde el equipo Linux. Por ejemplo, para enviar /var/log/syslog ejecutaremos:

Descarga e instalación de Splunk Universal Forwarder 8.2.6 for Linux

De la misma forma, podremos agregar cualquier monitor de cualquier fichero de log que queramos, por ejemplo:

Otro monitor que podemos agregar:

Nota importante: no usaremos el parámetro «index» en el comando anterior add monitor salvo que dispongamos de un clúster de Splunk Server. Si usamos el parámetro index y no tenemos un clúster configurado, nos mostrará en la consola de Splunk Server el siguiente mensaje:

Received event for unconfigured/disabled/deleted index=auth with source=»source::/var/log/auth.log» host=»host::srvdns1″ sourcetype=»sourcetype::linux_secure». So far received events from 4 missing index(es).

Para aplicar los cambios reiniciaremos el servicio Splunk Forwarder:

Descarga e instalación de Splunk Universal Forwarder 8.2.6 for Linux

Nota: si queremos eliminar un monitor ejecutaremos:

Donde «/var/log» será el monitor agregado que queremos eliminar.

Editar fichero de inputs en cliente forwarder Splunk

Si queremos modificar directamente el fichero donde Splunk Forwarder guarda los inputs que enviará al servidor Splunk, editaremos el fichero /opt/splunkforwarder/etc/apps/search/local/inputs.conf:

Editar fichero de inputs en cliente forwarder Splunk

Para los inputs agregados tiene este formato:

Se hemos realizado algún cambio en este fichero de inputs, para que se aplique, reiniciaremos el servicio de Splunk Forwarder:

Consultar eventos del equipo Linux registrado en el servidor de Splunk

Esperaremos unos minutos a que se envíen los eventos de los monitores agregados, en nuestro caso /var/log/syslog. Para consultar los datos recibidos, abriremos la consola web de Splunk y pulsaremos en «Search & Reporting»:

Consultar eventos del equipo Linux registrado en el servidor de Splunk

Ejecutaremos un filtro, por ejemplo:

host=»srvdns1″ source=»/var/log/auth.log»

Consultar eventos del equipo Linux registrado en el servidor de Splunk