Background
Wazuh Syslog rsyslog Agentless SIEM Redes Ciberseguridad

Configurar Equipos sin Agente en Wazuh con Syslog (1/2)

Aprende a monitorizar routers, switches y dispositivos sin agente usando rsyslog como collector. Instalación, configuración TCP/UDP, reglas iptables y envío a Wazuh.

AI Security
12 min lectura
Background

Introducción

En esta guía te enseño cómo monitorizar equipos que no pueden tener un agente Wazuh instalado (routers, switches, firewalls, impresoras de red, etc.). La solución es configurar un servidor Linux como Syslog Collector que recibe los logs y los envía automáticamente a Wazuh.

Video: Configurar Equipos sin Agente en Wazuh
Contenido del curso

Video: Equipos sin Agente

12 minutos - rsyslog, iptables y configuración

Ver en el Curso Wazuh

Accede al video completo con el curso de Wazuh

¿Qué son los equipos sin agente (Agentless)?

No todos los dispositivos pueden tener un agente Wazuh instalado. Ejemplos típicos:

  • Routers (Cisco, MikroTik, etc.)
  • Switches gestionables
  • Firewalls (pfSense, FortiGate, etc.)
  • Impresoras de red
  • Dispositivos IoT
  • Sistemas legacy que no soportan agentes

La solución es usar el protocolo Syslog: estos dispositivos envían sus logs a un servidor Linux que actúa como collector, y ese servidor (con agente Wazuh) los reenvía al SIEM.

Arquitectura de la solución

┌─────────────────────┐     ┌─────────────────────┐     ┌─────────────────┐
│  Equipos sin agente │     │  Linux con rsyslog  │     │   Wazuh Server  │
│  (routers, switches)│────▶│  (Syslog Collector) │────▶│   (SIEM)        │
│                     │ 514 │  + Agente Wazuh     │     │                 │
└─────────────────────┘     └─────────────────────┘     └─────────────────┘
                                     │
                            /var/log/syslog

1. Instalar rsyslog

En el servidor Linux que actuará como Syslog Collector:

# Debian/Ubuntu
apt update && apt install rsyslog -y

# RHEL/CentOS/Rocky Linux
dnf install rsyslog -y

2. Configurar rsyslog para escuchar por TCP y UDP

Edita el archivo de configuración principal:

nano /etc/rsyslog.conf

Busca las siguientes líneas que están comentadas (con # al inicio) y descoméntalas quitando el #:

Para recibir por UDP (puerto 514):

# Antes (comentado):
#module(load="imudp")
#input(type="imudp" port="514")

# Después (descomentado):
module(load="imudp")
input(type="imudp" port="514")

Para recibir por TCP (puerto 514):

# Antes (comentado):
#module(load="imtcp")
#input(type="imtcp" port="514")

# Después (descomentado):
module(load="imtcp")
input(type="imtcp" port="514")

Nota: La mayoría de dispositivos de red usan UDP por defecto. TCP es más fiable pero no todos los dispositivos lo soportan. Habilita ambos para mayor compatibilidad.

3. Reiniciar y habilitar rsyslog

# Reiniciar el servicio para aplicar cambios
systemctl restart rsyslog

# Habilitar en el arranque del sistema
systemctl enable rsyslog

# Verificar que está funcionando
systemctl status rsyslog

Verifica que rsyslog está escuchando en el puerto 514:

# Ver puertos UDP en escucha
ss -ulnp | grep 514

# Ver puertos TCP en escucha
ss -tlnp | grep 514

4. Configurar firewall (iptables)

Por seguridad, permite conexiones al puerto 514 solo desde los equipos autorizados:

Permitir desde equipos específicos:

# Permitir desde el router (ej: 192.168.1.1)
iptables -A INPUT -p udp -s 192.168.1.1 --dport 514 -j ACCEPT
iptables -A INPUT -p tcp -s 192.168.1.1 --dport 514 -j ACCEPT

# Permitir desde el switch (ej: 192.168.1.2)
iptables -A INPUT -p udp -s 192.168.1.2 --dport 514 -j ACCEPT
iptables -A INPUT -p tcp -s 192.168.1.2 --dport 514 -j ACCEPT

# Permitir desde el firewall (ej: 192.168.1.254)
iptables -A INPUT -p udp -s 192.168.1.254 --dport 514 -j ACCEPT
iptables -A INPUT -p tcp -s 192.168.1.254 --dport 514 -j ACCEPT

Permitir desde una red completa:

# Permitir toda la red 192.168.1.0/24
iptables -A INPUT -p udp -s 192.168.1.0/24 --dport 514 -j ACCEPT
iptables -A INPUT -p tcp -s 192.168.1.0/24 --dport 514 -j ACCEPT

Bloquear el resto de conexiones al puerto 514:

# Denegar cualquier otra conexión al puerto 514
iptables -A INPUT -p udp --dport 514 -j DROP
iptables -A INPUT -p tcp --dport 514 -j DROP

Guardar las reglas de forma permanente:

# Debian/Ubuntu
apt install iptables-persistent -y
netfilter-persistent save

# RHEL/CentOS/Rocky
service iptables save

5. Configurar los equipos para enviar logs

Cada dispositivo debe configurarse para enviar sus logs al servidor rsyslog.

Router Cisco:

logging host 192.168.1.100
logging trap informational
logging facility local7

Switch MikroTik:

/system logging action
add name=remote remote=192.168.1.100 remote-port=514 target=remote

/system logging
add action=remote topics=info

Firewall pfSense:

Status → System Logs → Settings → Remote Logging Options:

  • Enable Remote Logging: ✓
  • Remote log servers: 192.168.1.100:514

Otro equipo Linux:

# Editar /etc/rsyslog.conf y añadir al final:

# Enviar por UDP (una @)
*.* @192.168.1.100:514

# Enviar por TCP (dos @@)
*.* @@192.168.1.100:514

6. Cómo llegan los logs a Wazuh

Esta es la parte más sencilla: no hay que configurar nada adicional.

Flujo automático:

  1. Los equipos envían logs al puerto 514 del servidor rsyslog
  2. rsyslog escribe estos logs en /var/log/syslog
  3. El agente Wazuh ya monitoriza /var/log/syslog por defecto
  4. Los logs se envían automáticamente al servidor Wazuh

Puedes verificar que el agente está monitorizando el syslog mirando su configuración:

cat /var/ossec/etc/ossec.conf | grep -A2 "syslog"

7. Verificar que funciona

# Ver logs recibidos en tiempo real
tail -f /var/log/syslog

# Verificar que rsyslog escucha en el puerto 514
ss -ulnp | grep 514
ss -tlnp | grep 514

# Ver reglas de iptables aplicadas
iptables -L -n | grep 514

Recursos adicionales


Artículos relacionados:


Aprende Wazuh de forma práctica

Este artículo es parte del contenido del curso. Aprende a configurar syslog, crear reglas personalizadas, integrar con otras herramientas y mucho más.

Background