我对在 LIferay 中使用 CAS 期间的 SSL 有疑问。
我已经使用 Openssl 生成了证书(我遵循了这个教程) 在我的 CAS 服务器上,现在我想使用 Liferay 机器上的 keytool 导入证书。要使用 keytool 导入证书,我使用以下命令:
keytool -import -alias tomcatLiferay -file /myopensslcertificate.crt
但是当我导入 .crt 证书文件并检查 CAS 连接时,我收到消息:SSL Error
。如果我尝试在 CAS 服务器端使用 keytool(keytool -genkey...)生成证书,我会使用 keytool -import .... 导入此证书。我可以连接到 CAS 服务器,并且没有看到任何错误...我认为我使用了错误的方法通过 openssl 生成证书或使用了错误的方法通过 keytool 导入证书(使用 openssl 生成)。
答案1
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>