Compartir vía


Ingesta de mensajes CEF y Syslog en Microsoft Sentinel con el agente de Azure Monitor

En este artículo se describe cómo usar los conectores Syslog a través de AMA y Formato de evento común (CEF) a través de AMA para filtrar e ingerir rápidamente mensajes de Syslog, incluidos los de formato de evento común (CEF), desde máquinas Linux y desde dispositivos de seguridad y red. Para más información sobre estos conectores de datos, consulte Syslog a través del AMA y los conectores de formato de evento común (CEF) mediante el AMA para Microsoft Sentinel.

Requisitos previos

Antes de comenzar, es necesario tener los recursos configurados y los permisos adecuados descritos en esta sección.

Requisitos previos de Microsoft Azure Sentinel

En el caso de Microsoft Sentinel, instale la solución adecuada y asegúrese de que tiene los permisos necesarios para completar los pasos descritos en este artículo.

Requisitos previos del reenviador de registros

Si va a recopilar mensajes de un reenviador de registros, se aplicarán los siguientes requisitos previos:

  • Para recopilar registros, debe tener una máquina virtual Linux designada como reenviador de registros.

  • Si el reenviador de registros no es una máquina virtual de Azure, debe tener instalado el agente de Connected Machine de Azure Arc.

  • La máquina virtual del reenviador de registros de Linux debe tener instalado Python 2.7 o 3. Use el comando python --version o python3 --version para comprobarlo. Si usa Python 3, asegúrese de que se establece como comando predeterminado en la máquina, o bien ejecute los scripts siguientes con el comando "python3", en lugar de "python".

  • El reenviador de registros debe tener habilitada el demonio de syslog-ng o rsyslog.

  • Para conocer los requisitos de espacio para el reenviador de registros, consulte Punto de referencia de rendimiento de Azure Monitor Agent. También puede revisar esta entrada de blog, que incluye diseños para la ingesta escalable.

  • Tanto los orígenes de registro como los dispositivos de seguridad se deben configurar para enviar sus mensajes de registro al demonio de Syslog del reenviador de registros, en lugar de a su demonio de Syslog local.

Requisitos previos de seguridad de la máquina

Configure la seguridad de la máquina de acuerdo con la directiva de seguridad de su organización. Por ejemplo, configure la red para que se alinee con la directiva de seguridad de la red corporativa y cambie los puertos y protocolos del demonio para que se ajusten a sus requisitos. Para mejorar la configuración de seguridad de la máquina, proteja la máquina virtual en Azure o revise estos procedimientos recomendados para la seguridad de red.

Si los dispositivos envían registros de Syslog y CEF sobre TLS, por ejemplo, porque el reenviador de registros esté en la nube, deberá configurar el demonio de Syslog (rsyslog o syslog-ng) para que se comunique en TLS. Para más información, vea:

Configuración del conector de datos

El proceso de configuración de Syslog mediante AMA o de CEF mediante conectores de datos AMA incluye los siguientes pasos:

  1. Instale el agente de Azure Monitor y cree una regla de recopilación de datos (DCR), para lo que puede usar cualquiera de los siguientes métodos:
  2. Si va a recopilar registros de otras máquinas mediante un reenviador de registros, ejecute el script "instalación" en el reenviador de registros para configurar el demonio de Syslog y escuchar mensajes de otras máquinas y abrir los puertos locales necesarios.

Para obtener instrucciones, seleccione la pestaña pertinente.

Crear una regla de recopilación de datos.

Para empezar, abra el conector de datos en Microsoft Sentinel y cree una regla de conector de datos.

  1. En Microsoft Sentinel, en Azure Portal en Configuración, seleccione Conectores de datos.
    Para Microsoft Sentinel en el Portal Defender, seleccione Microsoft Sentinel>Configuración>Conectores de datos.

  2. En el caso de Syslog. escriba Syslog en el cuadro Buscar. En los resultados, seleccione el conectorSyslog a través de AMA.
    En el caso de CEF, escriba CEF en el cuadro Buscar. En los resultados, seleccione el conector formato de evento común (CEF) a través de AMA.

  3. Seleccione Abrir página del conector en el panel de detalles.

  4. En el área Configuración, seleccione +Crear regla de recopilación de datos.

    Captura de pantalla que muestra la página de Syslog a través del conector del AMA.

    Captura de pantalla que muestra la página de CEF a través del conector del AMA.

  5. En la pestaña Básico:

    • Escriba un nombre de DCR.
    • Seleccione su suscripción.
    • Seleccione el grupo de recursos en el que se encuentra su DCR.

    Captura de pantalla que muestra los detalles de DCR en la pestaña Aspectos básicos.

  6. Seleccione Siguiente: Recursos>.

Definición de recursos de la máquina virtual

En la pestaña Recursos, seleccione las máquinas en las que desea instalar el AMA, en este caso, la máquina del reenviador de registro. Si el reenviador de registros no aparece en la lista, es posible que no tenga instalado el agente de Azure Connected Machine.

  1. Use los filtros disponibles o el cuadro de búsqueda para buscar la máquina virtual del reenviador de registro. Expanda cualquiera de las suscripciones de la lista para ver sus grupos de recursos y cualquiera de estos para ver sus máquinas virtuales.

  2. Seleccione la máquina virtual del reenviador de registros en la que desea instalar el AMA. La casilla aparece junto al nombre de la máquina virtual al mantener el puntero sobre ella.

    Captura de pantalla que muestra cómo seleccionar recursos al configurar el controlador de dominio.

  3. Revise los cambios y seleccione Siguiente: Recopilar >.

Selección de instalaciones y niveles de gravedad

El uso de la misma instalación para los mensajes Syslog y CEF puede provocar la duplicación de la ingesta de datos. Para más información, consulte Prevención de duplicación en la ingesta de datos.

  1. En la pestaña Recopilar, seleccione el nivel de registro mínimo para cada instalación. Al seleccionar un nivel de registro, Microsoft Sentinel recopila registros para el nivel seleccionado y otros niveles con una gravedad mayor. Por ejemplo, si selecciona LOG_ERR, Microsoft Sentinel recopila registros para los niveles LOG_ERR, LOG_CRIT, LOG_ALERT, y LOG_EMERG.

    Captura de pantalla que muestra cómo seleccionar los niveles de registro al configurar el controlador de dominio.

  2. Revise las selecciones y seleccione Siguiente: Revisar y crear.

Revisión y creación de la regla

Después de completar todas las pestañas, examine lo que ha escrito y cree la regla de recopilación de datos.

  1. En la pestaña Revisar y crear, seleccione Crear.

    Captura de pantalla que muestra cómo revisar la configuración de DCR y su creación.

    El conector instalará el agente de Azure Monitor en las máquinas que seleccionó al crear la regla.

  2. Compruebe las notificaciones en Azure Portal o en el portal de Microsoft Defender para ver cuándo se crea la regla y se instala el agente.

  3. Seleccione Actualizar en la página del conector para ver la DCR que se muestra en la lista.

Ejecución del script de “instalación”

Si usa un reenviador de registros, configure el demonio de Syslog para que escuche mensajes de otras máquinas y abra los puertos locales necesarios.

  1. En la página del conector, copie la línea de comandos que aparece en Ejecutar el siguiente comando para instalar y aplicar el recopilador CEF:

    Captura de pantalla de la línea de comandos en la página del conector.

    O bien cópielo de aquí:

    sudo wget -O Forwarder_AMA_installer.py https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/DataConnectors/Syslog/Forwarder_AMA_installer.py&&sudo python Forwarder_AMA_installer.py
    
  2. Inicie sesión en la máquina del reenviador de registros en la que acaba de instalar el AMA.

  3. Pegue el comando que copió en el último paso para iniciar el script de instalación.
    El script configura el demonio de rsyslog o syslog-ng para usar el protocolo necesario y reinicia el demonio. El script abre el puerto 514 para escuchar los mensajes entrantes en los protocolos UDP y TCP. Para cambiar esta configuración, consulte el archivo de configuración del demonio de Syslog según el tipo de demonio que se ejecuta en la máquina:

    • Rsyslog: /etc/rsyslog.conf
    • Syslog-ng: /etc/syslog-ng/syslog-ng.conf

    Nota:

    Para evitar escenarios de disco completo en los que el agente no puede funcionar, se recomienda establecer la configuración de syslog-ng o rsyslog en no almacenar los registros innecesarios. Un escenario de disco completo interrumpe la función del conector de AMA instalado. Para más información, consulte RSyslog o Syslog-ng.

Prueba del conector

Compruebe que los mensajes de registro de la máquina Linux o de los dispositivos de seguridad se ingieren en Microsoft Sentinel.

  1. Para validar que el demonio de syslog se ejecuta en el puerto UDP y que AMA está escuchando, ejecute este comando:

    netstat -lnptv
    

    Debería ver el demonio rsyslog o syslog-ng escuchando en el puerto 514.

  2. Para capturar mensajes enviados desde un registrador o un dispositivo conectado, ejecute este comando en segundo plano:

    tcpdump -i any port 514 -A -vv &
    
  3. Después de completar la validación, se recomienda detener tcpdump: Type fg y, a continuación, seleccione Ctrl+C.

  4. Para enviar mensajes de demostración, siga estos pasos:

    • Use la utilidad netcat. En este ejemplo, la utilidad lee los datos publicados a través del comando echo con el modificador de nueva línea desactivado. A continuación, la utilidad escribe los datos en el puerto UDP 514 en el host local sin tiempo de espera. Para ejecutar la utilidad netcat, es posible que tenga que instalar otro paquete.

      echo -n "<164>CEF:0|Mock-test|MOCK|common=event-format-test|end|TRAFFIC|1|rt=$common=event-formatted-receive_time" | nc -u -w0 localhost 514
      
    • Use el registrador. En este ejemplo se escribe el mensaje en la instalación local 4, en el nivel de gravedad Warning, en el puerto 514, en el host local, en el formato RFC CEF. Las marcas -t y --rfc3164 se usan para cumplir con el formato RFC esperado.

      logger -p local4.warn -P 514 -n 127.0.0.1 --rfc3164 -t CEF "0|Mock-test|MOCK|common=event-format-test|end|TRAFFIC|1|rt=$common=event-formatted-receive_time"
      
  5. Para comprobar que el conector está instalado correctamente, ejecute el script de solución de problemas con uno de estos comandos:

    • Para los registros CEF, ejecute:

       sudo wget -O Sentinel_AMA_troubleshoot.py https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/DataConnectors/Syslog/Sentinel_AMA_troubleshoot.py&&sudo python Sentinel_AMA_troubleshoot.py --cef
      
    • Para los registros de Cisco Adaptive Security Appliance (ASA), ejecute:

      sudo wget -O Sentinel_AMA_troubleshoot.py https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/DataConnectors/Syslog/Sentinel_AMA_troubleshoot.py&&sudo python Sentinel_AMA_troubleshoot.py --asa
      
    • Para los registros de Cisco Firepower Threat Defense (FTD), ejecute:

      sudo wget -O Sentinel_AMA_troubleshoot.py https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/DataConnectors/Syslog/Sentinel_AMA_troubleshoot.py&&sudo python Sentinel_AMA_troubleshoot.py --ftd