nginx ssl_client_certificate 与 TLSv1.3 一起使用时对浏览器上的证书选择没有影响

问题描述 投票:0回答:1

我已经使用

ssl_client_certificate
在 nginx 上设置了客户端证书身份验证,并且一切正常。

nginx 文档提到了

ssl_client_certificate

证书列表将发送给客户。如果这不是 如果需要,可以使用 ssl_trusted_certificate 指令。

我使用此配置的目标是让浏览器过滤掉不相关的客户端证书。

我有以下配置(仅相关部分),但它不起作用。浏览器会显示系统中的每个客户端证书,而不是

path-to-certs-pem
中与 CA 相关的证书。我在 Windows 上尝试过 Firefox、Chrome 和 Edge。

ssl_protocols TLSv1.2 TLSv1.3;
ssl_session_cache off;
ssl_verify_client optional;
ssl_client_certificate path-to-certs.pem;
ssl_verify_depth 9;

如果我删除

TLSv1.3
,它就会开始工作,这意味着浏览器仅显示相关证书。我可能需要设置一些额外的东西吗?或者也许有一个我很难找到的已知 nginx 问题?

这篇文章暗示它至少不是本质上的 TLSv1.3 协议问题。

nginx client-certificates tls1.3 mtls
1个回答
0
投票

这被证明是一个 WolfSSL 错误,因为我正在使用 WolfSSL 测试 nginx 构建。使用更新的 WolfSSL 重建 nginx 解决了问题。

© www.soinside.com 2019 - 2024. All rights reserved.