Wazuh y Velociraptor
Esta VM aloja dos servicios: el Wazuh Manager (SIEM/EDR — recibe los eventos de los agentes, aplica reglas de detección y reenvía las alertas vía Filebeat/Kafka a Graylog, que las indexa en OpenSearch) y el servidor Velociraptor (DFIR — respuesta a incidentes sobre los endpoints).
| Parámetro | Valor |
|---|---|
| VM | 103 · wazuh-velociraptor |
| Redes | prod0 + log0 |
IP (prod0) | 172.17.33.101 |
| Acceso | Velociraptor GUI: https://172.17.33.101:8000/ |
| Otros puertos | Wazuh 1514 (eventos), 1515 (enrolamiento), 55000 (API) |
| Versión probada | Wazuh 4.10.3 · Velociraptor 0.73.3 |
| Depende de | OpenSearch en green; Graylog arrancado con el input Wazuh en RUNNING |
Wazuh no expone interfaz web en este despliegue: el manager se administra por SSH y sus eventos se consultan en Graylog y Grafana. La única interfaz gráfica de la VM es la de Velociraptor.
Arranque
Sección titulada «Arranque»qm start 103qm status 103ping -c 3 172.17.33.101Validación
Sección titulada «Validación»No basta con que la VM figure como running en Proxmox: estas comprobaciones confirman que el componente funciona correctamente y se comunica con el resto del entorno.
Servicios
Sección titulada «Servicios»rpm -q wazuh-manager filebeatsystemctl is-active wazuh-managersystemctl is-active filebeatsystemctl is-active velociraptor_serverComponentes y agentes de Wazuh
Sección titulada «Componentes y agentes de Wazuh»sudo /var/ossec/bin/wazuh-control statussudo /var/ossec/bin/agent_control -lReglas personalizadas
Sección titulada «Reglas personalizadas»sudo grep -nE 'rule id="100100"|rule id="100101"' /var/ossec/etc/rules/local_rules.xmlsudo /var/ossec/bin/wazuh-analysisd -tEl segundo comando debe terminar con código 0.
Filebeat (salida hacia Kafka/Graylog)
Sección titulada «Filebeat (salida hacia Kafka/Graylog)»sudo filebeat test outputEl parseo de host, la resolución DNS y la conexión deben devolver OK.
Velociraptor
Sección titulada «Velociraptor»velociraptor versionsystemctl status velociraptor_serversudo test -s /root/Velociraptor/config/client.config.yamlsudo stat /root/Velociraptor/config/client.config.yamlEl fichero client.config.yaml debe existir, no estar vacío y tener permisos restrictivos. No muestres ni copies su contenido en registros ni documentación: contiene el material criptográfico de enrolamiento de clientes.
Errores de arranque
Sección titulada «Errores de arranque»Aunque los tres servicios figuren activos, revisa si han registrado errores desde el arranque:
sudo journalctl -b -u wazuh-manager -u filebeat -u velociraptor_server -p err --no-pagerLa salida debe estar vacía. Si aparecen errores, investígalos antes de dar la VM por validada.
Flujo extremo a extremo
Sección titulada «Flujo extremo a extremo»Por último, confirma que un evento recorre la cadena completa Wazuh → Filebeat → Graylog → OpenSearch. Para provocar uno no necesitas agentes de laboratorio: el manager se monitoriza a sí mismo, así que basta un login SSH fallido contra la propia VM. Desde otra máquina:
ssh usuario-inexistente@172.17.33.101(escribe una contraseña cualquiera y falla el login un par de veces).
Después comprueba cada eslabón:
- En Graylog, busca el evento en el stream de Wazuh (aparecerá como
authentication_faileden pocos segundos). - Confirma que el input Wazuh sigue en
RUNNING. - En OpenSearch, verifica que el contador de documentos del índice Wazuh activo ha aumentado y que el clúster sigue en
green:
curl -sS 'http://172.17.33.113:9200/_cat/indices/wazuh*?v&h=index,docs.count'Configuración aplicada
Sección titulada «Configuración aplicada»Wazuh incluye un amplio conjunto de reglas de detección de serie; sobre ellas, el entorno SOCIA añade algunas reglas personalizadas propias del laboratorio (ya vienen aplicadas en el backup; se recogen para poder verificarlas o reconstruirlas). Se encuentran al final de /var/ossec/etc/rules/local_rules.xml, que es también el sitio donde ampliar la detección propia. Como ejemplo, estas dos detectan intentos de fuerza bruta:
<!-- Brute Force --><group name="authentication,brute_force,"> <!-- Brute force grouping for different protocols (ssh, ftp, etc.) --> <rule id="100100" level="10" frequency="8" timeframe="120"> <if_matched_group>authentication_failed</if_matched_group> <same_source_ip/> <description>Brute Force detected from $(srcip) via $(program_name)</description> <group>brute_force,</group> <options>no_full_log</options> </rule>
<!-- Persistent Brute Force --> <rule id="100101" level="15" frequency="8" timeframe="600"> <if_matched_group>brute_force</if_matched_group> <same_source_ip/> <description>Persistent Brute Force from $(srcip) via $(program_name)</description> <group>brute_force,brute_force_persistent,</group> <options>no_full_log</options> </rule></group>La regla 100101 (nivel 15) es una de las que dispara el escalado automático a TheHive vía Graylog (rule_level:[10 TO 15]).
Incorporar máquinas al laboratorio
Sección titulada «Incorporar máquinas al laboratorio»Cuando añadas nuevas VMs al laboratorio (máquinas vulnerables, equipos a monitorizar…), incorpóralas a la telemetría del SOC instalando en ellas el agente Wazuh y el cliente Velociraptor.
Agente Wazuh
Sección titulada «Agente Wazuh»Para instalar el agente en nuevas máquinas Linux, sigue la documentación oficial de Wazuh.
Tras instalarlo, comprueba que la nueva máquina aparece registrada en el manager:
/var/ossec/bin/agent_control -l
Cliente Velociraptor
Sección titulada «Cliente Velociraptor»Para conectar nuevos clientes al servidor Velociraptor se usa el fichero /root/Velociraptor/config/client.config.yaml, que debe distribuirse a cada máquina que se quiera incorporar. En Linux:
wget https://github.com/Velocidex/velociraptor/releases/download/v0.73/velociraptor-v0.73.3-linux-amd64chmod +x velociraptor-v0.73.3-linux-amd64./velociraptor-v0.73.3-linux-amd64 --config client.config.yaml debian clientsudo dpkg -i velociraptor_client_*.debsystemctl status velociraptor_clientCredenciales
Sección titulada «Credenciales»| Acceso | Usuario | Contraseña |
|---|---|---|
Consola/su | root | Root.Wazuh |
| SSH | lab | Lab.Wazuh |
| API Wazuh (55000) | wazuh | Wazuh.WazuhApi1! |
| API Wazuh (55000) | wazuh-wui | WazuhWui.WazuhApi1! |
| Velociraptor GUI (8000) | admin | Admin.Velociraptor |
| Velociraptor GUI (8000) | analista | Analista.Velociraptor |
Siguiente paso
Sección titulada «Siguiente paso»Continúa con Malcolm, el analizador de tráfico de red.