OpenSSL CRL签入Tomcat拒绝所有连接

OpenSSL CRL签入Tomcat拒绝所有连接,tomcat,openssl,x509certificate,Tomcat,Openssl,X509certificate,我试图通过添加到server.xml文件中TLS连接器的crlFile属性,在Tomcat中添加对吊销证书的检查 不幸的是,这使得Tomcat拒绝所有TLS连接请求,即使它们的证书是有效的 有什么原因吗 编辑 我只打开了SSL的java调试标志,从日志中得到了这个异常 16:50:14,348 INFO [STDOUT] %% Invalidated: [Session-1, TLS_DHE_RSA_WITH_AES_256_CBC_SHA] 16:50:14,349 INFO [STDO

我试图通过添加到server.xml文件中TLS连接器的crlFile属性,在Tomcat中添加对吊销证书的检查

不幸的是,这使得Tomcat拒绝所有TLS连接请求,即使它们的证书是有效的

有什么原因吗

编辑

我只打开了SSL的java调试标志,从日志中得到了这个异常

16:50:14,348 INFO  [STDOUT] %% Invalidated:  [Session-1, TLS_DHE_RSA_WITH_AES_256_CBC_SHA]
16:50:14,349 INFO  [STDOUT] http-127.0.0.1-8444-1
16:50:14,350 INFO  [STDOUT] , SEND TLSv1.1 ALERT:  
16:50:14,350 INFO  [STDOUT] fatal, 
16:50:14,351 INFO  [STDOUT] description = certificate_unknown
16:50:14,351 INFO  [STDOUT] http-127.0.0.1-8444-1, WRITE: TLSv1.1 Alert, length = 2
16:50:14,351 INFO  [STDOUT] http-127.0.0.1-8444-1, called closeSocket()
16:50:14,352 INFO  [STDOUT] http-127.0.0.1-8444-1, handling exception: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path validation failed: java.security.cert.CertPathValidatorException: Could not determine revocation status

检查CRL文件的过期时间戳

现在在Tomcat服务器中部署
crl.pem
文件并重新启动服务器


背景 我本想补充这一点作为对这个问题的评论,但由于这个问题已经存在一年多了,OP不太可能仍然遇到这个问题

我在一个web应用程序项目中使用客户端证书进行身份验证,上周五一切正常。今天,在周一,所有的客户端证书显然都是无效的,尽管配置没有改变,证书也没有过期

从Tomcat
server.xml中的
元素中删除
crlFile
属性再次使客户端证书通过握手,但当然这也使已撤销的证书再次“有效”,因为不再检查撤销。上述程序解决了我的问题

$ date -Is
2016-01-11T17:33:23+0100
$ openssl crl -text -noout -in crl.pem
Certificate Revocation List (CRL):
        Version 1 (0x0)
    Signature Algorithm: sha256WithRSAEncryption
        Issuer: <WHATEVER>
        Last Update: Dec 11 17:47:52 2015 GMT
        Next Update: Jan 10 17:47:52 2016 GMT
Revoked Certificates:
    Serial Number: 03
        Revocation Date: Dec 11 17:31:41 2015 GMT
    Serial Number: 04
        Revocation Date: Dec 11 17:47:52 2015 GMT
    Signature Algorithm: sha256WithRSAEncryption
         <CHECKSUM OMITTED>
$ cd easy-rsa
$ source ./vars
$ ./revoke-full revokeme
Using configuration from /foo/easy-rsa/openssl-1.0.0.cnf
ERROR:Already revoked, serial number 03
Using configuration from /foo/easy-rsa/openssl-1.0.0.cnf
revokeme.crt: <DISTINGUISHED NAME HERE>
error 23 at 0 depth lookup:certificate revoked