SSL 证书链不完整,抽取完整链生成新证书的源密钥库口令
- 先讲清楚问题吧,昨天发现的问题,服务号上发送的模板消息点击打开详情页显示空白页面,试过3个安卓手机都是这样,苹果手机上就好的,并且在PC端微信中点击也能打开详情页,网上搜索了下都说是证书链不完整导致的。
- 问题是,我的证书是在腾讯云服务器中申请并且下载的,然后将证书导入到
Tomcat
中,已经用了近一个月的时间(模板消息中的详情页可以打开),在昨天突然发现详情页点开空白了。记得应该是没动过服务器。 - 在
[https://www.myssl.cn/tools/downloadchain.html](https://www.myssl.cn/tools/downloadchain.html)
提取出了中间证书和根证书,将这两个证书的内容拼接到了原来证书的下面(从腾讯云服务器上下载来会有多个web容器
下用到的不同格式的证书,我拿了nginx
下的后缀是crt
的文件将抽取出的中间证书、根证书的内容黏贴到这个文件的下面) - 然后使用
openssl pkcs12 -export -in 1_www.xdfznh.club_bundle.crt -inkey 2_www.xdfznh.club.key -out to.p12 -name "fulljks "
将crt
文件转换为了p12
文件 - 再使用
keytool -importkeystore -srckeystore to.p12 -srcstoretype PKCS12 -deststoretype JKS -destkeystore keystore.jks
转换为jks
文件(从腾讯云下载来的证书中,给tomcat
使用的证书后缀是jks
的,那么应该是只能用这个格式的吧),转换过程中出现个源密钥库口令
,这个口令是不是申请SSL
证书时自己设定的?现在完全不记得这个口令,我要去哪里找这个口令?或者上面的做饭本来就不对,可以直接将crt
文件用于tomcat
中部署?
跟也是你提的这个问题 https://segmentfault.com/q/10... 有关吧?
应该跟证书链无关了,已在该问题下作答。
补充一下口令的问题,该口令即申请 SSL 证书时的 CSR 私钥口令,云厂商出于安全考虑是不会帮你储存这个信息的,需要你自行保管。如果丢失了,那真的就是丢失了……