数字证书:如何将.cer文件导入到.truststore文件中使用?

问题描述:

有没有人遇到过他们必须处理.truststore文件的地方?并知道如何将.cer导入.truststore文件?数字证书:如何将.cer文件导入到.truststore文件中使用?

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

感谢

# 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是默认的信任密码

+0

任何一个知道如何OpenSSL的 – Balamurugan 2011-07-11 08:07:42

+7

做这个命令让你下载证书到文件namend certfile.txt:OpenSSL的的s_client.First -connect HOSTNAME:端口2>&1 | sed -ne'/ -BEGIN CERTIFICATE - /,/ - END CERTIFICATE-/p'> certfile.txt ---然后使用keytool将其导入您的信任存储库 – 2011-09-09 10:09:58

而不是使用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 

问题是如何将.cer文件导入到信任库中,但我有一个.crt文件,它我从Firefox导出。

正在搜索互联网如何将.crt导入到信任存储区指向此问题。由于我发现如何在信任库中导入.crt,我也回答了这个问题。

答案是:与.cer文件相同。

顺便说一句,你不必把一个别名和密钥库的密码,可以输入你输入的命令后:

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

最好使用cacerts文件已在你的Java安装(jre \ lib \ security \ cacerts),因为它包含已经安全的“流行”证书。关于CER和CRT的差异

更新(只是为了澄清) 根据Apache with SSL - How to convert CER to CRT certificates?和用户@Spawnrider

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