97

有没有人遇到过他们必须处理 .truststore 文件的地方?并知道如何将 .cer 导入 .truststore 文件?

我不确定是否必须使用 Java Keytool 或 Linux 命令(例如 openssl 命令)。

谢谢

4

3 回答 3

208
# Copy the certificate into the directory Java_home\Jre\Lib\Security
# Change your directory to Java_home\Jre\Lib\Security>
# Import the certificate to a trust store.

keytool -import -alias ca -file somecert.cer -keystore cacerts -storepass changeit [Return]

Trust this certificate: [Yes]

changeit 是默认的信任库密码

于 2008-12-17T00:42:22.957 回答
26

除了使用sed过滤掉证书,您还可以通过管道openssl s_client输出openssl x509 -out certfile.txt,例如:

echo "" | openssl s_client -connect my.server.com:443 -showcerts 2>/dev/null | openssl x509 -out certfile.txt
于 2012-05-23T20:34:44.917 回答
10

将 .cer 文件导入信任库的方式与从 Firefox 导出导入 .crt 文件的方式相同。

您不必输入密钥库的别名和密码,只需键入:

keytool -v -import -file somefile.crt  -alias somecrt -keystore my-cacerts

最好使用 Java 安装 (jre\lib\security\cacerts) 中已经存在的 cacerts 文件,因为它包含安全的“流行”证书。

关于 cer 和 crt 的差异的更新(只是为了澄清) 根据Apache with SSL - 如何将 CER 转换为 CRT 证书?和用户@Spawnrider

CER 是二进制形式的 X.509 证书,DER 编码。
CRT 是二进制 X.509 证书,封装在文本(base-64)编码中。
它不是相同的编码。

于 2016-09-14T20:24:48.153 回答