Ir al contenido

Integración con un SIEM

Esta página explica cómo llevar los eventos de tu compañía en Ironchip a tu SIEM: cómo los envía Ironchip y cómo recibirlos con rsyslog para reenviarlos por syslog. Es para quien administra la plataforma y el SIEM.

  1. Ironchip envía cada evento de tu compañía como un objeto JSON en una petición POST por HTTPS a una dirección tuya.
  2. En tu red, un rsyslog recibe esas peticiones con su módulo de entrada HTTP (imhttp).
  3. rsyslog reenvía cada evento por syslog a tu SIEM, que lo trata como cualquier otra fuente.

Si tu SIEM tiene su propio colector HTTP, puede recibir los eventos directamente, sin rsyslog.

La integración está disponible en las capas Enterprise y Premium. En Premium, además de los eventos de autenticación, el SIEM recibe las alertas del ITDR. Consulta Enterprise y Premium.

La activa el equipo de Ironchip para tu compañía. Pídela en Monitoring > SIEM integration o a tu contacto de Ironchip, con estos datos:

Dato Ejemplo Para qué
Dirección de recepción https://siem-relay.example.com:8443/ironchip Dónde envía Ironchip los eventos. Tiene que ser accesible desde internet.
Cabeceras Authorization: ApiKey <TOKEN> Con qué se identifica Ironchip ante tu receptor.
Eventos Autenticaciones y alertas del ITDR Qué eventos quieres recibir.

Usa un certificado TLS válido en la dirección de recepción y un token largo y aleatorio solo para esta integración.

Esta configuración de referencia recibe los eventos por HTTPS, comprueba el token y los reenvía por syslog a tu SIEM. Se ha probado con rsyslog 8.2610 (la imagen oficial rsyslog/rsyslog) detrás de nginx. Adáptala a tu entorno.

  • rsyslog necesita el módulo de entrada HTTP imhttp. Escucha solo en local, sin TLS.
  • Un proxy inverso (nginx en el ejemplo, o el balanceador que ya uses) termina HTTPS con tu certificado y pasa las peticiones a rsyslog.
  1. Guarda el token que acordaste con Ironchip en /etc/rsyslog/imhttp-apikeys, con permisos 600.

  2. Crea /etc/rsyslog.d/ironchip.conf:

    /etc/rsyslog.d/ironchip.conf
    # Recepción HTTP solo en local: el proxy inverso termina HTTPS delante
    module(load="imhttp" ports="127.0.0.1:8080")
    input(type="imhttp" endpoint="/ironchip" name="ironchip"
    ruleset="ironchip" apiKeyFile="/etc/rsyslog/imhttp-apikeys")
    # Syslog RFC 5424 con "ironchip" como aplicación; el mensaje es el JSON del evento
    template(name="IronchipRFC5424" type="string"
    string="<%PRI%>1 %TIMESTAMP:::date-rfc3339% %$myhostname% ironchip - - - %msg%\n")
    ruleset(name="ironchip") {
    action(type="omfwd" target="siem.example.com" port="514" protocol="tcp"
    template="IronchipRFC5424")
    }
  3. Publica la dirección por HTTPS en el proxy inverso. Con nginx:

    /etc/nginx/conf.d/ironchip-siem.conf
    server {
    listen 8443 ssl;
    server_name siem-relay.example.com;
    ssl_certificate /etc/nginx/tls/siem-relay.crt;
    ssl_certificate_key /etc/nginx/tls/siem-relay.key;
    location = /ironchip {
    proxy_pass http://127.0.0.1:8080;
    }
    }
  4. Reinicia los dos servicios:

    Ventana de terminal
    sudo systemctl restart rsyslog nginx
  5. Comprueba que recibe y reenvía, con un evento de prueba:

    Ventana de terminal
    curl -H 'Authorization: ApiKey <TOKEN>' \
    -d '{"type":"test","message":"prueba de Ironchip"}' \
    https://siem-relay.example.com:8443/ironchip

    La respuesta es 200 y a tu SIEM llega una línea como esta:

    <13>1 2026-10-29T17:56:04.134194+00:00 siem-relay ironchip - - - {"type":"test","message":"prueba de Ironchip"}

imhttp separa los mensajes por saltos de línea, y cada evento de Ironchip llega en una sola línea de JSON, así que cada evento es un mensaje. Sin el token correcto, rsyslog responde 401 y no reenvía nada.

  • Crea una fuente de syslog para el rsyslog receptor e identifica los eventos de Ironchip por la aplicación ironchip.
  • El contenido es JSON: usa el analizador JSON de tu SIEM para extraer sus campos (tipo de evento, usuario, aplicación, resultado, dirección IP…).
  • Algunos SIEM, como IBM QRadar, identifican la fuente por la dirección desde la que llega el syslog, no por su cabecera: en ese caso, todos los eventos de Ironchip llegan desde el rsyslog receptor.
Síntoma Qué hacer
La prueba con curl devuelve 401 El token de la cabecera no coincide con el de imhttp-apikeys.
La prueba con curl devuelve 502 rsyslog no escucha en 127.0.0.1:8080: revisa que cargue imhttp (journalctl -u rsyslog).
La prueba funciona pero no llega nada de Ironchip Comprueba que la dirección es accesible desde internet y que su certificado es válido.
Los eventos llegan pero el SIEM no los separa en campos Activa el análisis JSON del mensaje en la fuente de Ironchip.