如何从 Netty SSLContext 中排除弱协议(密码套装)?

How to exclude weak protocols (ciphers suits) from the Netty SSLContext?

在我的 Netty 服务器上,我需要排除 TLS_1.0 和 TLS_1.1 协议。但是,似乎 Netty SslContextBuilder 不允许排除特定的套装。

当前代码用于构建 SSL 上下文:

SslContextBuilder.forServer(serverCert, serverKey, serverPass)
                .sslProvider(sslProvider)
                .build();

SslContextBuilderciphers() 方法,但不清楚如何排除 TLS_1.0 和 TLS_1.1.

的特定密码

有什么办法可以实现吗?

您只需指定要支持的协议:

SslContextBuilder.forServer(serverCert, serverKey, serverPass)
                .sslProvider(sslProvider).protocols(...)

所以这里只包含 TLSv1.2 和 TLSv1.3。

另一种可能性是指定您的自定义 CipherSuiteFilter 以过滤掉您不想支持的密码。