HTTPS中证书链不完整的解决方案
问题
tomcat8.5配置pfx格式ssl证书后,https可以正常访问,但是(问题与下面这个情况相同):
反馈缺少中间证书:
关于SSL证书
看了下面这些介绍差不多能有个大体的认识,想完全理解还需要多下功夫
其中CRT与CER可以理解成相同的格式,一个用于Linux,一个用于Windows.
中间证书
证书链Certificate Chain与中间证书指的应该是同一个东西
解决方案
问题的原因是没有配置中间证书,那解决方案自然是加上中间证书
获取中间证书
有的证书服务商没给中间证书,没关系,我们可以从crt证书文件中解析出来 当然也可以线下利用ssl工具或者openssl命令等自己解析,方法自行百度
添加中间证书
从SSL证书服务商那里,获得的crt证书文件大概是这个样子的:
-----BEGIN CERTIFICATE----- # 证书内容 -----END CERTIFICATE-----
在你加上中级证书后,新的crt证书文件看起来是这样的:
-----BEGIN CERTIFICATE----- # 证书内容 1 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- # 证书内容 2 -----END CERTIFICATE-----
然后再用这个新的证书和key文件转化出pfx格式证书就OK了
Tomcat配置
<Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol" maxThreads="200" scheme="https" secure="true" SSLEnabled="true" clientAuth="false" sslProtocol="TLS" keystoreFile="d:/server.pfx" keystoreType="pfx" keystorePass="密码" />
上一篇:
IDEA上Java项目控制台中文乱码