[En desuso] Implementación de un reenviador de registros para ingerir registros de Syslog y CEF en Microsoft Sentinel
Importante
La recopilación de registros de numerosos dispositivos y aparatos ahora es compatible con el formato de evento común (CEF) a través de AMA, Syslog mediante AMA o registros personalizados a través del conector de datos AMA en Microsoft Sentinel. Para más información, consulte Encuentre su conector de datos de Microsoft Sentinel.
Precaución
Este artículo hace referencia a CentOS, una distribución de Linux que ha alcanzado el estado de finalización del servicio (EOL). Tenga en cuenta su uso y planificación en consecuencia. Para más información, consulte la Guía de fin de ciclo de vida de CentOS.
Para ingerir registros de Syslog y CEF en Microsoft Sentinel, sobre todo desde aplicaciones y dispositivos en los que no se puede instalar el agente de Log Analytics directamente, debe designar y configurar una máquina Linux para que recopile los registros de los dispositivos y los reenvíe al área de trabajo de Microsoft Sentinel. Esta máquina puede ser una máquina física o virtual del entorno local, una máquina virtual de Azure o una máquina virtual en otra nube.
La máquina tiene dos componentes que participan en el proceso:
- Un daemon de syslog (rsyslog o syslog-ng) que recopila los logs.
- El agente de Log Analytics (también conocido como Agente de OMS), que reenvía los registros a Microsoft Sentinel.
Con el vínculo proporcionado a continuación, ejecutará un script en la máquina designada que realiza las tareas siguientes:
Instala el agente de Log Analytics para Linux (también denominado agente de OMS) y lo configura para los siguientes fines:
- escuchar mensajes CEF desde el daemon de Syslog de Linux integrado en el puerto TCP 25226
- envío de mensajes de forma segura a través de TLS a su área de trabajo de Microsoft Sentinel, donde se analizan y enriquecen
Configura el demonio de Syslog de Linux integrado (rsyslog.d/syslog-ng) con los siguientes propósitos:
- Escuchar mensajes de Syslog de sus soluciones de seguridad en el puerto TCP 514
- reenvío de solo los mensajes que identifica como CEF al agente de Log Analytics en localhost mediante el puerto TCP 25226
Importante
El agente de Log Analytics se retirará el 31 de agosto de 2024. Si usa el agente de Log Analytics en la implementación de Microsoft Sentinel, le recomendamos que empiece a planear la migración al AMA. Para más información, vea Migración de AMA para Microsoft Sentinel.
Para obtener información sobre cómo implementar registros de Syslog o CEF con el agente de Azure Monitor, revise las opciones para los registros de streaming en el formato CEF y Syslog en Microsoft Sentinel.
Requisitos previos
Cada conector de datos tiene su propio conjunto de requisitos previos. Los requisitos previos pueden incluir que debe tener permisos específicos en su área de trabajo, suscripción o directiva de Azure. O bien debe cumplir otros requisitos relativos al origen de datos del asociado al que se va a conectar.
Los requisitos previos para cada conector de datos se enumeran en la página correspondiente del conector de datos de Microsoft Sentinel.
Instale la solución de producto desde el centro de contenido en Microsoft Sentinel. Si el producto no aparece en la lista, instale la solución para el formato de evento común. Para más información, consulte Descubre y administra el contenido listo para usar de Microsoft Sentinel.
Importante
Las versiones del sistema operativo pueden tener diferentes fechas y ciclos de vida de soporte técnico. Se recomienda comprobar la documentación oficial de cada distribución para obtener el soporte técnico más preciso y actualizado y las fechas de fin de la vida útil.
La máquina debe cumplir los requisitos siguientes:
Hardware (físico/virtual)
La máquina Linux debe tener al menos cuatro núcleos de CPU y 8 GB de RAM.
Nota
- Una única máquina reenviadora de registros con la configuración de hardware anterior y que use el demonio rsyslog tiene una capacidad admitida de hasta 8500 eventos por segundo (EPS) recopilados.
Sistema operativo
- Amazon Linux 2 (solo 64 bits)
- Oracle Linux 7, 8 (64 o 32 bits)
- Red Hat Enterprise Linux (RHEL) Server 7 y 8 (no 6), incluidas las versiones secundarias (64/32 bits)
- Debian GNU/Linux 8 y 9 (64/32 bits)
- Ubuntu Linux 20.04 LTS (solo 64 bits)
- SUSE Linux Enterprise Server 12, 15 (solo 64 bits)
- Las distribuciones de CentOS ya no se admiten, ya que han alcanzado el estado de finalización del servicio (EOL). Vea la nota al principio de este artículo.
Versiones de procesos en segundo plano
- Rsyslog: v8
- Syslog-ng: 2.1 - 3.22.1
Paquetes
- Debe tener Python 2.7 o 3 instalado en la máquina Linux.
Use el comandopython --version
opython3 --version
para comprobarlo. - Debe tener el paquete GNU Wget.
- Debe tener Python 2.7 o 3 instalado en la máquina Linux.
Compatibilidad con RFC de Syslog
- Syslog RFC 3164
- RFC 5424 de Syslog
Configuración
- Debe tener permisos elevados (sudo) en la máquina Linux designada.
- La máquina Linux no debe estar conectada a ninguna área de trabajo de Azure antes de instalar el agente de Log Analytics.
Data
- En algún momento del proceso, es posible que necesite el identificador del área de trabajo y la clave principal del área de trabajo de Microsoft Sentinel. Puede encontrarlos en la configuración del área de trabajo, en Administración de agentes.
Consideraciones sobre la seguridad
Asegúrese de configurar la seguridad de la máquina de acuerdo con la directiva de seguridad de su organización. Por ejemplo, puede configurar su red para que se alinee con la política de seguridad de la red corporativa y cambiar los puertos y protocolos del daemon para que cumplan con sus requisitos. Puede usar las siguientes instrucciones para mejorar la configuración de seguridad de la máquina: Protección de máquinas virtuales en Azure y Procedimientos recomendados de seguridad de la red.
Si tus dispositivos están enviando registros de Syslog y CEF a través de 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 obtener más detalles, consulte la documentación siguiente:
Ejecutar el script de implementación
En Microsoft Sentinel, seleccione Conectores de datos.
Seleccione el conector del producto en la galería de conectores. Si el producto no aparece en la lista, seleccione formato de evento común (CEF).
En el panel de detalles del conector, seleccione Abrir página del conector.
En la página del conector, en las instrucciones de la sección 1.2 Instalación del recopilador de CEF en la máquina Linux, copie el vínculo proporcionado en Run the following script to install and apply the CEF collector (Ejecutar el siguiente script para instalar y aplicar el recopilador de CEF).
Si no tiene acceso a esa página, copie el vínculo del texto siguiente (debe copiar y pegar el identificador del área de trabajo y la clave principal de arriba en lugar de los marcadores de posición):sudo wget -O cef_installer.py https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/DataConnectors/CEF/cef_installer.py&&sudo python cef_installer.py [WorkspaceID] [Workspace Primary Key]
Pegue el vínculo o el texto en la línea de comandos del reenviador de registros y ejecútelo.
Mientras se ejecuta el script, asegúrese de que no recibe ningún mensaje de error o de advertencia.
- Es posible que reciba un mensaje que le indique que debe ejecutar un comando para corregir un problema con la asignación del campo Equipo. Consulte la explicación en el script de implementación para obtener más detalles.
Configure el dispositivo para enviar mensajes de CEF.
Nota
Uso de la misma máquina para reenviar Syslog en texto plano y mensajes de CEF
Si tiene previsto usar esta máquina de reenviador de registros para reenviar mensajes de Syslog, así como de CEF, haga lo siguiente para evitar la duplicación de eventos en las tablas Syslog y CommonSecurityLog:
En cada máquina de origen que envíe registros al reenviador en formato CEF, debe editar el archivo de configuración de Syslog para quitar las funciones que se usan para enviar mensajes de CEF. De este modo, las funcionalidades que se envíen en CEF no se enviarán también en Syslog. Consulte Configuración de Syslog en agente de Linux para obtener instrucciones detalladas sobre cómo hacerlo.
Debe ejecutar el siguiente comando en esas máquinas para deshabilitar la sincronización del agente con la configuración de Syslog en Microsoft Sentinel. Esto garantiza que el cambio de configuración que ha realizado en el paso anterior no se sobrescriba.
sudo su omsagent -c 'python /opt/microsoft/omsconfig/Scripts/OMS_MetaConfigHelper.py --disable'
Explicación del script de implementación
A continuación, se presenta una descripción, comando por comando, de las acciones del script de implementación.
Elija un demonio de syslog para ver la descripción correspondiente.
Descarga e instalación del agente de Log Analytics:
Descarga el script de instalación para el agente de Linux de Log Analytics (OMS).
wget -O onboard_agent.sh https://raw.githubusercontent.com/Microsoft/OMS-Agent-for-Linux/ master/installer/scripts/onboard_agent.sh
Instala el agente de Log Analytics.
sh onboard_agent.sh -w [workspaceID] -s [Primary Key] -d opinsights.azure.com
Establecimiento de la configuración del agente de Log Analytics para escuchar en el puerto 25226 y reenviar mensajes de CEF a Microsoft Sentinel:
Descarga la configuración del repositorio GitHub del agente de Log Analytics.
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
Configuración del demonio Syslog:
Abre el puerto 514 para la comunicación TCP mediante el archivo de configuración de syslog
/etc/rsyslog.conf
.Configura 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/
.Contenido del archivo
security-config-omsagent.conf
:if $rawmsg contains "CEF:" or $rawmsg contains "ASA-" then @@127.0.0.1:25226
Reinicio del demonio de Syslog y el agente de Log Analytics:
Reinicia el demonio de rsyslog.
service rsyslog restart
Reinicia el agente de Log Analytics.
/opt/microsoft/omsagent/bin/service_control restart [workspaceID]
Comprobación de la asignación del campo Equipo tal como se esperaba:
Asegúrese de que el campo Equipo del origen de syslog se haya asignado correctamente en el agente de Log Analytics, mediante el siguiente comando:
grep -i "'Host' => record\['host'\]" /opt/microsoft/omsagent/plugin/filter_syslog_security.rb
Si hay un problema con el mapeo, el script generará un mensaje de error indicándole que ejecute manualmente el siguiente comando (aplicando el ID del área de trabajo en lugar del marcador de posición). El comando garantizará que la asignación se realice correctamente y reiniciará el agente.
sudo sed -i -e "/'Severity' => tags\[tags.size - 1\]/ a \ \t 'Host' => record['host']" -e "s/'Severity' => tags\[tags.size - 1\]/&,/" /opt/microsoft/omsagent/plugin/filter_syslog_security.rb && sudo /opt/microsoft/omsagent/bin/service_control restart [workspaceID]
Pasos siguientes
En este documento, ha aprendido a implementar el agente de Log Analytics para conectar dispositivos CEF a Microsoft Sentinel. Para más información sobre Microsoft Sentinel, consulte los siguientes artículos:
- Obtenga información sobre la asignación de campos de CEF y CommonSecurityLog.
- Aprenda a obtener visibilidad de los datos y de posibles amenazas.
- Empiece a detectar amenazas con Microsoft Sentinel.