在上一篇文章中已经实现了生成数字证书,接下来的下一步就是将其使用。
但是在java环境中用的证书形式有p12格式的,jks格式的,所以需要做转换,以p12为例:
openssl pkcs12 -export -clcerts -in server.crt -inkey server.key -out server.p12
输入密码后进行配置:
首先用命令查询一下别名
keytool -list -keystore server.p12
1.添加到spring boot项目
把server.p12复制到spring boot的 src/main/resources/ 目录下,和application.properties平级
2.进行配置
##HTTPS配置
#密钥路径
#https加密端口号 443
server.port=443
server.ssl.key-store=classpath:server.p12
#证书密码
server.ssl.key-store-password=liuqihao
#别名
server.ssl.key-alias=1
server.ssl.key-store-type=PKCS12
运行,完成!3.解决不安全警告
点击URL输入栏上那个不安全的警告:
通过证书路径tab页可以看到由于咱们是自建CA,CA 根证书不受信任,得手动将CA根证书添加到“受信任的根证书颁发机构”存储区中。怎么添加呢?
记得我们上一篇文章中生成的文件吧?
打开目录:
双击ca_public_crt
点击安装证书,一路下一步。
这时候问题还没有解决:
他变成了这样,那么接下来只能加入到存储区了:
1 .win+r 运行mmc
2.文件>添加删除管理单元;
3.在可用的管理单元中选择”证书“,点击添加-->确定
4.在控制节点中展开证书-->受信任的证书颁发机构-->证书,右击所有任务-->导入
然后就没有问题了。
当然.....
在chrome上还是会显示不安全的,
为了确保您安全上网,Chrome 会要求网站使用来自受信任组织发放的证书。
chrome上有这么一句话,就是说我个人签发的一定会有问题,吐血三升,当然我们也可以在chrome中把证书加入,可以看一下怎么操作。
1.打开Google Chrome,点右上角三个点,点击设置:
2.在打开的页面上点击左上角的设置:
点击高级->隐私设置和安全性,点击管理证书:
3.导入:
点击受信任的根证书颁发机构:导入。完事了。