3.7. 使用子策略自定义系统范围的加密策略


使用这个流程来调整启用的加密算法或协议集。

您可以在现有系统范围的加密策略之上应用自定义子策略,或者从头开始定义此类策略。

范围策略的概念允许为不同的后端启用不同的算法集合。您可以将每个配置指令限制到特定的协议、库或服务。

另外,指令也可以使用星号来指定使用通配符的多个值。

/etc/crypto-policies/state/CURRENT.pol 文件列出了通配符扩展后当前应用了系统范围加密策略中的所有设置。要使您的加密策略更严格,请考虑使用 /usr/share/crypto-policies/policies/FUTURE.pol 文件中列出的值。

您可以在 /usr/share/crypto-policies/policies/modules/ 目录中找到示例子策略。这个目录中的子策略文件还包含注释掉的行中的描述。

流程

  1. 签出到 /etc/crypto-policies/policies/modules/ 目录:

    # cd /etc/crypto-policies/policies/modules/
  2. 为您的调整创建子策略,例如:

    # touch MYCRYPTO-1.pmod
    # touch SCOPES-AND-WILDCARDS.pmod
    重要

    在策略模块的文件名中使用大写字母。

  3. 在您选择的文本编辑器中打开策略模块并插入修改系统范围加密策略的选项,例如:

    # 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+
  4. 将更改保存到模块文件中。
  5. 将您的策略调整应用到 DEFAULT 系统范围加密策略级别:

    # update-crypto-policies --set DEFAULT:MYCRYPTO-1:SCOPES-AND-WILDCARDS
  6. 要使您的加密设置对已经运行的服务和应用程序有效,请重启系统:

    # 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 中如何自定义加密策略
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.