3.9. 使用 crypto_policies RHEL 系统角色增强带有 FUTURE 加密策略的安全性
您可以使用 crypto_policies
RHEL 系统角色在受管节点上配置 FUTURE
策略。例如,此策略有助于实现:
- 未来应对新兴威胁:预见计算能力的前进.
- 增强安全性:更强大的加密标准需要更长的密钥长度和更安全的算法。
- 遵守高安全性标准:例如在医疗保健、电信和财务方面,数据敏感度很高,并且强大的加密可用性至关重要。
通常,FUTURE
适合处理高度敏感数据的环境,准备将来的法规,或采用长期安全策略。
传统系统或软件不必支持更现代化且更严格的算法和协议,由 FUTURE
策略实施。例如,旧的系统可能不支持 TLS 1.3 或更大的密钥大小。这可能导致兼容性问题。
另外,使用强大的算法通常会增加计算工作负载,这可能会对您的系统性能造成负面影响。
先决条件
- 您已准备好控制节点和受管节点
- 以可在受管主机上运行 playbook 的用户登录到控制节点。
-
用于连接到受管节点的帐户具有
sudo
权限。
流程
创建一个包含以下内容的 playbook 文件,如
~/playbook.yml
:--- - name: Configure cryptographic policies hosts: managed-node-01.example.com tasks: - name: Configure the FUTURE cryptographic security policy on the managed node ansible.builtin.include_role: name: rhel-system-roles.crypto_policies vars: - crypto_policies_policy: FUTURE - crypto_policies_reboot_ok: true
示例 playbook 中指定的设置包括以下内容:
crypto_policies_policy: FUTURE
-
在受管节点上配置所需的加密策略(
FUTURE
)。它可以是基本策略,也可以是带有一些子策略的基本策略。必须在受管节点上提供指定的基本策略和子策略。默认值为null
。这意味着配置没有被更改,crypto_policies
RHEL 系统角色只会收集 Ansible 事实。 crypto_policies_reboot_ok: true
-
会导致系统在加密策略更改后重新启动,以确保所有服务和应用程序都将读取新的配置文件。默认值为
false
。
有关 playbook 中使用的所有变量的详情,请查看控制节点上的
/usr/share/ansible/roles/rhel-system-roles.crypto_policies/README.md
文件。验证 playbook 语法:
$ ansible-playbook --syntax-check ~/playbook.yml
请注意,这个命令只验证语法,不会防止错误但有效的配置。
运行 playbook:
$ ansible-playbook ~/playbook.yml
因为 FIPS:OSPP
系统范围的子策略包含对通用标准(CC)认证所需的加密算法的进一步限制,所以在设置它后系统会不太可互操作性。例如,您无法使用比 3072 位、额外的 SSH 算法和几个 TLS 组短的 RSA 和 DH 密钥。设置 FIPS:OSPP
也会阻止连接到 Red Hat Content Delivery Network (CDN)结构。另外,您无法将 Active Directory (AD)集成到使用 FIPS:OSPP
、使用 FIPS:OSPP
和 AD 域的 RHEL 主机之间进行通信,或者某些 AD 帐户可能无法进行身份验证。
请注意,在设置了 FIPS:OSPP
加密子策略后,您的系统不合规。使 RHEL 系统符合 CC 标准的唯一正确方法是遵循 cc-config
软件包中提供的指导。有关认证 RHEL 版本、验证报告列表以及由 国家信息保障合作伙伴(NIAP) 网站上托管的 CC 指南的列表,请参阅合规性活动和政府标准知识库文章。https://access.redhat.com/articles/compliance_activities_and_gov_standards#common-criteria-1
验证
在控制节点上,创建另一个 playbook,例如
verify_playbook.yml
:--- - name: Verification hosts: managed-node-01.example.com tasks: - name: Verify active cryptographic policy ansible.builtin.include_role: name: rhel-system-roles.crypto_policies - name: Display the currently active cryptographic policy ansible.builtin.debug: var: crypto_policies_active
示例 playbook 中指定的设置包括以下内容:
crypto_policies_active
-
导出的 Ansible 事实,其中含有当前活动的策略名称,格式为
crypto_policies_policy
变量接受的格式。
验证 playbook 语法:
$ ansible-playbook --syntax-check ~/verify_playbook.yml
运行 playbook:
$ ansible-playbook ~/verify_playbook.yml TASK [debug] ************************** ok: [host] => { "crypto_policies_active": "FUTURE" }
crypto_policies_active
变量显示受管节点上的活动策略。
其它资源
-
/usr/share/ansible/roles/rhel-system-roles.crypto_policies/README.md
file -
/usr/share/doc/rhel-system-roles/crypto_policies/
directory -
update-crypto-policies (8)
和crypto-policies (7)
手册页