Wazuh Docker 部署
用途
您可以将 Wazuh 部署为单节点或多节点堆栈:
- 单节点部署:部署一个 Wazuh 管理节点、索引节点和仪表盘节点。
- 多节点部署:部署两个 Wazuh 管理节点(一个主节点和一个工作节点)、三个 Wazuh 索引节点和一个 Wazuh 仪表盘节点。
两种部署都支持数据持久化,并允许配置证书以保障节点间通信安全。多节点堆栈 提供高可用性。
单节点部署
- 进入 single-node 目录,在该目录中执行以下操作。
- 为每个集群节点提供证书,以便安全通信。提供证书有两种方法:
克隆 Wazuh 仓库至您的系统:
git clone https://github.com/wazuh/wazuh-docker.git -b v4.9.2
方法一:生成自签名证书
Wazuh 提供一个 Docker 镜像来自动生成证书。
执行以下命令生成证书:
docker-compose -f generate-indexer-certs.yml run --rm generator
证书将保存至 config/wazuh_indexer_ssl_certs
目录中。
完整示例:
# Wazuh App 版权所有 (C) 2017 Wazuh Inc. (GPLv2 许可)
version: '3'
services:
generator:
image: wazuh/wazuh-certs-generator:0.0.2
hostname: wazuh-certs-generator
volumes:
- ./config/wazuh_indexer_ssl_certs/:/certificates/
- ./config/certs.yml:/config/certs.yml
environment:
- HTTP_PROXY=您的代理地址或 DNS
如果您的系统使用代理,请在 generate-indexer-certs.yml
文件中添加以下内容:
environment:
- HTTP_PROXY=您的代理地址或 DNS
方法二:提供自有证书
如果您已有证书,将其放置到以下路径:
Wazuh 仪表盘:
config/wazuh_indexer_ssl_certs/wazuh.dashboard.pem
config/wazuh_indexer_ssl_certs/wazuh.dashboard-key.pem
config/wazuh_indexer_ssl_certs/root-ca.pem
Wazuh 管理节点:
config/wazuh_indexer_ssl_certs/root-ca-manager.pem
config/wazuh_indexer_ssl_certs/wazuh.manager.pem
config/wazuh_indexer_ssl_certs/wazuh.manager-key.pem
Wazuh 索引节点:
config/wazuh_indexer_ssl_certs/root-ca.pem
config/wazuh_indexer_ssl_certs/wazuh.indexer-key.pem
config/wazuh_indexer_ssl_certs/wazuh.indexer.pem
config/wazuh_indexer_ssl_certs/admin.pem
config/wazuh_indexer_ssl_certs/admin-key.pem
- 启动 Wazuh 单节点部署:
- 用户名:
admin
- 密码:
SecretPassword
- 用户名:
Wazuh 仪表盘默认用户名和密码:
为提高安全性,您可以更改 Wazuh 索引节点的默认密码。
后台运行:
docker-compose up -d
前台运行:
docker-compose up
注意
Wazuh 仪表盘容器在启动时通过多次调用 Wazuh 索引 API 查询是否就绪。您可能会看到多个以下消息,属于正常现象:
- "Failed to connect to Wazuh indexer port 9200"
- "Wazuh dashboard server is not ready yet"
索引节点启动大约需要 1 分钟,完成后设置过程将自动继续。
多节点部署
- 进入 multi-node 目录,执行以下步骤。
- 为每个集群节点生成或提供证书(操作方法与单节点相同)。
- 启动 Wazuh 多节点部署:
- Wazuh 仪表盘默认用户名和密码:
- 用户名:
admin
- 密码:
SecretPassword
- 用户名:
后台运行:
docker-compose up -d
前台运行:
docker-compose up
克隆 Wazuh 仓库至您的系统:
git clone https://github.com/wazuh/wazuh-docker.git -b v4.9.2
构建本地 Docker 镜像
- 构建镜像:
对于 4.3.5 及以上版本:
build-docker-images/build-images.sh
对于 4.3.4 及以前版本:
docker-compose build
克隆 Wazuh 仓库:
git clone https://github.com/wazuh/wazuh-docker.git -b v4.9.2
更改 Wazuh 用户密码
分两步更改:
- 更新配置文件:
在 docker-compose.yml
文件中更新对应的旧密码:
services:
wazuh.manager:
environment:
- INDEXER_PASSWORD=新密码
wazuh.dashboard:
environment:
- DASHBOARD_PASSWORD=新密码
打开 config/wazuh_indexer/internal_users.yml
文件,替换相应用户的哈希:
admin:
hash: "新生成的哈希值"
kibanaserver:
hash: "新生成的哈希值"
生成新密码的哈希值:
docker run --rm -ti wazuh/wazuh-indexer:4.9.2 bash /usr/share/wazuh-indexer/plugins/opensearch-security/tools/hash.sh
输入新密码并复制生成的哈希。
停止部署堆栈:
docker-compose down
结束
现在,您已经完成了 Wazuh Docker 单节点或多节点部署的设置及密码更改配置!