SSL证书链不完整

时间:2016-06-01 17:22:15

标签: java ssl encryption ssl-certificate keytool

有人可以解释一下SSL Labs测试的确切内容"此服务器的证书链不完整"手段以及如何解决?我所做的确切步骤

  1. 使用独立模块(./letsencrypt-auto --standalone)通过Let's Encrypt客户端生成Let加密证书
  2. 这产生了4个文件:cert1.pem,chain1.pem,fullchain1.pem,privkey1.pem
  3. 生成PKCS12文件以导入证书:
  4.   

    openssl pkcs12 -export -in cert1.pem -inkey privkey1.pem -out   cert_and_key.p12 -name certificate -CAfile fullchain1.pem -caname root

    1. 创建密钥库:
    2.   

      keytool -importkeystore -deststorepass Pas5w0rd123 -destkeypass   Pas5w0rd123 -destkeystore cert.jks -srckeystore cert_and_key.p12   -srcstoretype PKCS12 -srcstorepass Pas5w0rd123 -alias cert

           

      keytool -import -trustcacerts -alias root -file chain1.pem -keystore   cert.jks

      1. 现在使用服务器上创建的cert.jks并使用SSL Labs进行测试,SSL测试会报告此问题:"此服务器的证书链不完整。"。
      2. 非常感谢您的回答!

1 个答案:

答案 0 :(得分:1)

似乎证书链中缺少证书Let's Encrypt Authority X3。

检查您的pkcs12是否真的包含私钥,公钥和证书链。最好的选择是使用GUI portecle(http://portecle.sourceforge.net/

创建pkcs12时,'-CAfile fullchain1.pem'应为'-certfile fullchain1.pem'。