Arquitectura de Red en Zabbix: Puertos, Protocolos y Flujos de Comunicación

La arquitectura de red y el flujo de comunicaciones en Zabbix definen la topología mediante la cual se transportan las métricas, eventos y comandos entre los componentes del ecosistema (Zabbix Server, Zabbix Proxies, Zabbix Agents, Frontend Web y Database Storage). Utilizando principalmente los puertos estándar TCP 10050 para comprobaciones pasivas (sondeo estilo pull) y TCP 10051 para ingesta activa (envío estilo push), Zabbix empaqueta la telemetría en tramas serializadas sobre TCP con encabezados personalizados de 13 bytes o estructuras JSON delimitadas. Este flujo de datos se asegura mediante cifrado TLS v1.2/v1.3 con certificados X.509 o claves precompartidas (PSK), permitiendo el monitoreo seguro de infraestructuras híbridas, cruce de fronteras de red restrictivas (NAT/Firewalls) y la interoperabilidad con protocolos sin agente como SNMP (UDP 161/162), IPMI (UDP 623) y HTTP/REST API (TCP 80/443).

Topología General de Red y Canales de Comunicación

La comunicación en un entorno Zabbix de nivel empresarial no ocurre de forma monolítica. Se organiza en canales de datos diferenciados según el rol del componente de origen y el de destino. Establecer una matriz de red precisa es el primer paso para diseñar una infraestructura resiliente y segura.

Clasificación de los Flujos de Tráfico

Los flujos de red dentro del ecosistema Zabbix se dividen en tres categorías principales basadas en la dirección de la sesión TCP/UDP:

  • Tráfico Inbound de Ingesta (Push Model): Conexiones iniciadas desde clientes externos, agentes activos o proxies hacia el Zabbix Server o Proxy. Todo este tráfico converge hacia el puerto listening predeterminado TCP 10051.
  • Tráfico Outbound de Sondeo (Pull Model): Conexiones iniciadas por el Zabbix Server o Proxy hacia agentes pasivos (puerto TCP 10050), interfaces SNMP (UDP 161), interfaces IPMI (UDP 623) o endpoints HTTP/HTTPS (puertos TCP 80/443).
  • Tráfico de Gestión e Interfaz (Management & DB): Conexiones internas de la plataforma que vinculan el Frontend Web con la base de datos relacional y con el demonio del Server mediante sockets API o conexiones de base de datos directas.

Direccionalidad y Mapeo de Puertos Estándar

Para simplificar el diseño de reglas de seguridad en firewalls perimetrales e internos, la siguiente matriz detalla la totalidad de puertos y protocolos utilizados por la plataforma:

Componente OrigenComponente DestinoPuerto / ProtocoloModo de OperaciónDescripción del Flujo de Datos
Zabbix Server / ProxyZabbix Agent / Agent 210050 / TCPPasivo (Pull)El Server/Proxy solicita una métrica específica al Agente y espera la respuesta.
Zabbix Agent / Agent 2Zabbix Server / Proxy10051 / TCPActivo (Push)El Agente consulta su lista de ítems y envía paquetes de telemetría procesados.
Zabbix Proxy (Activo)Zabbix Server10051 / TCPProxy ActivoEl Proxy descarga configuración y retransmite datos históricos acumulados.
Zabbix ServerZabbix Proxy (Pasivo)10051 / TCPProxy PasivoEl Server se conecta al Proxy para solicitar la pila de métricas recolectadas.
Zabbix Sender / WebhookZabbix Server / Proxy10051 / TCPTrapper / IngestaInyección directa de métricas arbitrarias o datos de eventos desde scripts/APIs.
Zabbix Server / ProxyDispositivo de Red161 / UDPSNMP PollerConsultas de lectura SNMP (Get/GetNext/Walk) v1, v2c y v3.
Dispositivo de RedSNMP Trap Receiver162 / UDPSNMP TrapNotificaciones asíncronas de eventos enviadas desde switches/routers.
Zabbix Server / ProxyControlador BMC / IPMI623 / UDPIPMI PollerMonitoreo out-of-band de hardware (temperatura, fuentes, ventiladores).
Navegador del AdministradorZabbix Web Frontend80, 443 / TCPHTTP / HTTPSAcceso a la consola de administración visual y dashboards.
Frontend / Server / ProxyDatabase Storage5432 / 3306 / TCPSQL ClientConexiones nativas a PostgreSQL (5432) o MySQL/MariaDB (3306).

Protocolos de Transporte y Estructura de Tramas en Zabbix

Para garantizar una transmisión ligera y de alto rendimiento, Zabbix utiliza un protocolo de comunicación propietario montado sobre TCP. Comprender este formato a nivel de bytes es fundamental para depurar la red con analizadores de paquetes como Wireshark o tcpdump.

El Encabezado de Protocolo Zabbix (Header Protocol)

Todas las tramas enviadas entre el servidor, proxies y agentes (cuando no se usa JSON puro sobre HTTP) están compuestas por un encabezado estricto de 13 bytes seguido de un payload útil.

CONFIGURACIÓN DE CIFRADO TLS / PSK EN ZABBIX AGENT 2

-Habilita el cifrado para conexiones salientes (Agente Activo)
TLSConnect=psk

-Habilita el cifrado para conexiones entrantes (Agente Pasivo)
TLSAccept=psk

-Identificador único de la clave PSK (debe ser único en el Zabbix Server)
TLSPSKIdentity=PSK_WEB_PROD_01

-Ruta absoluta al archivo que contiene la clave secreta
TLSPSKFile=/etc/zabbix/zabbix_agent2.psk

Reiniciar el proceso

sudo systemctl restart zabbix-agent2

Procesos

# En el Zabbix Server / Proxy (debe escuchar en el puerto 10051)

sudo ss -tulpn | grep 10051

# En el Host Monitoreado con Agente (debe escuchar en el puerto 10050)

sudo ss -tulpn | grep 10050

# Ejecutar desde el Zabbix Server apuntando a la IP del Agente

zabbix_get -s 192.168.1.50 -p 10050 -k «agent.ping»

# Resultado esperado si la red y el agente están OK:

# 1


🔥Tendencia🔥


Notas interesantes


Lo más reciente