利用java和openssl生成自制证书
2020-08-18 本文已影响0人
酸奶泡奥利奥
我用的是tomcat7.0
新建文件夹 把生成的文件放在该目录里
创建私钥
生成私钥命令:openssl genrsa -out ca/ca-key.pem 1024
image.png
创建证书请求
命令:openssl req -new -out ca\ca-req.csr -key ca\ca-key.pem
image.png
制作服务器证书
用 java 自带的 keytool工具生成密钥(密码123456)
命令:keytool -genkey -alias example -validity 365 -keyalg RSA -keysize 1024 -keypass 123456 -storepass 123456 -keystore example.jks
image.png
用keytool工具生成证书请求(涉及到的证书名字是 example)
命令:keytool -certreq -alias example -sigalg MD5withRSA -file example.csr -keypass 123456 -keystore example.jks -storepass 123456
根据证书请求,用CA签证,生成服务器证书
命令:openssl x509 -req -in example.csr -out example.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -days 365 -set_serial 1
image.png
向 本地keystore 密钥库中导入证书
命令:keytool -import -v -trustcacerts -keypass 123456 -storepass 123456 -alias root -file ca/ca-cert.pem -keystore example.jks
image.png
导入服务器证书
命令:keytool -import -v -trustcacerts -storepass 123456 -alias example -file example.pem -keystore example.jks
image.png
单独导出 CA 作为信任证书
命令:keytool -import -alias example-ca -trustcacerts -file ca/ca-cert.pem -keystore exampletrust.jks
image.png
查看证书
image.png