更新时间:2025-07-17 GMT+08:00
分享

使用HTTPS协议连接ClickHouse安全集群

HTTPS是HTTP协议的安全版本,通过在HTTP和TCP之间加入SSL/TLS加密层来保护数据传输安全。您可以通过HTTPS协议连接ClickHouse集群。

使用限制

  • 关闭https会给企业服务带来风险。
  • 创建集群开启https选项,后续无法关闭。
  • 创建集群未开启https选项,后续无法开启。
  • 在详情页面开启安全通道后,集群会重启。
  • 安全通道和非安全通道同时开启后无法关闭。

打开安全通道

  1. 登录表格存储服务管理控制台。
  2. 控制台左上角选择区域。
  3. 进入集群管理页面单击右上角的购买集群按钮,进入“购买集群”页面。
  4. 完成其他配置后,查看安全通道加密按钮是否开启,默认开启。

    也可在集群创建成功后在集群详情页打开安全和非安全通道按钮,此时安全通道和非安全通道同时开启。
    图1 安全通道

  5. 配置好参数,单击“立即购买”。
  6. 进入“规格详情”页面,确认集群规格订单信息,单击“提交”,成功提交集群创建任务,集群创建成功后,进入详情页面查看通道开启状态。

下载安全证书并连接ClickHouse安全集群

  1. ClickHouse安全集群创建成功后,在集群管理页面,单击“集群名称 > 详情”。
  2. 进入集群详情页下载证书,单击集群信息模块“通道状态”最右侧的“下载证书”。
  3. 使用SSH登录工具,通过弹性IP远程登录到Linux弹性云服务器。

    具体登录操作步骤请参见《弹性云服务器用户指南》中的“ SSH密码方式登录”。

  4. 自定义证书路径,并修改以下配置文件的证书路径,保存后将配置文件放在root路径下。

    • <caConfig>/etc/ssl/certificate.crt</caConfig>指存放证书的路径。
    • 证书下载限流,一分钟只能下载一次。
    <config>
        <secure>true</secure>
        <openSSL>
          <client>
            <caConfig>/etc/ssl/certificate.crt</caConfig>
          </client>
        </openSSL>
    </config>

  5. 连接ClickHouse安全集群。

    通过curl命令连接集群。
    echo 'select 1' | curl -H 'X-ClickHouse-User: user' -H 'X-ClickHouse-Key: password' --cacert /clickhouse/client/client/bin/certificate.crt 'https://host:port/?' --data-binary @-
    表1 参数描述

    参数

    描述

    select 1

    执行的sql语句。

    user

    连接集群的用户名。

    password

    创集群时创建的密码。

    /clickhouse/client/client/bin/certificate.crt

    指证书存放路径。

    host、port

    host指的是内网地址,port指的是https协议端口。

相关文档