5.2. 启用 Tang 加密
先决条件
- 您可以使用 Red Hat Enterprise Linux(RHEL)8 机器来生成 Tang Exchange 密钥的指纹。
流程
- 设置 Tang 服务器或访问现有服务器。具体步骤请查看 网络绑定磁盘加密。您可以设置多个 Tang 服务器,但 Assisted Installer 必须在安装过程中连接到所有它们。
在 Tang 服务器上,使用
tang-show-keys检索 Tang 服务器的 thumbprint:$ tang-show-keys <port>
可选:将 &
lt;port> 替换为端口号。默认端口号为80。thumbprint 示例
1gYTN_LpU9ZMB35yn5IbADY5OQ0
可选:使用
jose获取 Tang 服务器的 thumbprint。确保在 Tang 服务器中安装了
jose:$ sudo dnf install jose
在 Tang 服务器上,使用
jose检索 thumbprint:$ sudo jose jwk thp -i /var/db/tang/<public_key>.jwk
将
<public_key> 替换为 Tang 服务器的公共交换密钥。thumbprint 示例
1gYTN_LpU9ZMB35yn5IbADY5OQ0
- 可选:在用户界面向导的 Cluster details 步骤中,选择在 control plane 节点、worker 或这两个节点上启用 Tang 加密。您需要为 Tang 服务器输入 URL 和 thumbprints。
可选:使用 API,请遵循"修改主机"过程。
刷新 API 令牌:
$ source refresh-token
将
disk_encryption.enable_on设置设置为所有、masters或worker。将disk_encryption.mode设置设置为tang。设置disk_encyrption.tang_servers,以提供一个或多个 Tang 服务器的 URL 和 thumbprint 详情:$ curl https://api.openshift.com/api/assisted-install/v2/clusters/${CLUSTER_ID} \ -X PATCH \ -H "Authorization: Bearer ${API_TOKEN}" \ -H "Content-Type: application/json" \ -d ' { "disk_encryption": { "enable_on": "all", "mode": "tang", "tang_servers": "[{\"url\":\"http://tang.example.com:7500\",\"thumbprint\":\"PLjNyRdGw03zlRoGjQYMahSZGu9\"},{\"url\":\"http://tang2.example.com:7500\",\"thumbprint\":\"XYjNyRdGw03zlRoGjQYMahSZGu3\"}]" } } ' | jqenable_on的有效设置都是、master、worker或none。在tang_servers值中,注释掉对象中的引号。