11.18. 使用 RHEL 系统角色配置 NBDE
您可以使用 nbde_client 和 nbde_server RHEL 系统角色,通过使用 Clevis 和 Tang 来自动部署基于策略的解密(PBD)解决方案。
rhel-system-roles 软件包包含这些系统角色、相关示例和参考文档。
11.18.1. 使用 nbde_server RHEL 系统角色设置多个 Tang 服务器 复制链接链接已复制到粘贴板!
通过使用 nbde_server 系统角色,您可以部署和管理 Tang 服务器,来作为自动磁盘加密解决方案的一部分。
此角色支持以下功能:
- 轮转 Tang 密钥
- 部署和备份 Tang 密钥
先决条件
- 您已准备好控制节点和受管节点。
-
用于连接到受管节点的帐户具有这些节点的
sudo权限。
流程
创建一个包含以下内容的 playbook 文件,如
~/playbook.yml:--- - name: Deploy a Tang server hosts: tang.server.example.com tasks: - name: Install and configure periodic key rotation ansible.builtin.include_role: name: redhat.rhel_system_roles.nbde_server vars: nbde_server_rotate_keys: yes nbde_server_manage_firewall: true nbde_server_manage_selinux: true此 playbook 示例确保部署 Tang 服务器和密钥轮转。
示例 playbook 中指定的设置包括以下内容:
nbde_server_manage_firewall: true-
使用
firewall系统角色管理nbde_server角色使用的端口。 nbde_server_manage_selinux: true使用
selinux系统角色管理nbde_server角色使用的端口。有关 playbook 中使用的所有变量的详情,请查看控制节点上的
/usr/share/ansible/roles/rhel-system-roles.nbde_server/README.md文件。
验证 playbook 语法:
$ ansible-playbook --syntax-check ~/playbook.yml请注意,这个命令只验证语法,不会防止错误但有效的配置。
运行 playbook:
$ ansible-playbook ~/playbook.yml
验证
在您的 Network-Bound Disk Encryption (NBDE)客户端上,使用以下命令验证您的 Tang 服务器是否正常工作。命令必须返回与您传给加密和解密的消息相同的消息:
# ansible managed-node-01.example.com -m command -a 'echo test | clevis encrypt tang '{"url":"<tang.server.example.com>"}' -y | clevis decrypt' test