服务器与列入黑名单的套件协商 HTTP/2

信息安全 http 密码选择
2021-08-18 01:58:33

我知道有很多关于我的错误消息的帖子,我看过它们,但没有解决我自己的问题。

本质上,由于以下列入黑名单的套件,某些网络浏览器无法加载我的网站

服务器与列入黑名单的套件协商 HTTP/2

TLS_RSA_WITH_AES_256_CBC_SHA

TLS_RSA_WITH_AES_256_GCM_SHA384

我的 Nginx 配置包含以下内容

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!DH:!ECDH:!CAMELLIA:!SRP:!PSK:!MD5:!KRB5;

我的 ssl_ciphers 中需要更改什么?或者,我可以研究哪些资源可以为我指明方向?

1个回答

这些套装包含在RFC 7540 中定义的 HTTP/2 禁止的密码套件列表中

由于 AES-GCM 和 RSA 仍然享有良好的声誉,第二个套件的剩余弱点是它不提供前向保密。

规范证实了这一点:

此列表包括那些不提供临时密钥交换的 密码套件[这排除了您的两个套件]以及基于 TLS 空、流或块密码类型的密码套件[这排除了 TLS_RSA_WITH_AES_256_CBC_SHA]

在您的配置字符串中,我看到!DH更重要的是!ECDH它禁用了各种 Diffie-Hellman 套件,包括短暂的 Diffie-Hellman,这是 SSL 实现前向保密的方式。

ECDH

使用 ECDH 密钥交换的密码套件,包括匿名、临时和固定 ECDH。

因此,解决方法是允许临时椭圆曲线 Diffie-Hellman (ECDHE)