1. Contexto
En entornos reales, los eventos no se quedan en archivos locales: se envían a un colector central mediante protocolos estándar. El más común es Syslog (UDP/TCP 514). En esta práctica se integrará el generador de eventos con un colector Syslog para simular un flujo real de ingestión hacia un SIEM.
2. Objetivo
Enviar eventos en formato Syslog + CEF desde MATLAB hacia un colector Syslog, validando la recepción en el servidor destino.
---3. Precondiciones
- Haber completado las prácticas 1 a 5.
- Contar con archivos de logs CEF generados.
- Tener acceso a un entorno Linux (local/VM).
- MATLAB (Online o Desktop). Para envío por sockets se recomienda Desktop o una VM con MATLAB Runtime/Octave compatible.
4. Arquitectura de la práctica
MATLAB (Generador) ---> Syslog (rsyslog) ---> Archivo de logs IP origen Puerto 514 (UDP/TCP)
5. Configuración del colector Syslog (Linux)
Paso 1: Instalar rsyslog
sudo apt update sudo apt install rsyslog -y
Paso 2: Habilitar recepción remota (UDP)
sudo nano /etc/rsyslog.conf
Descomentar o agregar:
module(load="imudp") input(type="imudp" port="514")
Paso 3: Definir archivo de salida
sudo nano /etc/rsyslog.d/mini-siem.conf
if $msg contains "MiniSIEM" then /var/log/mini_siem.log & stop
Paso 4: Reiniciar servicio
sudo systemctl restart rsyslog
Paso 5: Validar
sudo tail -f /var/log/mini_siem.log---
6. Envío de eventos desde MATLAB
Script: envio_syslog.m
function envio_syslog()
destino_ip = '192.168.1.100'; % Cambiar por IP del servidor
puerto = 514;
archivo = '../data/logs_auth_100.cef';
fid = fopen(archivo,'r');
if fid == -1
error('No se pudo abrir el archivo');
end
u = udpport("datagram","IPV4");
linea = fgetl(fid);
while ischar(linea)
write(u, uint8(linea), destino_ip, puerto);
pause(0.01); % Control de flujo
linea = fgetl(fid);
end
fclose(fid);
disp('Eventos enviados');
end
---
7. Ejecución
envio_syslog
Verifica en el servidor:
tail -f /var/log/mini_siem.log---
8. Resultado esperado
- Eventos visibles en el archivo del servidor.
- Formato Syslog + CEF intacto.
- Flujo continuo de eventos.
9. Validación
- Se reciben eventos en el servidor.
- No hay errores de conexión.
- Los eventos contienen "MiniSIEM".
10. Problemas comunes
- Puerto 514 bloqueado (firewall).
- IP incorrecta.
- rsyslog no reiniciado.
- Permisos insuficientes en /var/log.
11. Preguntas de reflexión
- ¿Por qué Syslog es un estándar en SIEM?
- ¿Qué ventajas tiene enviar eventos en tiempo real?
- ¿Qué riesgos existen al usar UDP?
- ¿Cómo asegurarías la transmisión?
- ¿Cómo escalarías este modelo a miles de dispositivos?
12. Tarea (Teams)
- Captura del servidor recibiendo logs.
- Captura del script ejecutándose.
- 5 eventos recibidos.
- Respuestas a preguntas.
- Conclusión sobre integración SIEM.
13. Cierre
En esta práctica se ha logrado integrar MATLAB con un flujo real de ingestión de eventos, replicando el comportamiento de fuentes que alimentan plataformas como:
:contentReference[oaicite:0]{index=0} :contentReference[oaicite:1]{index=1}
Con esto se completa un ciclo completo de laboratorio que simula un entorno real de monitoreo de seguridad.