如何导入Java密钥库中的现有X.509证书和私钥以在SSL中使用?

我在ActiveMQ配置中有这个:

<sslContext>
        <sslContext keyStore="file:/home/alex/work/amq/broker.ks"  
 keyStorePassword="password" trustStore="file:${activemq.base}/conf/broker.ts" 
 trustStorePassword="password"/>
</sslContext>

我有一对X.509证书和一个密钥文件.

如何导入这两个以便在SSL和SSL stomp连接器中使用它们?我可以谷歌的所有例子总是自己生成密钥,但我已经有了密钥.

我试过了

keytool -import  -keystore ./broker.ks -file mycert.crt

但这只导入证书而不是密钥文件并导致结果

2009-05-25 13:16:24,270 [localhost:61612] ERROR TransportConnector - Could not accept connection : No available certificate or key corresponds to the SSL cipher suites which are enabled.

我尝试连接证书和密钥但得到了相同的结果.

如何导入密钥?

最佳答案
信不信由你,keytool不提供将私钥导入密钥库等基本功能.您可以尝试使用私有密钥将PKSC12文件合并到密钥库来使用此workaround.

或者只是使用来自IBM的更加用户友好的KeyMan进行密钥库处理而不是keytool.exe.

转载注明原文:如何导入Java密钥库中的现有X.509证书和私钥以在SSL中使用? - 代码日志