37、SpringBoot使用SSL免费证书

 

第一步、新建SpringBoot项目

 

pom文件:

 

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven.apache.org/xsd/maven-4.0.0.xsd">

  <!-- 基本信息 -->

  <modelVersion>4.0.0</modelVersion>

  <groupId>com.easystudy</groupId>

  <artifactId>sring-maven-test</artifactId>

  <version>0.0.1-SNAPSHOT</version>

  <name>测试</name>

  <description>描述</description>

  <packaging>jar</packaging>

 

 

  <!-- spring boot项目 -->

  <parent>

      <groupId>org.springframework.boot</groupId>

      <artifactId>spring-boot-starter-parent</artifactId>

      <version>2.0.2.RELEASE</version>

      <relativePath/> <!-- lookup parent from repository -->

  </parent>

 

  <!-- spring web: springMVC依赖:gateway与之冲突 -->

  <dependencies>

       <dependency>

              <groupId>org.springframework.boot</groupId>

               <artifactId>spring-boot-starter-web</artifactId>

              </dependency>

  </dependencies>

</project>

 

入口代码:

 

package com.easystudy;

 

import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.SpringBootApplication;

 

@SpringBootApplication

public class App {

 

    public static void main(String[] args) {

        SpringApplication.run(App.class, args);

    }

 

}

 

控制层:

 

package com.easystudy.controller;

 

import org.springframework.web.bind.annotation.GetMapping;

import org.springframework.web.bind.annotation.RestController;

 

@RestController

public class HelloController {

 

    @GetMapping("/hello")

    public String hello(){

        return "hello";

    }

}

 

 

第二步、生成免费证书

2015年基于https这块已经有免费证书,这对于不少SSL证书商家来说是不小的大家,关于如何申请免费证书可以参考:

(1)letencript国外免费证书

(2)freessl官网

 

生成免费证书后用到tomcat下可能需要将pem和key文件转换为pfx文件,这里使用到OpenSSL和JDK的工具keytool,生成后如下(pfx-password文件是自己建立的里面存了密码):

 

 

第三步、使用证书

 

见pfx证书文件防止在资源文件夹下:

 

修改配置文件:

# 第一个高可用注册中心

server:

  # 指定服务端口-https默认端口

  port: 443

  # ssl配置

  ssl:

    key-store: classpath:name.pfx

    key-store-password: dw123456

    keyStoreType: PKCS12

 

注意:这里指定的端口为443,即https默认的端口,使用https的时候可以不用输入对应端口;

 

第四步、启动SpringBoot应用

 

启动最后监听在443端口成功。

 

如果443端口被占用,使用 netstat -ano | findstr "443" 找到对应的PID,然后查找PID对应进程名: tasklist |findstr "PID",最后直接干掉进程:taskkill /f /t /im 进程名(当然直接到任务管理器找到进程id干掉也可)

 

第五步、访问应用

 

(1)使用ip访问:https://localhost/

发现可以访问,但是使用localhost域名是不受信任的,换成与证书相同的域名,为了测试配置hosts文件将域名指向自己的ip:192.168.12.8

 

 

(2)使用与证书相同的域名访问

安全!受信任!使用google测试如下:

 

快来成为我的朋友或合作伙伴,一起交流,一起进步!
QQ群:961179337
微信:lixiang6153
邮箱:lixx2048@163.com
公众号:IT技术快餐
更多资料等你来拿!

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

贝壳里的沙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值