操作步骤
在以下指南中,我们假设 ClickHouse 已安装在标准的软件包路径中。所有示例均使用域名
product-test-server.clickhouse-dev.com。请根据实际情况替换为您的域名。- 确认您已有一条指向您的 server 的 DNS
A或AAAA记录。这可以使用 Linux 工具dig.来完成。例如,若使用 Cloudflare DNS server1.1.1.1,则product-test-server.clickhouse-dev.com的响应如下:
- 在服务器上开放 80 端口。该端口将用于通过 certbot 和 ACME 协议自动续订证书。对于 AWS,可通过修改实例关联的安全组 (Security Group) 来实现。
- 安装
certbot,例如使用apt
- 获取 SSL 证书
我们的服务器上没有运行 Web 服务器,因此请选择 (1),允许 Certbot 使用独立的临时 Web 服务器。
product-test-server.clickhouse-dev.com。
Let’s Encrypt 的政策是不为某些类型的域名签发证书,例如公共云提供商生成的域名 (如 AWS 的 *.compute.amazonaws.com 域名) 。这些域名被视为共享基础设施,出于安全和防滥用考虑会被禁止。
- 将证书复制到 ClickHouse 目录中。
chmod 400) ,以确保严格的文件安全性。这样,ClickHouse 服务器始终都能访问最新的 SSL 证书,无需手动干预,从而在保障安全性的同时尽可能降低运维开销。
- 在 clickhouse-server 中配置这些证书的使用。
- 重启 ClickHouse 服务器
- 验证 ClickHouse 能否通过 SSL 进行通信
product-test-server.clickhouse-dev.com 连接,请在你的环境中开放 9440 端口: