我已经在nginx上使用ssl_client_certificate
设置了客户端证书认证,它工作得很好。
nginx文档中对ssl_client_certificate
的描述如下:
证书列表将被发送到客户端。如果不希望这样,可以使用ssl_trusted_certificate指令。
我使用此配置的目的是让浏览器过滤掉不相关的客户端证书。
我有以下配置(只有相关部分),它不起作用.浏览器带来了系统中的每个客户端证书,而不是在path-to-certs-pem
中与CA相关的证书.我已经尝试了Firefox,Chrome和Windows上的边缘.
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问题,我很难找到?
This post意味着它至少不是TLSv1.3协议本身的问题。
1条答案
按热度按时间q43xntqr1#
这原来是一个SSL(v5.6.3)错误,因为我正在测试一个nginx构建与SSL.重建nginx与更新SSL(v5.6.6)修复了这个问题.