当在Apache中设置CA时,浏览器不要求客户端证书



更新:

我更新了我的CA以匹配从中颁发客户端证书的CA,浏览器现在提示我选择证书(并列出了正确的证书(,但错误"ERR_BAD_SSL_client_AUTH_CERT"仍然存在。


旧消息:

我需要使用Apache进行证书身份验证。

我的问题是,当在Apache中设置CA时,不会弹出证书列表。然而,不设置它会弹出窗口,并允许我选择证书。。。但当然,身份验证不起作用,并带来以下错误:

ERR_BAD_SSL_CLIENT_AUTH_CERT

我的配置如下:

ssl.conf:

SSLEngine on
SSLProtocol -all +SSLv3 +TLSv1
SSLCipherSuite HIGH:MEDIUM
SSLCACertificateFile /etc/httpd/ca.cer
SSLCARevocationFile /etc/httpd/crl.pem
SSLCARevocationCheck chain
SSLVerifyClient optional
SSLVerifyDepth 10
SSLOptions +StdEnvVars
SSLUserName SSL_CLIENT_S_DN_CN

vhost:

Include ssl.conf
SSLCertificateFile /etc/httpd/sub.domain.crt
SSLCertificateKeyFile /etc/httpd/sub.domain.key

CA和我的客户端证书也安装在我的计算机上,随时可以使用。

日志中没有任何内容,只有一行提到关闭的SSL连接。

我找了一段时间,找不到是什么原因造成的。

好吧,所以首先没有正确设置SSLVerifyDepth参数。我可以通过检查Apache的ssl_error_log文件来找到它。

第二,日志文件表示无法访问CRL。即使设置了我认为正确的CRL。。。但是我实际上忘记了客户端CA之上的CA的CRL

再次感谢您帮助我检查CA,案件已结案!

最新更新