En los artículos anteriores vimos como instalar y configurar splunk , también como instalar y configurar el Universal Forwarder. En esta oportunidad y por solicitud de algunos lectores mostraremos como configurar algunos dispositivos a los cuales no se les puede instalar el Universal Forwarder para que envien los logs a splunk.
El primer paso será habilitar los puertos para que Splunk funcione como servidor syslog. Para esto vamos a el Manager/Data Inputs y creamos un nuevo puerto UDP. Recomiendo crear inicialmente el puerto 514 ya que este es el puerto por defecto de syslog.
Verificamos los puertos de nuestro servidor. En una consola ejecutamos:
netstat -putan | grep splunk
Con esto ya podemos ir a nuestros routers, switchs, firewalls o cualquier otro dispositivo para que envie los logs a nuestro servidor a los puertos de syslog.
Por ejemplo en este caso voy a tomar un Firewall SonicWall y configurar para que envíe los logs a Splunk.
Con la información que está llegando a splunk podemos crear búsquedas para generar reportes, alertas y acciones, en este caso con este simple filtro puedo ver en tiempo real hacia que países se conectan los usuarios de la red y generar una gráfica con esta información.
Cada gráfica o reporte se puede personalizar para mostrarlo de una mejor forma dependiendo los datos.
Con las búsquedad generadas se pueden crear nuevas alertas, reportes, generar otras búsquedas, personalizar el dashboard de splunk, entre otros.
Por ejemplo vamos a indexar los logs de mi PBX, luego realizamos una búsqueda filtrando por accesos fallidos vía SSH.
Con esta búsqueda vamos a crear una alerta que ejecute un script para que cree una regla de iptables en nuestro servidor asterisk y bloquee la dirección de origen. Los scripts se pueden crear en perl, bash, python, ruby, entre otros. También se puede configurar para que envíe un correo al administrador de la plataforma.
Para este caso he creado un script que crea una regla de iptables con la ip de origen de la conexión ssh y la ejecuta en mi servidor Asterisk. Recuerden todos los scripts se deben crear en /opt/splunk/bin/scripts/
Como ven podemos usar splunk para monitorear eventos en cualquier equipo o dispositivo, utilizar esta información para seguridad de nuestra red, ver el comportamiento de nuestros clientes que entran a nuestro servidor web, resolver incidentes y otras cosas más, acá aplico el concepto de que el límite lo coloca nuestra imaginación.
Este post fue escrito por Daniel Rodríguez
Founder of http://hotfixed.net - Co-Founder of @BusyToneGroup and @S3cT0 | Penetration Tester | Security Consultant | Linux | VoIP