# Integración con un SIEM

> Recibe los eventos de Ironchip en tu SIEM: Ironchip los envía por HTTPS en JSON y rsyslog los recibe y los reenvía por syslog a QRadar, Splunk, Sentinel u otro.

URL: https://docs.ironchip.com/identidad/administracion/integracion-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.

## Cómo funciona

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](https://docs.ironchip.com/identidad/administracion/itdr/). Consulta [Enterprise y Premium](https://docs.ironchip.com/faq/#qu%C3%A9-diferencia-hay-entre-las-capas-enterprise-y-premium-en-la-integraci%C3%B3n-con-un-siem).

## Activarla

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.

## Recibir los eventos con rsyslog

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`:

   ```ini title="/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:

   ```nginx title="/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:

   ```bash
   sudo systemctl restart rsyslog nginx
   ```

5. Comprueba que recibe y reenvía, con un evento de prueba:

   ```bash
   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:

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

:::tip[Reenvío cifrado al SIEM]
Si tu SIEM acepta syslog por TLS (normalmente en el puerto 6514), configura `omfwd` con `StreamDriver="gtls"` y `StreamDriverMode="1"` y usa ese puerto. Consulta la documentación de rsyslog sobre TLS.
:::

`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.

## En tu SIEM

- 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.

## Problemas frecuentes

| 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.                                 |

## Más información

- [Exportación de eventos del ITDR](https://docs.ironchip.com/identidad/administracion/exportacion-de-eventos/): exportar eventos a un archivo desde la consola.
- [Actividad y métricas](https://docs.ironchip.com/identidad/administracion/monitorizacion/)
