4.4. 为 Beast 配置 SSL


您可以将 Beast 前端 web 服务器配置为使用 OpenSSL 库来提供传输层安全性(TLS)。若要将安全套接字层(SSL)与 Beast 搭配使用,您需要从与 Ceph 对象网关节点的主机名匹配的证书颁发机构(CA)获取证书。Beast 还需要 secret 密钥、服务器证书以及 single .pem 文件中的任何其他 CA。

重要

防止未经授权访问 .pem 文件,因为它包含 secret 密钥哈希。

重要

红帽建议从带有 Subject Alternative Name(SAN)字段的 CA 获取证书,以及用于 S3 样式子域的通配符。

重要

红帽建议仅将 SSL 与 Beast 前端 Web 服务器用于中小型测试环境。对于生产环境,您必须使用 HAProxy 和 keepalived 终止 HAProxy 上的 SSL 连接。

如果 Ceph 对象网关充当客户端和自定义证书,您可以在节点上导入自定义 CA,然后将 etc/pki 目录映射到容器,使用 Ceph 对象网关规格文件中的 extra_container_args 参数将它注入容器。

先决条件

  • 一个运行良好、健康的 Red Hat Ceph Storage 集群。
  • 安装 Ceph 对象网关软件包.
  • 安装 OpenSSL 软件包.
  • Ceph 对象网关节点的根级别访问权限.

流程

  1. 在当前目录中创建一个名为 rgw.yml 的新文件:

    示例

    [ceph: root@host01 /]# touch rgw.yml
    Copy to Clipboard Toggle word wrap

  2. 打开 rgw.yml 文件进行编辑,并根据环境自定义该文件:

    语法

    service_type: rgw
    service_id: SERVICE_ID
    service_name: SERVICE_NAME
    placement:
      hosts:
      - HOST_NAME
    spec:
      ssl: true
      rgw_frontend_ssl_certificate: CERT_HASH
    Copy to Clipboard Toggle word wrap

    示例

    service_type: rgw
    service_id: foo
    service_name: rgw.foo
    placement:
      hosts:
      - host01
    spec:
      ssl: true
      rgw_frontend_ssl_certificate: |
        -----BEGIN RSA PRIVATE KEY-----
        MIIEpAIBAAKCAQEA+Cf4l9OagD6x67HhdCy4Asqw89Zz9ZuGbH50/7ltIMQpJJU0
        gu9ObNtIoC0zabJ7n1jujueYgIpOqGnhRSvsGJiEkgN81NLQ9rqAVaGpadjrNLcM
        bpgqJCZj0vzzmtFBCtenpb5l/EccMFcAydGtGeLP33SaWiZ4Rne56GBInk6SATI/
        JSKweGD1y5GiAWipBR4C74HiAW9q6hCOuSdp/2WQxWT3T1j2sjlqxkHdtInUtwOm
        j5Ism276IndeQ9hR3reFR8PJnKIPx73oTBQ7p9CMR1J4ucq9Ny0J12wQYT00fmJp
        -----END RSA PRIVATE KEY-----
        -----BEGIN CERTIFICATE-----
        MIIEBTCCAu2gAwIBAgIUGfYFsj8HyA9Zv2l600hxzT8+gG4wDQYJKoZIhvcNAQEL
        BQAwgYkxCzAJBgNVBAYTAklOMQwwCgYDVQQIDANLQVIxDDAKBgNVBAcMA0JMUjEM
        MAoGA1UECgwDUkhUMQswCQYDVQQLDAJCVTEkMCIGA1UEAwwbY2VwaC1zc2wtcmhj
        czUtOGRjeHY2LW5vZGU1MR0wGwYJKoZIhvcNAQkBFg5hYmNAcmVkaGF0LmNvbTAe
        -----END CERTIFICATE-----
    Copy to Clipboard Toggle word wrap

  3. 使用服务规格文件部署 Ceph 对象网关:

    示例

    [ceph: root@host01 /]# ceph orch apply -i rgw.yml
    Copy to Clipboard Toggle word wrap

4.4.1. 使用 SAN 配置部署自签名 Cephadm 证书

使用 Ceph 对象网关(RGW)条目为 Ceph 对象网关(RGW)条目配置自签名 SSL/TLS 证书对于保护多站点或多域 Ceph 环境中的 RGW 节点之间的通信至关重要。此过程可让管理员自动生成和部署支持多个域名或主机名的证书,为分布式部署提供更大的灵活性并提高安全性。

With this procedure,you can:
Copy to Clipboard Toggle word wrap
  • 为 RGW 服务自动生成和部署 SSL/TLS 证书。
  • 包含多个 SAN 条目,以支持各种域或主机名。
  • 跨不同 Ceph 集群的 RGW 节点之间的安全通信,甚至跨越地理区域或域边界。

这种方法通过确保所有参与节点之间加密通信,简化了安全、可扩展的多站点 RGW 部署。

先决条件

  • 一个运行良好、健康的 Red Hat Ceph Storage 集群。
  • 安装 Ceph 对象网关软件包.
  • 安装 OpenSSL 软件包.
  • Ceph 对象网关节点的根级别访问权限.

流程

  1. 在当前目录中创建一个名为 rgw.yml 的新文件:

    示例

    [ceph: root@host01 /]# touch rgw.yml
    Copy to Clipboard Toggle word wrap

  2. 打开 rgw.yml 文件进行编辑,并根据环境自定义该文件:

    语法

    service_type: rgw
    service_id: SERVICE_ID
    service_name: SERVICE_NAME
    placement:
      hosts:
      - HOST_NAME
    spec:
      ssl: true
      rgw_frontend_ssl_certificate: CERT_HASH
    Copy to Clipboard Toggle word wrap

    示例

    service_type: rgw
    service_id: foo
    service_name: rgw.foo
    placement:
      hosts:
      - host01
    spec:
      ssl: true
      rgw_frontend_ssl_certificate: |
        -----BEGIN RSA PRIVATE KEY-----
        MIIEpAIBAAKCAQEA+Cf4l9OagD6x67HhdCy4Asqw89Zz9ZuGbH50/7ltIMQpJJU0
        gu9ObNtIoC0zabJ7n1jujueYgIpOqGnhRSvsGJiEkgN81NLQ9rqAVaGpadjrNLcM
        bpgqJCZj0vzzmtFBCtenpb5l/EccMFcAydGtGeLP33SaWiZ4Rne56GBInk6SATI/
        JSKweGD1y5GiAWipBR4C74HiAW9q6hCOuSdp/2WQxWT3T1j2sjlqxkHdtInUtwOm
        j5Ism276IndeQ9hR3reFR8PJnKIPx73oTBQ7p9CMR1J4ucq9Ny0J12wQYT00fmJp
        -----END RSA PRIVATE KEY-----
        -----BEGIN CERTIFICATE-----
        MIIEBTCCAu2gAwIBAgIUGfYFsj8HyA9Zv2l600hxzT8+gG4wDQYJKoZIhvcNAQEL
        BQAwgYkxCzAJBgNVBAYTAklOMQwwCgYDVQQIDANLQVIxDDAKBgNVBAcMA0JMUjEM
        MAoGA1UECgwDUkhUMQswCQYDVQQLDAJCVTEkMCIGA1UEAwwbY2VwaC1zc2wtcmhj
        czUtOGRjeHY2LW5vZGU1MR0wGwYJKoZIhvcNAQkBFg5hYmNAcmVkaGF0LmNvbTAe
        -----END CERTIFICATE-----
    Copy to Clipboard Toggle word wrap

  3. 验证证书。

    1. 部署 RGW 守护进程后,使用以下命令检索证书:

      语法

      ceph orch cert-store get cert rgw_frontend_ssl_cert --service-name <rgw-service-name>
      Copy to Clipboard Toggle word wrap

    2. 使用 OpenSSL 检查证书的 SANs 字段。

      语法

      [root@vm-00 ~]# openssl x509 -in rgw_cert.txt -noout -text
      Copy to Clipboard Toggle word wrap

      示例

      X509v3 extensions:
      X509v3 Subject Alternative Name:
      DNS:s3.zone1.example.com, DNS:s3.example.com
      Copy to Clipboard Toggle word wrap

      X509v3 Subject Alternative Name 部分显示基于 RGW 服务 spec 定义的 SAN 的 SAN。

Ceph 对象网关现在配置有 SSL/TLS 证书,包括支持多区或多区域部署所需的多个主机名或域的 SAN 修改。

4.4.2. 使用 Cephadm 配置 RGW 多站点

在多站点 Ceph 集群中,使用 Cephadm 配置 RADOS 网关(RGW)。此设置保护 RGW 端点,并在站点之间启用数据复制,确保高可用性、灾难恢复和地理冗余。SSL 对客户端到RGW 通信进行加密,以进行安全数据访问。

先决条件

  • 一个运行良好、健康的 Red Hat Ceph Storage 集群。
  • 安装 Ceph 对象网关软件包.
  • 安装 OpenSSL 软件包.
  • Ceph 对象网关节点的根级别访问权限.

流程

  1. 从主站点获取 Cephadm-Root CA 证书:

    语法

    ceph orch cert-store get cert cephadm_root_ca_cert
    Copy to Clipboard Toggle word wrap

    示例

    [root@ceph-pri-hsm-cephadm-h0a759-node6 ~]# ceph orch cert-store get cert cephadm_root_ca_cert
    
    -----BEGIN CERTIFICATE-----
    
    MIIE4DCCAsigAwIBAgIUZJdD1pvtpWwIBdk9WgQltOMsssEwDQYJKoZIhvcNAQEL
    
    BQAwFzEVMBMGA1UEAwwMY2VwaGFkbS1yb290MB4XDTI0MTAzMDE0MzcwNFoXDTM0
    
    MTAzMTE0MzcwNFowFzEVMBMGA1UEAwwMY2VwaGFkbS1yb290MIICIjANBgkqhkiG
    
    9w0BAQEFAAOCAg8AMIICCgKCAgEAmYkNVL3rXAblrK12IEXcem4xW8Ki3bySGDcx
    
    ft9vSSDRNCTHUYt8LLeQ+EoOVmQGbDwF2/z3FmC8+Mdkg8dB/7c0zpjw1RAkegOy
    
    gZCxHxWk/oT25wZcr4SogDzSFbT7dPX3P3H+PxMa/bzvH7vgZjkTgT94sWXu3+Ll
    
    5YbiD/DMEmgty2+UO+ZQOWQB9u9s8d8+tqGuaeAgAdB70D8wi/z4k+u76s4/697o
    
    VzyfF7Gj9uCacCJUIs8XXUkIkqlFGxWMJa/ENSHQdd/Un+nWDyiN0KCC5b98EMru
    
    lvqrlbdmmOsfUQFDIGI+s4/S90PZXsu8kjCj+sDB+A1371uaeWbn6jC5wjb6+p1H
    
    xcCnqwJUO3eJAk6HAvD0OGb6raaVdN5wmFxF8rQ/Ghmuk2UHyupjD5ieotyI8sad
    
    ugctyGLwx8/5BFSD7SDwvP2wqbIhGDv9yqpTUHpZqZLik1TOqvrRytdzgtMj2OK9
    
    E6YmOYTajcXWshH1WwOoMjhPohHynXDTZdkNHWvfoy6KcvHYX9AiIEYX95CbM5O7
    
    jOa9dMjp+tCbWrejZjyVV5zwtVsi5K2TmKOJseWg1QljqXU66ft7gvP69rG12e64
    
    ZChnPiGjYJZoG+lJHgbb84Khhfg1foD1e/B6+3gaWpCkzlpvajzf4IhRGDaSRsKL
    
    NqQVraECAwEAAaMkMCIwDwYDVR0RBAgwBocECgBA8zAPBgNVHRMBAf8EBTADAQH/
    
    MA0GCSqGSIb3DQEBCwUAA4ICAQApdrsNb4MjpuC81Dz7/9d3QkiafULbxvvEhIgZ
    
    dZZdfQPTv68HK4N0Ubw/3st5HRJCyejAICpiqgMnvR6q7DLgJ4CdMtvFiIRYZvG4
    
    SF48s5ri1F5mBuIChdtd02IsjVt/zUt7Z4Wbco2F/g6MF6v5vJ5s8ZoOokNhw+h6
    
    lcD85x+Bvg1ytbtJGFitTu+Rhi3h3SZhz2lJVyLkAj4C7R1Te/uUvPP1AiAVvzL9
    
    bMY/KPPjqxsBf6YDlgNncZyRaXsu6lh428lviwUlz/Yl9hOIyYXBv2UYu41H22f3
    
    u2Ewc+bNH2GfWFbbicXUSqIg6fFdKUgrXU/uRC99OIxVHU/P0KWIHJzsCclAJpBA
    
    J7KMGxOpRctMPl0aRtK4yWY92/E8rxNR5LAMBosE1V4iCQr9QkxFiu76Bp2Vz35f
    
    Ly/0vwfwXwYt2E3DVKKegcnIr355SjRoBChaYAsVK8qvSmtzQQENbUECMUKVtdtZ
    
    NbFRvfor+9uQemMC5ty9OfXCfTnLZ/wtL17NEMy5/7249L/3JrEwixOyooZR8zY0
    
    wR7eN9iI5XHSW11F3qBdpqvpVubSrzxyoUPD2QpAWyraXn2QlLqsVTrCDj+heMda
    
    DTL4YvDlOnKyb08etBCJKKg90sJxkqTfQKipogTtQSlQrMLwGLfpf67NsJ9izeYt
    
    Mn1JbQ==
    
    -----END CERTIFICATE-----
    
    [root@ceph-pri-hsm-cephadm-h0a759-node6 ~]#
    Copy to Clipboard Toggle word wrap

  2. 在辅助站点上,将证书内容放在 /etc/pki/ca-trust/source/anchors 文件中:

    语法

    [root@ceph-sec-hsm-cephadm-h0a759-node6 ~]# cd /etc/pki/ca-trust/source/anchors
    
    [root@ ceph-sec-hsm-cephadm-h0a759-node6 anchors]#
    Copy to Clipboard Toggle word wrap

    示例

    [root@ceph-sec-hsm-cephadm-h0a759-node6 ~]# cd /etc/pki/ca-trust/source/anchors
    
    [root@ceph-sec-hsm-cephadm-h0a759-node6 anchors]# ls
    
    RH-IT-Root-CA.crt  ceph-qe-ca.pem  cephqe-ca.pem  pri-site-cephadm-root-ca.crt
    
    [root@ceph-sec-hsm-cephadm-h0a759-node6 anchors]# cat pri-site-cephadm-root-ca.crt
    
    -----BEGIN CERTIFICATE-----
    
    MIIE4DCCAsigAwIBAgIUZJdD1pvtpWwIBdk9WgQltOMsssEwDQYJKoZIhvcNAQEL
    
    BQAwFzEVMBMGA1UEAwwMY2VwaGFkbS1yb290MB4XDTI0MTAzMDE0MzcwNFoXDTM0
    
    MTAzMTE0MzcwNFowFzEVMBMGA1UEAwwMY2VwaGFkbS1yb290MIICIjANBgkqhkiG
    
    9w0BAQEFAAOCAg8AMIICCgKCAgEAmYkNVL3rXAblrK12IEXcem4xW8Ki3bySGDcx
    
    ft9vSSDRNCTHUYt8LLeQ+EoOVmQGbDwF2/z3FmC8+Mdkg8dB/7c0zpjw1RAkegOy
    
    gZCxHxWk/oT25wZcr4SogDzSFbT7dPX3P3H+PxMa/bzvH7vgZjkTgT94sWXu3+Ll
    
    5YbiD/DMEmgty2+UO+ZQOWQB9u9s8d8+tqGuaeAgAdB70D8wi/z4k+u76s4/697o
    
    VzyfF7Gj9uCacCJUIs8XXUkIkqlFGxWMJa/ENSHQdd/Un+nWDyiN0KCC5b98EMru
    
    lvqrlbdmmOsfUQFDIGI+s4/S90PZXsu8kjCj+sDB+A1371uaeWbn6jC5wjb6+p1H
    
    xcCnqwJUO3eJAk6HAvD0OGb6raaVdN5wmFxF8rQ/Ghmuk2UHyupjD5ieotyI8sad
    
    ugctyGLwx8/5BFSD7SDwvP2wqbIhGDv9yqpTUHpZqZLik1TOqvrRytdzgtMj2OK9
    
    E6YmOYTajcXWshH1WwOoMjhPohHynXDTZdkNHWvfoy6KcvHYX9AiIEYX95CbM5O7
    
    jOa9dMjp+tCbWrejZjyVV5zwtVsi5K2TmKOJseWg1QljqXU66ft7gvP69rG12e64
    
    ZChnPiGjYJZoG+lJHgbb84Khhfg1foD1e/B6+3gaWpCkzlpvajzf4IhRGDaSRsKL
    
    NqQVraECAwEAAaMkMCIwDwYDVR0RBAgwBocECgBA8zAPBgNVHRMBAf8EBTADAQH/
    
    MA0GCSqGSIb3DQEBCwUAA4ICAQApdrsNb4MjpuC81Dz7/9d3QkiafULbxvvEhIgZ
    
    dZZdfQPTv68HK4N0Ubw/3st5HRJCyejAICpiqgMnvR6q7DLgJ4CdMtvFiIRYZvG4
    
    SF48s5ri1F5mBuIChdtd02IsjVt/zUt7Z4Wbco2F/g6MF6v5vJ5s8ZoOokNhw+h6
    
    lcD85x+Bvg1ytbtJGFitTu+Rhi3h3SZhz2lJVyLkAj4C7R1Te/uUvPP1AiAVvzL9
    
    bMY/KPPjqxsBf6YDlgNncZyRaXsu6lh428lviwUlz/Yl9hOIyYXBv2UYu41H22f3
    
    u2Ewc+bNH2GfWFbbicXUSqIg6fFdKUgrXU/uRC99OIxVHU/P0KWIHJzsCclAJpBA
    
    J7KMGxOpRctMPl0aRtK4yWY92/E8rxNR5LAMBosE1V4iCQr9QkxFiu76Bp2Vz35f
    
    Ly/0vwfwXwYt2E3DVKKegcnIr355SjRoBChaYAsVK8qvSmtzQQENbUECMUKVtdtZ
    
    NbFRvfor+9uQemMC5ty9OfXCfTnLZ/wtL17NEMy5/7249L/3JrEwixOyooZR8zY0
    
    wR7eN9iI5XHSW11F3qBdpqvpVubSrzxyoUPD2QpAWyraXn2QlLqsVTrCDj+heMda
    
    DTL4YvDlOnKyb08etBCJKKg90sJxkqTfQKipogTtQSlQrMLwGLfpf67NsJ9izeYt
    
    Mn1JbQ==
    
    -----END CERTIFICATE-----
    
    [root@ceph-sec-hsm-cephadm-h0a759-node6 anchors]#
    Copy to Clipboard Toggle word wrap

  3. 运行 update-ca-trust 命令:

    语法

    [root@ceph-sec-hsm-cephadm-h0a759-node6 anchors]# update-ca-trust
    
    [root@ceph-sec-hsm-cephadm-h0a759-node6 anchors]#
    Copy to Clipboard Toggle word wrap

  4. 验证与 Radosgw 的连接。现在,SSL 证书是可信的,您可以执行 swigradosgw-admincommandscommands,如 swigrealm pullor 在不遇到 SSL 证书问题的情况下检查同步状态:

    语法

    [root@ceph-sec-hsm-cephadm-h0a759-node6 anchors]# date; radosgw-admin realm pull --rgw-realm india --url https://10.0.65.88 --access-key 21e86bce636c3aa0 --secret cf764951f1fdde5d --default
    
    2024-10-30T17:23:54.450+0000 7fe300751800  1 Set the period's master zonegroup shared as the default
    
    {
    
        "id": "b32e147e-6276-4a70-952c-334cc11d998c",
    
        "name": "india",
    
        "current_period": "3013ead2-56a8-4d90-808b-800d88817ac7",
    
        "epoch": 2
    
    }
    
    [root@ceph-sec-hsm-cephadm-h0a759-node6 anchors]#
    
    [root@ceph-sec-hsm-cephadm-h0a759-node6 anchors]# date; curl  https://10.0.65.88
    
    <?xml version="1.0" encoding="UTF-8"?><ListAllMyBucketsResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/"><Owner><ID>anonymous</ID></Owner><Buckets></Buckets></ListAllMyBucketsResult>[root@ceph-sec-hsm-cephadm-h0a759-node6 anchors]#
    
    [root@ceph-sec-hsm-cephadm-h0a759-node6 anchors]#
    Copy to Clipboard Toggle word wrap

  5. 在主站点上重复此过程。要建立相互信任,请使用相同的步骤将二级站点的 RGW SSL 证书复制到主站点。这样可确保两个站点都信任彼此的证书,并允许无缝的多站点 RGW 通信。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat