如何在Java中导入openssl生成的证书?

时间:2018-01-29 05:47:01

标签: java ssl openssl ssl-certificate

我已经通过openssl像这样创建了一个证书

Openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout tls.key -out tls.crt -subj "/CN=nginxsvc/O=nginxsvc"

现在我想将此证书导入客户端机器Java。如何导入此证书?使用keytool导入证书是正确的方法吗?

1 个答案:

答案 0 :(得分:-1)

我得到了解决方案,因为我的虚拟机没有DNS名称所以在生成带有IP地址的证书使用命令时,如果你使用了DNS名称。

Openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout tls.key -out tls.crt -subj "/CN=135.250.138.150/O=135.250.138.150"

现在在客户机中使用此命令

keytool -import -file C:\Code_Base\Certificates\NGINX_150\tls.crt -storepass changeit -keystore "C:\Program Files\Java\jdk1.8.0_152\jre\lib\security\cacerts" alias 135.250.138.150

OR

keytool -import -file <Your .crt file location> -storepass changeit -keystore <Java cacerts file location> alias <Ip address of machine or DNS>