3 回答
TA贡献1862条经验 获得超6个赞
Java 8解决方案:我刚遇到这个问题并通过将远程站点的证书添加到我的Java密钥库来解决它。我的解决方案基于myshittycode博客的解决方案,该解决方案基于mykong博客中的先前解决方案。这些博客文章解决方案归结为下载名为InstallCert的程序,该程序是一个Java类,您可以从命令行运行以获取证书。然后,继续在Java的密钥库中安装证书。
该InstallCert自述工作完美的我。您只需运行以下命令:
javac InstallCert.java
java InstallCert [host]:[port](在运行命令时输入要在列表中添加的证书的给定列表编号 - 可能只是1)
keytool -exportcert -alias [host]-1 -keystore jssecacerts -storepass changeit -file [host].cer
sudo keytool -importcert -alias [host] -keystore [path to system keystore] -storepass changeit -file [host].cer
如果需要,请参阅引用的README文件以获取示例。
TA贡献1871条经验 获得超13个赞
以下是我用于将网站的公共证书安装到系统密钥库以供使用的解决方案。
使用以下命令下载证书:
unix,linux,mac
openssl s_client -connect [host]:[port|443] < /dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > [host].crt
视窗
openssl s_client -connect [host]:[port|443] < NUL | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > [host].crt
这将创建一个可用于导入密钥库的crt。
使用以下命令安装新证书:
keytool -import -alias "[host]" -keystore [path to keystore] -file [host].crt
这将允许您从导致异常的站点导入新证书。
添加回答
举报