3.6. 使用子策略自定义系统范围的加密策略
使用这个流程来调整启用的加密算法或协议集。
您可以在现有系统范围的加密策略之上应用自定义子策略,或者从头开始定义此类策略。
范围策略的概念允许为不同的后端启用不同的算法集合。您可以将每个配置指令限制到特定的协议、库或服务。
另外,指令也可以使用星号来指定使用通配符的多个值。
/etc/crypto-policies/state/CURRENT.pol
文件列出了通配符扩展后当前应用了系统范围加密策略中的所有设置。要使您的加密策略更严格,请考虑使用 /usr/share/crypto-policies/policies/FUTURE.pol
文件中列出的值。
您可以在 /usr/share/crypto-policies/policies/modules/
目录中找到示例 subpolicies。这个目录中的子策略文件也包含注释掉的行的描述。
RHEL 8.2 提供了对系统范围加密策略的自定义。您可以使用有范围策略的概念,以及在 RHEL 8.5 或更新版本中使用通配符的选项。
流程
签出到
/etc/crypto-policies/policies/modules/
目录:# cd /etc/crypto-policies/policies/modules/
为您的调整创建子策略,例如:
# touch MYCRYPTO-1.pmod # touch SCOPES-AND-WILDCARDS.pmod
重要在策略模块的文件名中使用大写字母。
在您选择的文本编辑器中打开策略模块并插入修改系统范围加密策略的选项,例如:
# vi MYCRYPTO-1.pmod
min_rsa_size = 3072 hash = SHA2-384 SHA2-512 SHA3-384 SHA3-512
# vi SCOPES-AND-WILDCARDS.pmod
# Disable the AES-128 cipher, all modes cipher = -AES-128-* # Disable CHACHA20-POLY1305 for the TLS protocol (OpenSSL, GnuTLS, NSS, and OpenJDK) cipher@TLS = -CHACHA20-POLY1305 # Allow using the FFDHE-1024 group with the SSH protocol (libssh and OpenSSH) group@SSH = FFDHE-1024+ # Disable all CBC mode ciphers for the SSH protocol (libssh and OpenSSH) cipher@SSH = -*-CBC # Allow the AES-256-CBC cipher in applications using libssh cipher@libssh = AES-256-CBC+
- 将更改保存到模块文件中。
将您的策略调整应用到
DEFAULT
系统范围加密策略级别:# update-crypto-policies --set DEFAULT:MYCRYPTO-1:SCOPES-AND-WILDCARDS
要使您的加密设置对已经运行的服务和应用程序有效,请重启系统:
# reboot
验证
检查
/etc/crypto-policies/state/CURRENT.pol
文件是否包含您的更改,例如:$ cat /etc/crypto-policies/state/CURRENT.pol | grep rsa_size min_rsa_size = 3072
其它资源
-
您系统的
update-crypto-policies (8)
手册页中的 自定义策略 部分 -
系统上的
crypto-policies (7)
手册页中的加密策略定义格式
部分 - 红帽博客文章 在 RHEL 8.2 中如何自定义加密策略