问题

问题

我使用的是 Rocky Linux 8 和 9,它们使用 Red Hat 的加密策略框架。现在我想调整策略中的一些设置来禁止 sshd 使用某些特定的算法。但我无法弄清楚这些算法的名称,因为它们应该被赋予 crypto-policy。

我正在编写一个文本文件,/etc/crypto-policies/policies/modules/DEPRECATED-SSH-ALGOS.pmod并尝试将我的策略设置为DEFAULT:DEPRECATED-SSH-ALGOSin /etc/crypto-policies/config

问题在于 DEPRECATED-SSH-ALGOS.pmod 文件的内容。有些算法我可以成功停用,而另一些则不能。

文件的“工作”版本:

cipher@ssh = -AES-*-CBC
mac@SSH = -*-SHA1 -HMAC-SHA2-256 -HMAC-SHA2-512

但我想用这样的东西:

cipher@ssh = -AES-*-CBC
mac@SSH = -*-SHA1 -HMAC-SHA2-256 -HMAC-SHA2-512 [email protected]
key_exchange@SSH = -*-SHA1 -ECDH-SHA2-NISTP256 -ECDH-SHA2-NISTP384 -ECDH-SHA2-NISTP521

但是当我执行以下操作时,加密策略框架会发出这样的抱怨update-crypto-policies --set

AlgorithmEmptyMatchError: Bad value of policy property `key_exchange`: `ecdh-sha2-nistp256`
Errors found in policy, first one:
Bad value of policy property `key_exchange`: `ECDH-SHA2-NISTP256`

问题

我可以放入加密策略文件中的算法的名称是什么,或者在哪里可以找到这些算法?

答案1

/etc/crypto-policies/back-ends/opensshserver.config

查看: https://www.stigviewer.com/stig/red_hat_enterprise_linux_8/2021-12-03/finding/V-230251

RHEL 8 默认合并系统范围的加密策略。除非在 /etc/sysconfig/sshd 文件中特别定义,否则 SSH 配置文件对密码、MAC 或算法没有影响。可以在 /etc/crypto-policies/back-ends/opensshserver.config 文件中查看所使用的算法。

通过使用以下行更新“/etc/crypto-policies/back-ends/opensshserver.config”文件,将 RHEL 8 SSH 服务器配置为仅使用采用 FIPS 140-2 批准算法的 MAC:

-oMACS=hmac-sha2-512,hmac-sha2-256,[电子邮件受保护],[电子邮件受保护]

需要重新启动才能使更改生效。

V-230252:CRYPTO_POLICY='-oCiphers=aes256-ctr,aes192-ctr,aes128-ctr,[email protected],[email protected]'

V-255924:-oKexAlgorithms=ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512

还看看V230254对于 openssl,请注意 - 将所有这些视为指导方针

还 :

https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/security_hardening/using-the-system-wide-cryptographic-policies_security-hardening

要定义自定义加密策略,请参阅 update-crypto-policies(8) 手册页中的自定义策略部分和 crypto-policies(7) 手册页中的加密策略定义格式部分

man crypto-policies 7 ...加密政策定义格式

相关内容