当前位置: 代码迷 >> 综合 >> keytool error: java.lang.Exception: Failed to establish chain from reply
  详细解决方案

keytool error: java.lang.Exception: Failed to establish chain from reply

热度:80   发布时间:2023-12-18 05:53:58.0

祭奠赛门铁克的ssl证书.此坑是运维到今遇到最坑没有之一,搞了两天时间,说一下场景

1,朋友公司的tomcat的ssl证书就要过期了,他就购买了鼎鼎大名的赛门铁克的ssl证书,说一下他的命令操作

1.1,他先用命令生成秘钥库 (其中提示填密码,然后就公司啊,地点,什么什么什么的,如果是测试环境自己可以随便填,生产环境就根据实际情况填写)

keytool -genkey -alias xxxx(这个别名很关键,之后的一些别名必须一致) -keyalg RSA -keystore qqqqq(秘钥库随便你怎么命名,不过命名规范点,B格会高点) -keysize 2048       #执行完之后,你可以直接ls 看得到一个qqqqq的文件
1.2,生成CSR文件,这个文件比较重要,这个文件需要发给赛门铁克添加到证书的信息的
keytool -certreq -alias xxxx(这个别名很关键,之后的一些别名必须一致) -file xxxxx.csr(就是这个B) 
-keystore  qqqqq(秘钥库随便你怎么命名,不过命名规范点,B格会高点) -sigalg SHA256withRSA

1.3然后就到赛门铁克的网站下载属于你的证书,你会看到有3个文件,只有两个是有用的.他们就是(IntermediateCA.cer , ssl_certificate.cer) 也许有些公司的比较高级会多一两个,再说一个重点,就是倒入的时候顺序必须要对,先导入IntermediateCA.cer, 之后再导入ssl_certificate.cer

1.4,导入CA证书IntermediateCA.cer

keytool -import -alias root(这个别名不可以与上面的别名一样,不然就会报这个标题的错) -file IntermediateCA.cer  -keystore qqqqq(秘钥库随便你怎么命名,不过命名规范点,B格会高点)   #输入  yes 就可以了

1.5.导入证书文件ssl_certificate.cer

keytool -import -trustcacerts      \

   -keystore  qqqqq(秘钥库随便你怎么命名,不过命名规范点,B格会高点)  \

 -storepass ########(这个是密码)  \

-alias    xxxx(这个别名很关键,之后的一些别名必须一致) \

-file ssl_certificate.cer

执行完大功告成,然后你可以导出一种人看的格式看看到底是什么玩意

keytool -list -v -keystore  qqqqq(秘钥库随便你怎么命名,不过命名规范点,B格会高点) > kkk.txt

最终需要配置给tomcat的那个家伙就是它了qqqqq(秘钥库随便你怎么命名,不过命名规范点,B格会高点) 配置到server.xml

配置具体就不说了,留连个重要的

 keystoreFile="/tomcat/conf/qqqqq"   #路径

keystorePass="abc123456"          #私钥密码

keyAlias="xxxx"      #别名

 

 

 

  相关解决方案