如何进行域名购买,获取免费ssl证书,使用springboot绑定ssl证书

介绍

这里是小编成长之路的历程,也是小编的学习之路。希望和各位大佬们一起成长!

以下为小编最喜欢的两句话:

要有最朴素的生活和最遥远的梦想,即使明天天寒地冻,山高水远,路远马亡。

一个人为什么要努力? 我见过最好的答案就是:因为我喜欢的东西都很贵,我想去的地方都很远,我爱的人超完美。因此,小编想说:共勉! 


目录

前言

一、如何进行域名购买

1、阿里云官网购买  阿里云-为了无法计算的价值 (aliyun.com)

 2、可能会遇到域名比价抢手的情况

3、 可以换一个名字,或者一直往下拉,就可以看到你能接受的价格了

4、 加入购物清单,购买成功就直接进入域名控制台(购买时填写信息需要实名认证)

二、获取免费ssl证书

1、进入腾讯云官网 腾讯云 产业智变·云启未来 - 腾讯 (tencent.com)

2、先登录,需要实名认证,登录过后就可以看到下图红框里面的图标了

3、在搜索框里面搜索ssl证书

4、点击产品控制台

5、点击产品控制台 进入到下图页面

6、选择好证书类型,进入以下页面

7、填好信息,域名为在阿里云购买的

8、进入阿里云控制台 

9、在搜索框中搜索云解析DNS

10、进入域名解析,点击解析设置

11、将那个免费获取ssl证书验证里面,添加DNS解析码复制过来,就可以通过验证了

12、点击下载 

12、小编下载的是tomcat  jks,下面讲的是jsk版

三、springboot绑定ssl证书

1、配置443端口步骤

第一步:搜索云服务器ECS

第二步:点击实例 创建实例

第三步:创建免费试用的实例​编辑

第四步:选择配置

第五步:等它运行成功 

第六步: 点击实例进入详情页面

第七步: 点击安全组 去配置规则 

第八步:手动添加443端口

第九步:创建springboot项目

第十步:解压之前下载的证书jks,有如下两个文件,复制进resource资源目录下

第十一步:项目结构

第十二步:创建index.xml页面

第十三步:在application.properties中加入以下代码

第十四步:启动类 SslApplication

第十五步:启动成功

四、jdk自带生成的https

第一步:给jdk所在目录管理员权限

第二步:找到jdk的bin目录

第三步:进入命令行cmd

第四步:路径为bin下

第五步:输入以下代码

第六步: 当你完成以下步骤没有报错,或者被拒绝即为生成成功

第七步:且出现keystore.p12

第八步:在application.properties中加入以下代码

第九步:把之前的ssl证书的配置注释掉,启动类中的重定向和@value也注释掉,就留一个main方法

第十步:运行成功


一、如何进行域名购买

1、阿里云官网购买  阿里云-为了无法计算的价值 (aliyun.com)

 2、可能会遇到域名比价抢手的情况

3、 可以换一个名字,或者一直往下拉,就可以看到你能接受的价格了

4、 加入购物清单,购买成功就直接进入域名控制台(购买时填写信息需要实名认证)

二、获取免费ssl证书

1、进入腾讯云官网 腾讯云 产业智变·云启未来 - 腾讯 (tencent.com)

2、先登录,需要实名认证,登录过后就可以看到下图红框里面的图标了

3、在搜索框里面搜索ssl证书

4、点击产品控制台

5、点击产品控制台 进入到下图页面


6、选择好证书类型,进入以下页面

7、填好信息,域名为在阿里云购买的

 验证域名的时候需要去阿里云的域名下添加一条解析记录(注意:你这里需要点击手动添加一条DNS解析

因为小编已经申请了免费的ssl证书,所以这里就不演示了。直接看如何在阿里云添加解析记录进行验证

8、进入阿里云控制台 

9、在搜索框中搜索云解析DNS

10、进入域名解析,点击解析设置

(注意:你的解析设置可能没有在这里出现,需要自己在更多哪里找一下) 

11、将那个免费获取ssl证书验证里面,添加DNS解析码复制过来,就可以通过验证了

12、点击下载 

12、小编下载的是tomcat  jks,下面讲的是jsk版

 完成上述步骤就可以获取免费的ssl证书了

三、springboot绑定ssl证书

1、配置443端口步骤

第一步:搜索云服务器ECS

第二步:点击实例 创建实例

 第三步:创建免费试用的实例

第四步:选择配置

 

第五步:等它运行成功 

第六步: 点击实例进入详情页面

第七步: 点击安全组 去配置规则

 第八步:手动添加443端口

第九步:创建springboot项目

 

第十步:解压之前下载的证书jks,有如下两个文件,复制进resource资源目录下

 第十一步:项目结构

第十二步:创建index.xml页面

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>你好</h1>
</body>
</html>

第十三步:在application.properties中加入以下代码

# ssl配置
# https加密端口号 443
# 服务器运行端口
server.port=443
# http 监听端口,用于重定向到 https 端口
server.port.http=80
# SSL证书路径 一定要加上classpath,证书名只能有一个后缀,否则找不到不到文件,如:name.cn.jks 则找不到
server.ssl.key-store=classpath:证书名字.jks
# SSL证书密码
server.ssl.key-store-password=证书密码
# 证书类型
server.ssl.key-store-type=JKS

 第十四步:启动类 SslApplication

package com.lyn.ssl;

import org.apache.catalina.Context;
import org.apache.catalina.connector.Connector;
import org.apache.coyote.http11.Http11NioProtocol;
import org.apache.tomcat.util.descriptor.web.SecurityCollection;
import org.apache.tomcat.util.descriptor.web.SecurityConstraint;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory;
import org.springframework.context.annotation.Bean;

@SpringBootApplication
public class SslApplication {
    // http 请求端口,线上配置为 80
    @Value("${server.port.http}")
    private int serverPortHttp;

    // 服务器运行端口,等同于 HTTPS 请求端口,线上 443
    @Value("${server.port}")
    private int serverPortHttps;

    public static void main(String[] args) {
        SpringApplication.run(SslApplication.class, args);
    }
    /**
     * http重定向到https
     */
    @Bean
    public TomcatServletWebServerFactory servletContainer() {
        TomcatServletWebServerFactory tomcat;
        tomcat = new TomcatServletWebServerFactory() {
            @Override
            protected void postProcessContext(Context context) {
                SecurityConstraint constraint = new SecurityConstraint();
                constraint.setUserConstraint("CONFIDENTIAL");
                SecurityCollection collection = new SecurityCollection();
                collection.addPattern("/*");
                constraint.addCollection(collection);
                context.addConstraint(constraint);
            }
        };
        tomcat.addAdditionalTomcatConnectors(httpConnector());

        return tomcat;
    }

    @Bean
    public Connector httpConnector() {
        Connector connector = new Connector(Http11NioProtocol.class.getName());
        connector.setScheme("http");
        //Connector监听的http的端口号
        connector.setPort(serverPortHttp);
        connector.setSecure(false);
        //监听到http的端口号后转向到的https的端口号
        connector.setRedirectPort(serverPortHttps);
        return connector;
    }

}

第十五步:启动成功

四、jdk自带生成的https

第一步:给jdk所在目录管理员权限

(注意:不给管理员权限可能会报错)

 

 

第二步:找到jdk的bin目录

第三步:进入命令行cmd

 

第四步:路径为bin下

 第五步:输入以下代码

keytool -genkey -alias tomcat -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650

第六步: 当你完成以下步骤没有报错,或者被拒绝即为生成成功

注意:密码可能是隐形的,所以最好要记住敲了什么密码

第七步:且出现keystore.p12

注意:如果没有p12可能是将后缀名隐藏了

 第八步:在application.properties中加入以下代码

# jdk自带的https
# 比如 D:/Program Files/Java/jdk1.8.0_231/bin/keystore.p12
server.ssl.key-store=你的jdk路径写到bin/keystore.p12
server.ssl.key-store-password=123456
server.ssl.keyStoreType=PKCS12

第九步:把之前的ssl证书的配置注释掉,启动类中的重定向和@value也注释掉,就留一个main方法

第十步:运行成功

 以上就是小编所要讲的全部内容,希望各位大佬多多指教

猜你喜欢

转载自blog.csdn.net/weixin_60387745/article/details/129235006