Seguridad de red · 7 min read · Sep 12, 2025
Cómo instalar la herramienta de monitoreo de seguridad de red Zeek en Ubuntu 24.04

Zeek (anteriormente Bro) es una plataforma gratuita y de código abierto para el monitoreo de seguridad de red. Es un poderoso analizador de tráfico de red pasivo que investiga actividades sospechosas o maliciosas. Zeek puede ser utilizado como un monitor de seguridad de red (NSM) y soporta una amplia gama de análisis de tráfico, desde el dominio de seguridad hasta la medición de rendimiento y solución de problemas.
En este tutorial, aprenderás cómo instalar la herramienta de monitoreo de seguridad de red Zeek en el servidor Ubuntu 24.04. También aprenderás cómo ejecutar Zeek en modo clúster, cómo analizar los registros de Zeek con el comando ‘zeek-cut’ y cómo generar y analizar el registro JSON de Zeek con la utilidad ‘jq’.
Prerrequisitos
Antes de comenzar, asegúrate de tener lo siguiente:
- Un servidor Ubuntu 24.04
- Un usuario no root con privilegios de administrador
Instalando Zeek
Zeek es una herramienta de monitoreo de seguridad de red para sistemas operativos similares a Unix. Se puede instalar utilizando múltiples métodos. En este ejemplo, instalarás Zeek en el servidor Ubuntu 24.04 con el gestor de paquetes APT del servicio de construcción de OpenSUSE.
Primero, ejecuta el siguiente comando para agregar el repositorio de Zeek a tu sistema Ubuntu.
echo 'deb http://download.opensuse.org/repositories/security:/zeek/xUbuntu_24.04/ /' | sudo tee /etc/apt/sources.list.d/security:zeek.listAhora descarga y agrega la clave GPG para el repositorio de Zeek con el siguiente comando.
curl -fsSL https://download.opensuse.org/repositories/security:zeek/xUbuntu_24.04/Release.key |
gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/security_zeek.gpg > /dev/nullUna vez que la clave GPG y el repositorio de Zeek estén agregados, ejecuta el comando ‘ apt ‘ a continuación para actualizar tu paquete de Ubuntu.
sudo apt updateAhora puedes ejecutar el comando ‘ apt ‘ a continuación para verificar el paquete ‘ zeek ‘. Verás múltiples versiones de Zeek.
sudo apt search zeek
sudo apt-cache policy zeek
A continuación, instala Zeek con el siguiente comando ‘ apt ‘. En este ejemplo, instalarás Zeek LTS.
sudo apt install zeekIngresa ‘ Y ‘ para confirmar la instalación.

Después de que la instalación haya finalizado, agrega el directorio ‘ /opt/zeek/bin ‘ a la variable PATH del sistema a través del archivo ‘ ~/.bashrc ‘. Luego recarga el archivo ‘ ~/.bashrc ‘ para aplicar tus nuevos cambios. Con esto, podrás ejecutar la línea de comandos de Zeek a través de tu terminal.
echo "export PATH=$PATH:/opt/zeek/bin" >> ~/.bashrc
source ~/.bashrcPor último, ejecuta el comando ‘ zeek ‘ a continuación para verificar la versión de Zeek y los comandos y opciones básicos.
zeek --version
zeek --helpVerás una salida como la siguiente:

Configurando Zeek
Después de que Zeek esté instalado, necesitas configurar cómo se ejecutará Zeek en tu infraestructura. Puedes elegir ejecutar Zeek en modo independiente o en modo clúster. Para implementaciones grandes, puedes usar el modo clúster, donde los componentes de Zeek se instalan en servidores separados. Para este propósito de prueba, configuraremos y ejecutaremos Zeek en modo clúster utilizando un solo servidor.
Verifica la dirección IP de tu servidor con el siguiente comando ‘ ip ‘. En este ejemplo, tenemos una dirección IP de servidor Ubuntu ‘ 192.168.10.60 ‘.
ip aAbre la configuración de red de Zeek ‘ /opt/zeek/etc/networks.cfg ‘ con el editor ‘ nano ‘.
sudo nano /opt/zeek/etc/networks.cfgIngresa tu subred de red de los servidores objetivo como el siguiente.
192.168.10.0/24 Red LocalGuarda el archivo y sal del editor cuando termines.
Ahora abre la configuración del nodo de Zeek ‘ /opt/zeek/etc/node.cfg ‘ usando ‘ nano ‘.
sudo nano /opt/zeek/etc/node.cfgComenta las siguientes líneas para deshabilitar el modo independiente de Zeek. Por defecto, Zeek se ejecuta en modo independiente con el ‘ localhost ‘ y la interfaz de red ‘ eth0 ‘.
#[zeek]
#type=standalone
#host=localhost
#interface=eth0Pega la siguiente configuración para ejecutar Zeek en modo clúster dentro de un solo servidor. Asegúrate de cambiar la dirección IP por la dirección IP de tu servidor Ubuntu. Como puedes ver a continuación, el modo clúster de Zeek tendrá múltiples componentes como logger, manager, proxy y workers.
# logger
[zeek-logger]
type=logger
host=192.168.10.60
# manager
[zeek-manager]
type=manager
host=192.168.10.60
# proxy
[zeek-proxy]
type=proxy
host=192.168.10.60
# worker
[zeek-worker]
type=worker
host=192.168.10.60
interface=eth0
# worker localhost
[zeek-worker-lo]
type=worker
host=localhost
interface=loCuando termines, guarda el archivo y sal del editor.
A continuación, ejecuta el comando ‘ zeekctl ‘ a continuación para verificar la sintaxis de Zeek. Si tienes una configuración adecuada, verás una salida ‘ scripts are ok ‘.
zeekctl check
Ahora ejecuta el comando ‘ deploy ‘ para implementar tu instalación de Zeek. Con esto, se iniciarán el logger, el manager, el proxy y los workers de Zeek.
zeekctl deploy
Puedes verificar cada componente de Zeek con el siguiente comando.
zeekctl statusEn la salida a continuación, puedes ver que cada componente de Zeek está en ejecución. Esto significa que la implementación del clúster de Zeek de un solo nodo ha sido exitosa.

Usando zeek-cut para analizar los registros de Zeek
Ahora que has instalado y desplegado Zeek, los archivos de registro de tu red se generarán en el directorio ‘ /opt/zeek/logs/current ‘. Habrá múltiples archivos de registro de Zeek que debes conocer y mantener bajo vigilancia. En esta sección, aprenderás cómo usar la utilidad ‘zeek-cut’ para generar registros en formato TSV (Tab Separated Value).
Verifica el directorio de registros de Zeek ‘ /opt/zeek/logs/current ‘ con el comando ‘ls’ a continuación.
ls -ah /opt/zeek/logs/current/Verás múltiples archivos de registro como:
- conn.log: El registro de conexión tanto para TCP como para UDP. Este archivo de registro proporciona la información más útil, como la marca de tiempo, la duración de la conexión, el servicio y muchos más.
- dns.log: El archivo de registro DNS (Domain Name System).
- http.log: El registro del Protocolo de Transferencia de Hipertexto (HTTP).
- ssh.log: El registro de Shell Seguro (SSH) para rastrear conexiones SSH.
- ssl.log: El registro de Capa de Conexión Segura (SSL) que también contiene el registro HTTPS.
Ahora muévete al directorio ‘ /opt/zeek/logs/current ‘ y puedes ejecutar el comando ‘ cat ‘ para mostrar los registros de Zeek y canalizar la salida con el comando ‘ zeek-cut ‘ para analizar la salida en formato TSV (Tab Separated Value).
cd /opt/zeek/logs/current/
cat dns.log | zeek-cut id.orig_h query answers
cat dns.log | zeek-cut query answers id.orig_hEn este ejemplo, te mostraremos valores de los campos ‘ id.orig_h ‘, ‘ query ‘ y ‘ answers ‘.

También puedes usar el comando ‘ zeek-cut ‘ de la siguiente manera para procesar los registros TSV y obtener una salida similar.
zeek-cut id.orig_h query answers < dns.log
Configurando la salida de Zeek a JSON
Zeek soporta múltiples formatos de registro, incluyendo TSV y JSON. En esta sección, aprenderás cómo generar un registro de Zeek en formato JSON. Luego, aprenderás cómo analizar registros JSON con la línea de comandos ‘jq’ para que puedas leer fácilmente tus registros.
Abre la configuración de Zeek ‘/opt/zeek/share/zeek/site/local.zeek’ con el siguiente editor ‘nano’.
sudo nano /opt/zeek/share/zeek/site/local.zeekDescomenta la siguiente línea para habilitar el registro de salida a JSON.
@load policy/tuning/json-logsGuarda el archivo y sal del editor.
Ahora ejecuta el comando ‘ zeekctl ‘ a continuación para aplicar y desplegar tus cambios. Y una vez que el proceso haya terminado, el formato de registro JSON será generado por Zeek.
zeekctl deployPuedes ver la siguiente salida durante la implementación de Zeek.

A continuación, ejecuta el comando ‘ cat ‘ a continuación para verificar el archivo de registro de Zeek. Verás que el registro de Zeek ahora está en formato JSON.
cat /opt/zeek/logs/current/dns.logAnalizando el formato JSON de Zeek con jq
Instala el paquete ‘ jq ‘ con el comando ‘apt’ a continuación.
sudo apt install jq -yUna vez que la instalación haya finalizado, ve al directorio ‘/opt/zeek/logs/current’ con el comando ‘cd’.
cd /opt/zeek/logs/current/Para analizar registros en formato JSON, ejecuta el comando ‘jq’ a continuación.
jq . dns.log
Si deseas tener una salida compacta, usa la opción ‘-c’ como la siguiente:
jq . -c dns.logPor último, también puedes especificar archivos de registros JSON con el comando ‘jq’ a continuación.
jq -c '[."id.orig_h", ."query", ."answers"]' dns.log
Conclusión
¡Felicidades! Has completado la instalación de la herramienta de monitoreo de red Zeek en el servidor Ubuntu 24.04. Has aprendido cómo desplegar Zeek en modo clúster en un solo nodo/servidor, analizar los registros de Zeek con la utilidad ‘ zeek-cut ‘ para generar formato TSV (Tab Separated Value), generar registros de Zeek en formato JSON y analizar registros JSON con la utilidad ‘jq’. A partir de aquí, puedes proceder al siguiente paso enviando tu registro JSON o registros de Zeek a un sistema de registro centralizado como Graylog y ELK/EFK Stack.
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.