Wazuh 是一款免费、开源且企业级的安全监控解决方案,用于威胁检测、完整性监控、事件响应和合规性管理。本 Docker 镜像封装了 Wazuh Agent,并集成了自动注册功能,可无缝对接 Wazuh 服务器。该实现不仅可作为独立 Docker 容器运行,还能部署为 Kubernetes DaemonSet,适用于多种环境的安全监控需求。
本软件由版权持有人及贡献者按"原样"提供,不承担任何明示或暗示的担保,包括但不限于适销性和特定用途适用性的默示担保。在任何情况下,版权持有人或贡献者均不对任何直接、间接、偶然、特殊、惩戒性或后果性损害(包括但不限于替代商品或服务的采购;使用、数据或利润损失;或业务中断)承担责任,无论其成因及责任理论如何(无论是合同责任、严格责任还是侵权责任,包括过失或其他),即使已被告知此类损害的可能性。
| GitHub 分支/标签 | Wazuh Agent 版本 | Docker 镜像标签 |
|---|---|---|
| main | v4.3.10 | latest |
| v4.7.1-1 | v4.7.1-1 | 4.7.1 |
| v4.6.0-1 | v4.6.0-1 | 4.6.0 |
| v4.5.4-1 | v4.5.4-1 | 4.5.4 |
| v4.4.5-1 | v4.4.5-1 | 4.4.5 |
| 仓库名称 | 描述 | 拉取命令 |
|---|---|---|
| https://hub.docker.com/r/opennix/wazuh-agent | 基于 Minideb 的 Wazuh Agent | docker pull opennix/wazuh-agent |
| https://hub.docker.com/r/opennix/wazuh-agent-amazonlinux | 基于 Amazon Linux 2023.3.20231218.0 的 Wazuh Agent | docker pull opennix/wazuh-agent-amazonlinux |
| https://hub.docker.com/r/opennix/wazuh-agent-ubuntu | 基于 Ubuntu 24.04 的 Wazuh Agent | docker pull opennix/wazuh-agent-ubuntu |
register_agent.py: 用于 Docker 代理的自动注册脚本cleanup_agents.py: 清理超过 N 天未连接或从未连接的代理脚本deregister_agent.py: 代理注销脚本| 名称 | 类型 | 描述 | 默认值 | 是否必填 |
|---|---|---|---|---|
JOIN_MANAGER_PROTOCOL | string | Wazuh REST API 连接协议(http 或 https) | https | 是 |
JOIN_MANAGER_MASTER_HOST | string | Wazuh 服务器的 IP 地址或域名(用于 REST API 调用) | None | 是 |
JOIN_MANAGER_WORKER_HOST | string | Wazuh 工作节点的 IP 地址或域名(用于代理连接),若为单机部署则与 JOIN_MANAGER_MASTER_HOST 相同 | None | 是 |
JOIN_MANAGER_USER | string | Wazuh API 认证用户名 | None | 是 |
JOIN_MANAGER_PASSWORD | string | Wazuh API 认证密码 | None | 是 |
JOIN_MANAGER_API_PORT | string | Wazuh API 监听端口 | 55000 | 是 |
JOIN_MANAGER_PORT | string | Wazuh 服务器与代理通信的端口 | 1514 | 是 |
NODE_NAME | string | 节点名称,若未指定则使用系统环境变量 HOSTNAME | None | 否 |
VIRUS_TOTAL_KEY | string | VirusTotal 集成的 API 密钥 | None | 否 |
WAZUH_GROUPS | string | 代理自动加入的组名称(多个组用逗号分隔) | default | 否 |
WAZUH_WAIT_TIME | string | 等待时间(秒) | 10 | 否 |
最简运行命令
shelldocker run --rm opennix/wazuh-agent:latest
高级用法示例
bashdocker run -d --name wazuh-agent \ -v /:/rootfs:ro \ --net host \ --hostname ${HOSTNAME} \ -e JOIN_MANAGER_MASTER_HOST=172.17.0.1 \ -e JOIN_MANAGER_WORKER_HOST=172.17.0.1 \ -e JOIN_MANAGER_USER=user \ -e JOIN_MANAGER_PASSWORD=test123 \ -e JOIN_MANAGER_API_PORT=55000 \ -e JOIN_MANAGER_PORT=1514 \ -e WAZUH_GROUPS=default,linux \ -v /etc/os-release:/etc/os-release \ -v /var/run/docker.sock:/var/run/docker.sock \ opennix/wazuh-agent:latest
生成证书
shelldocker compose -f tests/single-node/generate-indexer-certs.yml run --rm generator
启动服务(单节点 Wazuh 集群 + 3 个代理)
shelldocker compose up -d
shellmake help # 查看帮助信息 make build-minideb # 构建基于 Minideb 的 Wazuh Agent 镜像 make build-amazon-linux # 构建基于 Amazon Linux 的 Wazuh Agent 镜像 make build-ubuntu # 构建基于 Ubuntu 的 Wazuh Agent 镜像 make docker-run # 运行基于 Minideb 的 Wazuh Agent 容器 make docker-push-minideb # 推送 Minideb 基础镜像到仓库 make docker-push-amazon-linux # 推送 Amazon Linux 基础镜像到仓库 make docker-push-ubuntu # 推送 Ubuntu 基础镜像到仓库 make run-local # 启动包含所有代理的 docker-compose 栈
配置环境变量
在 wazuh-daemon-sets.yaml 中设置环境变量,示例:
yamlenv: - name: JOIN_MANAGER_MASTER_HOST value: "wazuh.wazuh.svc.cluster.local" - name: JOIN_MANAGER_WORKER_HOST value: "wazuh-workers.wazuh.svc.cluster.local" - name: JOIN_MANAGER_PROTOCOL value: "https" - name: NODE_NAME valueFrom: fieldRef: fieldPath: spec.nodeName - name: JOIN_MANAGER_USER valueFrom: secretKeyRef: name: wazuh-api-cred key: username - name: JOIN_MANAGER_PASSWORD valueFrom: secretKeyRef: name: wazuh-api-cred key: password - name: JOIN_MANAGER_API_PORT value: "55000" - name: JOIN_MANAGER_PORT value: "1514"
部署 DaemonSet
shellkubectl apply -f wazuh-daemon-sets.yaml
(将部署到 wazuh 命名空间)
bashdocker build . -t wazuh-agent:latest
bashdocker build -f images/Dockerfile.amazonlinux . -t wazuh-agent:latest
bashdocker build -f images/Dockerfile.ubuntu . -t wazuh-agent:latest
通过 --build-arg AGENT_VERSION 指定版本,示例:
shelldocker build . -t wazuh-agent:4.4.5-1 --build-arg AGENT_VERSION=4.4.5-1
JOIN_MANAGER_PASSWORD)建议通过 Kubernetes Secrets 或 Docker Secrets 管理。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务