本页不适用于 ClickHouse Cloud。本文所述流程在 ClickHouse Cloud 服务中已实现自动化。
概述
acme 块:
HTTP-01 质询请求 (有关质询类型的更多信息,请参见此处) 。验证完成并签发证书后,HTTPS 端口会使用获取到的证书提供加密流量。
HTTP 端口在服务器本身上不必一定是 80;可以使用 nftables 或类似工具重新映射。请查阅你的 ACME 提供商文档,确认 HTTP-01 质询接受哪些端口。
在 acme 块中,我们定义了用于创建账户的 email,并接受 ACME 服务的服务条款。
之后,唯一还需要的就是一个域名列表。
当前限制
- 仅支持
HTTP-01质询类型。 - 仅支持
RSA 2048密钥。 - 暂不处理速率限制。
配置参数
acme 部分中可用的配置选项:
| 参数 | 默认值 | 说明 |
|---|---|---|
zookeeper_path | /clickhouse/acme | 用于存储 ACME 账户数据、证书以及 ClickHouse 节点之间协调状态的 ZooKeeper 路径。 |
directory_url | https://acme-v02.api.letsencrypt.org/directory | 用于签发证书的 ACME 目录端点。默认为 Let’s Encrypt 生产环境服务器。 |
email | 用于创建和管理 ACME 账户的电子邮件地址。ACME 提供商可能会通过该地址发送到期通知和重要更新。 | |
terms_of_service_agreed | false | 表示是否接受 ACME 提供商的服务条款。必须将其设置为 true 才能启用 ACME。 |
domains | 需要签发 TLS 证书的域名列表。每个域名都指定为一个 <domain> 条目。 | |
refresh_certificates_before | 2592000 (一个月,以秒为单位) | 距离证书到期还有这段时间时,ClickHouse 将尝试续订证书。 |
refresh_certificates_task_interval | 3600 (一小时,以秒为单位) | ClickHouse 检查证书是否需要续订的时间间隔。 |
管理
初始部署
Keeper 数据结构
从其他 ACME 客户端迁移
RSA 2048 私钥。
假设我们从 certbot 迁移,并使用 /etc/letsencrypt/live 目录,则可以使用以下这组命令: