我正在尝试为tomcat设置双向ssl。我创建了一个根CA和一个中间CA.然后我为tomcat服务器创建了一个证书,并为我的客户端创建了一个证书。两个证书都由中间CA签名。然后,我为tomcat创建了一个pkcs12密钥库,并将以后的服务器证书+中间CA证书+根CA证书创建到密钥库中。
在tomcat server.xml文件中,我使用clientAuth =" true"和keystoreType =" PKCS12"配置了ssl连接器。我还设置了keystoreFile,keystorePass,truststoreFile和truststorePass的值。
在我的客户端计算机中,我还创建了一个pkcs12密钥库,并将客户端cert + +中间CA证书+根CA证书导入密钥库。我将密钥库导入浏览器。
当我重新启动tomcat并尝试从我的客户端浏览器访问tomcat服务器时,我得到了这个:ERR_BAD_SSL_CLIENT_AUTH_CERT。我使用openssl s_client命令来调试连接。我收到一些错误:
SSL3_READ_BYTES:sslv3警报证书未知:s3_pkt.c:SSL警报号46 SSL23_WRITE:ssl握手失败:s23_lib.c:184
openssl返回的检索证书似乎是正确的。只有"可接受的客户端证书CA名称"很奇怪我想它应该列出可以签署客户端证书的有效CA.但是我看到openssl返回的内容基本上是服务器DN,而不是CA(中间或根)。
我想知道是否有人可以提供帮助。
由于