如何从证书颁发机构提供的PEM文件正确创建java密钥库文件?
问题描述:
我试图通过使用Jetty运行在SSL上的安全站点。我从证书颁发机构收到4个PEM文件:如何从证书颁发机构提供的PEM文件正确创建java密钥库文件?
- 1根证书
- 第二中级证书
- 1证书为我的网站
但我无法得到它的工作。网站要么完全拒绝请求,要么运行正常,但不能识别证书,浏览器会发出警告。我已经试过如下:
keytool -keystore keystore.jks -import -alias server -file server.crt -trustcacerts
...但这会导致请求到该网站是与Chrome的话说,网页无法立即拒绝 - 在所有的服务器上没有错误。我也试过这个:
openssl pkcs12 -export -out keystore.pkcs12 -in server.crt -inkey server-private-key.pem
keytool -importkeystore -srckeystore keystore.pkcs12 -srcstoretype pkcs12 -destkeystore keystore.jks -deststoretype jks
...这导致网站响应请求,但仍然警告证书不被信任。
我需要做什么(如果有的话)与根证书和中级证书。我的尝试失败了,因为我没有使用它们?我无法找到任何信息,拼凑在一起我失踪。
答
将所有证书合并在一起。你server.crt这看起来像这样
----- BEGIN CERTIFICATE -----
1证书为我的网站
----- END CERTIFICATE -----
- ---- BEGIN CERTIFICATE -----
第一中级证书
----- END CERTIFICATE -----
----- BEGIN CERTIFICATE -----
第二中级证书
----- END CERTIFICATE -----
----- BEGIN CERTIFICATE -----
1根证书
----- END CERTIFICATE -----
使用命令:
openssl pkcs12 -export -clcerts -in server.crt -inkey server-private-key.pem -out keystore.pkcs12
keytool -importkeystore -srckeystore keystore.pkcs12 -srcstoretype pkcs12 -destkeystore keystore.jks -deststoretype jks
是否顺序中间证书的重要性,如果是的话,我怎么知道哪个应该先到? – RTF 2014-10-29 20:31:35
无论最后一个问题的答案如何,它都可行 - 谢谢你的好友! – RTF 2014-10-29 20:33:50
@RTF我不知道这个问题的确切答案,但许多消息来源说,你应该把“叶”的证书放在根上。 – Multisync 2014-10-29 20:37:18