Springboot配置https(证书是windows下使用keytool生成ssl)

本文介绍了如何使用JDK自带的keytool工具生成自签名证书,包括命令行参数详解和生成流程。同时,展示了在Springboot应用中配置SSL证书的步骤,以及遇到的‘cannotload’异常的解决方法,涉及到资源配置及Maven资源过滤的调整。
摘要由CSDN通过智能技术生成

JDK中keytool是一个证书管理工具,可以生成自签名证书。 就是自己生成的证书,并不是官方生成的证书。除非是很正式的项目,否则使用自己签发的证书即可,因为官方生成证书需要花钱。

  1. 生成证书

    win+r进入"运行界面",输入cmd进入命令行界面
    需要先配置好jdk环境变量才能使用
    输入:

    keytool -genkey -alias tomcat -keyalg RSA -keystore 目录/tomcat.keystore

    其中-genkey 指生成keystore ,-alias 指别名,-keyalg 指使用的加密算法,-keystore 后面跟上生成的keystore目录

    回车后会出现以下提示:

    输入密钥库口令:tomcat 再次输入新口令:tomcat 您的名字与姓氏是什么? [Unknown]:
    xxx.xxx.xxx.xxx 您的组织单位名称是什么? [Unknown]: cx 您的组织名称是什么? [Unknown]:
    cx 您所在的城市或区域名称是什么? [Unknown]: hb 您所在的省/市/自治区名称是什么? [Unknown]: hb
    该单位的双字母国家/地区代码是什么? [Unknown]: cn CN=tuhao, OU=tuhaojia, O=fnic,
    L=didu, ST=didu, C=cn是否正确? [否]: y

    输入 tomcat 的密钥口令
    (如果和密钥库口令相同, 按回车):

    这里大部分可以随意填写,但需要注意:
    一点是密钥口令要记住,后面配置服务器的时候要用上。
    展示如下在这里插入图片描述
    然后在对应的文件夹生成tomcat.keystore文件
    在这里插入图片描述
    生成 .keystore后可以用

    keytool -export -alias tomcat -keystore 目录/tomcat.keystore -storepass tomcat -rfc -file 目录/tomcat.cer

    生成一个cer证书,可以发送给客户端安装,安装在信任的证书中后再访问就不会出现“此网站的安全证书存在问题”的提示。
    在这里插入图片描述
    然后在对应的文件夹生成tomcat.cer文件

  2. 在Springboot中配置证书
    将tomcat.keystore拷贝到项目resources目录下
    配置application.yml

server:
  # 服务器的HTTP端口,默认为8080
  port: 8080
  ssl:
  	#文件所在位置
    key-store: classpath:tomcat.keystore
    #keystore的密码
    key-store-password: tomcat
    key-store-type: JKS
    key-alias: tomcat
  1. 服务启动报错can not load的异常
    问题分析
    到编译生成的target\class去找这个文件,发现确实没有这个文件,那么就是在编译的时候将这个文件排除了。
    解决方案
    maven-resources-plugin插件的时候:开了过滤器,在pom中添加配置:
 <build>
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <filtering>true</filtering>
            <excludes>
                <exclude>*.keystore</exclude>
            </excludes>
        </resource>
        <resource>
            <directory>src/main/resources</directory>
            <filtering>false</filtering>
            <includes>
                <include>*.keystore</include>
            </includes>
        </resource>
    </resources>
</build>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值