Configurar reenviador de Syslog en Azure Sentinel

En esta entrada veremos como configurar un reenviador de Syslog para poder integrar diferentes componentes como Firewall a nuestro Azure Sentinel. 

Para empezar debemos instalar OMS Agent en un servidor GNU/Linux 

Los sistemas operativos soportados son los siguientes: 

  • CentOS 6 and 7
  • Amazon Linux 2017.09
  • Oracle Linux 6 and 7
  • Red Hat Enterprise Linux Server 6, 7, and 8
  • Debian GNU/Linux 8 and 9
  • Ubuntu Linux 14.04 LTS, 16.04 LTS and 18.04 LTS
  • SUSE Linux Enterprise Server 12 and 15

En un principio lo intenta realizar con Debian 10, pero pude ver que no funcionaba… por lo tanto instale un Ubuntu 18.04 LTS

2020/09/23 08:12:42 ERROR:Unsupported operating system: debian 10.5
2020/09/23 08:12:42 ERROR:[Microsoft.EnterpriseCloud.Monitoring.OmsAgentForLinux-1.13.15] Unsupported operating system: debian 10.5
2020/09/23 08:12:42 [Microsoft.EnterpriseCloud.Monitoring.OmsAgentForLinux-1.13.15] Install,failed,51,Unsupported operating system: debian 10.5

Si nuestra maquia se encuentra en Azure nos vamos a: Azure Sentinel > Seleccionamos nuestro workspace > Settings > Workspace settings >  presionamos sobre: Azure virtual machines (VMs)

Seleccionamos la maquina virtual que queremos configurar el agente

Presionamos a Connect

En caso de que no se trate de un sistema den Azure deberíamos realizar los siguientes pasos: 

wget https://raw.githubusercontent.com/Microsoft/OMS-Agent-for-Linux/master/installer/scripts/onboard_agent.sh

onboard_agent.sh -w [workspaceID] -s [Primary Key] -d opinsights.azure.com

Una vez tenemos instalado el agente OMS tenemos que configurar el demonio para reenviar los mensajes de CEF al agente de Log Analytics en el puerto TCP 25226, insertando un archivo de configuración especial security-config-omsagent.conf en el directorio del demonio de syslog /etc/rsyslog.d/.

cat /etc/rsyslog.d/l security-config-omsagent.conf
:rawmsg, regex, "CEF"|"ASA"
*.* @@127.0.0.1:25226

Configuramos rsyslog para trabajar con el puerto 514, para ello editamos /etc/rsyslog.conf en el cual tenemos que descomentar las siguientes lineas:

Reiniciamos el servicio de rsyslog

service rsyslog restart

Comprobamos que el puerto esta levantado

netstat -ptnuoa | grep rsyslog
tcp        0      0 0.0.0.0:514             0.0.0.0:*               LISTEN      16333/rsyslogd       off (0.00/0/0)
tcp        0      0 127.0.0.1:35092         127.0.0.1:25226         ESTABLISHED 16333/rsyslogd       off (0.00/0/0)
tcp        0      0 127.0.0.1:35090         127.0.0.1:25226         ESTABLISHED 16333/rsyslogd       off (0.00/0/0)
tcp6       0      0 :::514                  :::*                    LISTEN      16333/rsyslogd       off (0.00/0/0)
udp        0      0 0.0.0.0:35410           0.0.0.0:*                           16333/rsyslogd       off (0.00/0/0)
udp        0      0 0.0.0.0:43611           0.0.0.0:*                           16333/rsyslogd       off (0.00/0/0)
udp        0      0 0.0.0.0:60283           0.0.0.0:*                           16333/rsyslogd       off (0.00/0/0)
udp        0      0 0.0.0.0:60283           0.0.0.0:*                           16333/rsyslogd       off (0.00/0/0)
udp        0      0 0.0.0.0:514             0.0.0.0:*                           16333/rsyslogd       off (0.00/0/0)
udp6       0      0 :::514                  :::*                                16333/rsyslogd       off (0.00/0/0)

Establecemos la configuración del agente de Log Analytics para escuchar en el puerto 25226 y reenviar mensajes de CEF a Azure Sentinel

wget -o /etc/opt/microsoft/omsagent[workspaceID]/conf/omsagent.d/security_events.conf https://raw.githubusercontent.com/microsoft/OMS-Agent-for-Linux/master/installer/conf/omsagent.d/security_events.conf

La configuración tiene que quedar de la siguiente forma:

cat /etc/opt/microsoft/omsagent/[workspace ID]/conf/omsagent.d/security_events.conf
<source>
  type syslog
  port 25226
  bind 127.0.0.1
  protocol_type tcp
  tag oms.security
  format /(?<time>(?:\w+ +){2,3}(?:\d+:){2}\d+|\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.[\w\-\:\+]{3,12}):?\s*(?:(?<host>[^: ]+) ?:?)?\s*(?<ident>.*CEF.+?(?=0\|)|%ASA[0-9\-]{8,10})\s*:?(?<message>0\|.*|.*)/
  <parse>
     message_format auto
  </parse>
</source>


<filter oms.security.**>
  type filter_syslog_security
</filter>

Reiniciamos el agente de Log Analytics

/opt/microsoft/omsagent/bin/service_control restart [workspaceID]

Tras la configuración de OMS debemos ir a Log Analytics workspace > seleccionamos nuestro workspace > advanced settings 

Presionamos sobre la pestaña Data > Syslog y agregamos los eventos que consideremos necesarios.

Normalmente, recibiremos los datos mediante local4, aun que yo he agregado unos cuantos logs mas

Por ultimo vamos a diferentes Data connections, para ello nos vamos a Azure Sentinel > seleccionamos nuestro workspace > Data connections > Syslog y presionamos en Open connector Page

Se nos abre el asistente de configuración, que como podemos ver son los pasos que hemos realizado anteriormente, por lo tanto nos vamos a Next sleps

Agregamos el workbooks y las reglas asociadas.

:wq!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *