使用Openssl生成证书并使用keytool导入相同的证书

在LIferay中使用CAS时,我对SSL有个疑问。

我已经在我的CAS服务器上使用Openssl生成了证书(我启动了本教程 ),现在我将使用Liferay机器上的keytool导入证书。 要使用keytool导入证书,请使用以下命令:

keytool -import -alias tomcatLiferay -file /myopensslcertificate.crt 

但是,当我导入.crt证书文件,并检查CAS连接时,我收到消息: SSL Error 。 如果我尝试使用keytool(keytool -genkey …)在CAS服务器端生成证书我导入此证书使用keytool -import ….我可以连接到CAS服务器,我看不到任何错误…我认为我用错误的方式来生成openssl证书或错误的方式来导入证书(由openssl生成)与keytool。

java keytool不完全支持PEM编码(ascii)证书文件。 您可以通过发出以下命令将其转换为DER编码(二进制)

 openssl x509 -in <der certificate file> -inform PEM -out <pem certificate file> -outform DER 

将证书转换为支持的格式之后,keytool导入应该可以工作。

 keytool -import -trustcacerts -alias <your alias> -file <der certificate file> -keystore <keystore-file> 

这篇博文详细描述了它