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 对象网关节点的根级别访问权限.
流程
在当前目录中创建一个名为
rgw.yml
的新文件:示例
[ceph: root@host01 /]# touch rgw.yml
[ceph: root@host01 /]# touch rgw.yml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 打开
rgw.yml
文件进行编辑,并根据环境自定义该文件:语法
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用服务规格文件部署 Ceph 对象网关:
示例
[ceph: root@host01 /]# ceph orch apply -i rgw.yml
[ceph: root@host01 /]# ceph orch apply -i rgw.yml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.4.1. 使用 SAN 配置部署自签名 Cephadm 证书 复制链接链接已复制到粘贴板!
使用 Ceph 对象网关(RGW)条目为 Ceph 对象网关(RGW)条目配置自签名 SSL/TLS 证书对于保护多站点或多域 Ceph 环境中的 RGW 节点之间的通信至关重要。此过程可让管理员自动生成和部署支持多个域名或主机名的证书,为分布式部署提供更大的灵活性并提高安全性。
With this procedure,you can:
With this procedure,you can:
- 为 RGW 服务自动生成和部署 SSL/TLS 证书。
- 包含多个 SAN 条目,以支持各种域或主机名。
- 跨不同 Ceph 集群的 RGW 节点之间的安全通信,甚至跨越地理区域或域边界。
这种方法通过确保所有参与节点之间加密通信,简化了安全、可扩展的多站点 RGW 部署。
先决条件
- 一个运行良好、健康的 Red Hat Ceph Storage 集群。
- 安装 Ceph 对象网关软件包.
- 安装 OpenSSL 软件包.
- Ceph 对象网关节点的根级别访问权限.
流程
在当前目录中创建一个名为
rgw.yml
的新文件:示例
[ceph: root@host01 /]# touch rgw.yml
[ceph: root@host01 /]# touch rgw.yml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 打开
rgw.yml
文件进行编辑,并根据环境自定义该文件:语法
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证证书。
部署 RGW 守护进程后,使用以下命令检索证书:
语法
ceph orch cert-store get cert rgw_frontend_ssl_cert --service-name <rgw-service-name>
ceph orch cert-store get cert rgw_frontend_ssl_cert --service-name <rgw-service-name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用 OpenSSL 检查证书的 SANs 字段。
语法
openssl x509 -in rgw_cert.txt -noout -text
[root@vm-00 ~]# openssl x509 -in rgw_cert.txt -noout -text
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
X509v3 extensions: X509v3 Subject Alternative Name: DNS:s3.zone1.example.com, DNS:s3.example.com
X509v3 extensions: X509v3 Subject Alternative Name: DNS:s3.zone1.example.com, DNS:s3.example.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 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 对象网关节点的根级别访问权限.
流程
从主站点获取 Cephadm-Root CA 证书:
语法
ceph orch cert-store get cert cephadm_root_ca_cert
ceph orch cert-store get cert cephadm_root_ca_cert
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在辅助站点上,将证书内容放在 /etc/pki/ca-trust/source/anchors 文件中:
语法
cd /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 Copied! Toggle word wrap Toggle overflow 示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行 update-ca-trust 命令:
语法
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 Copied! Toggle word wrap Toggle overflow 验证与 Radosgw 的连接。现在,SSL 证书是可信的,您可以执行 swigradosgw-admincommandscommands,如 swigrealm pullor 在不遇到 SSL 证书问题的情况下检查同步状态:
语法
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 在主站点上重复此过程。要建立相互信任,请使用相同的步骤将二级站点的 RGW SSL 证书复制到主站点。这样可确保两个站点都信任彼此的证书,并允许无缝的多站点 RGW 通信。