1. 使用JDK (本环境为 JDK 1.8) 的 keytool 工具创建 .keystore 文件
keytool -genkey -alias mgr -keyalg RSA -keysize 2048 -dname "CN=isompmgr.cnpcs,OU=bj,S=bj,C=CN" -keypass 123456 -validity 3650 -keystore E:\mgr.keystore -storepass 123456
私钥别名:mgr
秘钥长度:2048
被认证过的二级域名:isompmgr.cnpcs
keystone文件的输出目录:E:\mgr.keystore
keypass、storepass密码:123456
建议目录不要包含中文和空格。
2. 生成证书请求文件
keytool -certreq -alias mgr -file E:\cert_req.pem -keypass 123456 -storepass 123456 -keystore E:\mgr.keystore
私钥别名:mgr
pem文件的输出目录:E:\cert_req.pem
keypass、storepass密码:123456
keystone文件的所在目录:E:\mgr.keystore
建议目录不要包含中文和空格。
3. 提交证书请求文件,导入服务器证书等文件
将cert_req.pem证书请求文件提交公司,并等待相关证书生成。
将以下三个 .cer 证书 (名称可能会随机) 导入keystone文件:
服务器证书:sign.cer
根证书:root.cer
二级根证书:sub_root.cer
keytool -import -v -trustcacerts -alias root -file E:\设备根证.cer -keystore E:\mgr.keystore -storepass 123456
keytool -import -v -trustcacerts -alias subroot -file E:\设备CA二级根证.cer -keystore E:\mgr.keystore -storepass 123456
keytool -import -trustcacerts -alias mgr -file E:\CN=isompmgr.cnpcs,OU=bj,ST=bj,C=CN.cer -keystore E:\mgr.keystore -storepass 123456
执行第一条命令:
输入“是”,会提示【正在存储 E:\mgr.keystore】
执行后两条命令分别会提示:
证书已添加到秘钥库中
证书回复已安装在密钥库中。
4. 项目中配置 SSL证书
此处项目为 Springboot项目,在application.properties中:
server.port=8443
# 将mgr.keystore文件导入项目中后,配置SSL单向证书认证
# server.ssl.enabled是否开启ssl,默认: true
server.ssl.key-store=classpath:mgr.keystore
server.ssl.key-store-password=123456
server.ssl.key-store-type=JKS
server.ssl.key-alias=mgr
#WANT、NEED
server.ssl.client-auth=WANT
server.ssl.trust-store-password=123456
5. 同时要在本机host中添加配置如下内容:
11.11.61.100 isompmgr.cnpcs
6. 验证
访问https://isompmgr.cnpcs:8443即可验证是否配置成功