6.2. 启用 Tang 加密
您可以从 Assisted Installer web 控制台或 API 启用 Tang 加密。
先决条件
- 您可以使用 Red Hat Enterprise Linux(RHEL)8 机器来生成 Tang Exchange 密钥的指纹。
流程
- 设置 Tang 服务器或访问现有服务器。具体步骤请查看 网络绑定磁盘加密。您可以设置多个 Tang 服务器,但 Assisted Installer 在安装过程中需要可以连接到所有 Tang 服务器。
在 Tang 服务器上,使用
tang-show-keys检索 Tang 服务器的 thumbprint:$ tang-show-keys <port>可选:将
<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
- 可选: 使用 Web 控制台,在 集群详情 步骤中,为以下任意节点启用安装磁盘加密:control plane 节点、worker 或仲裁程序。您需要为 Tang 服务器输入 URL 和 thumbprints。
可选: 使用 API,在"修改主机"流程中包含以下设置来启用 Tang 加密:
将
disk_encryption.enable_on设置设置为以下之一:-
"none" -
"all" -
"masters" -
"arbiters" -
"workers" -
"masters,arbiters" -
"masters,workers" -
"arbiters,workers" -
"masters,arbiters,workers"
-
-
将
disk_encryption.mode设置设置为tang。 设置
disk_encyrption.tang_servers,以提供一个或多个 Tang 服务器的 URL 和 thumbprint 详情。在tang_servers值中,注释掉对象中的引号。Example
$ 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\"}]" } } ' | jq