前面说过遇到更换SSL证书的问题,一开始找到是用代码去屏蔽SSL的验证.
这样的话,就跳过了所有的验证,相当于认同所有的SSL证书.
这样明显是不合适的...所以后面又开始找方法..将SSL的证书导入JRE的库中..这样的话就可以管理自己认证证书.
第一步、下载安全证书
在浏览器中查看证书(最好是用IE浏览器)...在详细信息栏,点复制文件.
选择Base64编码...点下一步!
将生成的证书导出来!
第二步、将证书导入java的cacerts证书库
登录Tomcat所在的机器,切换到目录 ${JAVA_HOME}/jre/lib/security, 执行如下命令:
keytool -import -alias test -keystore cacerts -file ${JAVA_HOME}/jre/lib/security/test.cer
其中:
-alias 指定别名(推荐和证书同名)
-keystore 指定存储文件(此处固定)
-file 指定证书文件全路径(证书文件所在的目录)
注意:当切换到 cacerts 文件所在的目录时,才可指定 -keystore cacerts, 否则应该指定全路径;
此时命令行会提示你输入cacerts证书库的密码,敲入changeit即可,这是java中cacerts证书库的默认密码,当然也可自行修改。
可使用如下命令查看证书信息:
keytool -list -keystore cacerts -alias test
如需更新证书,应先删除原证书,再导入新证书:
cd ${JAVA_HOME}/jre/lib/security
keytool -delete -alias test -keystore cacerts
keytool -import -alias test -keystore cacerts -file ${JAVA_HOME}/jre/lib/security/test.cer
keytool -list -keystore cacerts -alias test