1. 准备cer格式的证书;
2. 合并cer证书并转化成jks格式的证书
为啥有这一步,因为cer证书配置在spring boot项目中,项目启动不起来。如果有大佬想指导一下可以给我留言,在此先谢过大佬。
1)先创建一个jks格式的证书。
这一步要求必须安装jdk,我这里用的是jdk1.8,其他版本请自行解决。
记住下边输入的密钥口令,下边要用多次,而且项目中也需要配置;
keytool -genkeypair -alias mykeystore -keyalg RSA -keystore keystore.jks
执行完成后提示了一个 warning,这里需要再执行一下warning的这条命令;
keytool -importkeystore -srckeystore keystore.jks -destkeystore keystore.jks -deststoretype pkcs12
这里的密钥口令也是上边的口令。
2)将根证书导入到jks的文件中。
keytool -import -trustcacerts -alias root -file root.cer -keystore keystore.jks
root.cer就是我的根CA,root这里需自行替换。
这里的密钥口令也是上边的口令。
是否信任此证书? [否]: 输入 是
3)将中级根证书导入到jks文件中
keytool -import -trustcacerts -alias intermediate -file issuer.cer -keystore keystore.jks
这里的密钥口令也是上边的口令。
4)将 公钥证书导入到jks文件中
keytool -importcert -file CN=shebei.slyt.sinopec.com,OU=hdx,L=dcoit,O=yfzx,C=cn.cer -keystore keystore.jks
这里的密钥口令也是上边的口令。
- 检查一下在命令的路径下是否生成了keystore.jks
如果没有生成或者找不到,请重新操作。
3. 将keystore.jks放置到spring boot项目中
4. 配置application.properties
server.port = 8443
server.ssl.enabled = true
server.ssl.key-store = classpath:cert/keystore.jks
server.ssl.key-store-password = 这里的密钥口令也是上边的口令。
server.ssl.key-store-type = JKS
server.ssl.protocol = TLS
5. 启动项目
6. 检查接口是否正常访问
http://127.0.0.1:8443/aa 已经不能访问了,需要更换成 https访问
https访问成功