2.6. 使用子策略自定义系统范围的加密策略
您可以调整系统上启用的加密算法或协议集合。您可以在现有系统范围的加密策略之上应用自定义子策略,或者从头开始定义此类策略。
范围策略的概念允许为不同的后端启用不同的算法集合。您可以将每个配置指令限制到特定的协议、库或服务。
另外,您可以在指令中使用通配符字符,例如,使用星号来指定多个值。有关完整的语法参考,请参阅您系统上 update-crypto-policies (8) 手册页中的 自定义策略 部分和 crypto-policies (7) 手册页中的 加密策略定义格式 部分。
-
/etc/crypto-policies/state/CURRENT.pol文件列出了通配符扩展后当前应用了系统范围加密策略中的所有设置。 -
要使您的加密策略更严格,请考虑使用
/usr/share/crypto-policies/policies/FUTURE.pol文件中列出的值。 -
您可以在
/usr/share/crypto-policies/policies/modules/目录中找到示例子策略。
流程
签出到
/etc/crypto-policies/policies/modules/目录:# cd /etc/crypto-policies/policies/modules/为您的调整创建子策略,例如:
# touch <MYCRYPTO-1>.pmod # touch <SCOPES-AND-WILDCARDS>.pmod重要在策略模块的文件名中使用大写字母。
在您选择的文本编辑器中打开策略模块并插入修改系统范围加密策略的选项,例如:
# vi <MYCRYPTO-1>.pmodmin_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