FreeSSL申请免费域名证书

本文详细讲解如何申请免费证书,需要先准备好域名,将服务器IP和域名绑定。

1、注册FreeSSL账号

网址: https://freessl.org/

2、申请流程

登录后首页输入域名,然后点击Create certificate,跳转到证书申请页面。

或者在首页点击Account菜单也可以跳转到下面的申请页面。

输入域名后点击Next Step跳转到下面的选项,选择90天的免费证书。

选择自动生成CSR,点击Next Step

最后一步是选择证书套餐,选择Free 90-Day Certificates直接Next Step。

3、域名验证

这一步需要证明域名是你的,有三种验证方法,分别是邮箱验证,DNS和服务器文件上传。

第三种方法只要绑定域名的服务器可以登录就可以,下面使用该方法验证。

**(1)获取验证信息:**上图中的Auth path是一个字符串,内容类似于下面这样,由域名和一段字符组成www.xxxx.com9DFGDFG89HG8ER9HGE.txt

(2)准备验证文件: 在服务器 /home/www/.well-known/pki-validation路径下新建一个文件,名称为9DFGDFG89HG8ER9HGE.txt(也就是Auth path把域名去掉的部分),将上图Auth value中的内容写到该文件中。

(3)启动HTTP服务:/home/www 目录下新建file_server.py,代码内容如下

import os
import flask


app = flask.Flask(__name__)


@app.before_request
def before():
    root_dir = os.path.dirname(__file__)
    sub_dir = flask.request.full_path
    if sub_dir[0] == "/":
        sub_dir = sub_dir[1:]
    if sub_dir[-1] == "?":
        sub_dir = sub_dir[:-1]
    if os.name == "nt":
        sub_dir = sub_dir.replace("/", "\\")

    file_path = os.path.join(root_dir, sub_dir)
    if os.path.exists(file_path):
        return flask.send_file(file_path, as_attachment=False)
    else:
        return file_path


if __name__ == "__main__":
    app.run(host="0.0.0.0", port=80, debug=True)

执行上面的代码开启HTTP服务

python file_server.py

然后在FreeSSL中点击Verify Domain按钮验证,完成验证后下载证书即可。

FreeSSL验证的时候会通过特定的Get请求获取验证文件,请求的URL如下所示

/.well-known/pki-validation/9DFGDFG89HG8ER9HGE.txt

因此也可以用tomcat或者其他方法提供HTTP服务。

相关推荐
jerry-8930 分钟前
系统安全及应用
linux·运维·服务器
叩叮ING1 小时前
正则表达式中常见的贪婪词
java·服务器·正则表达式
AiFlutter1 小时前
在AlarmLinux系统中安装KeyDB
linux·运维·服务器
小徐同学14181 小时前
BGP边界网关协议(Border Gateway Protocol)路由聚合详解
运维·服务器·网络·网络协议·信息与通信·bgp
HaoHao_0101 小时前
AWS Outposts
大数据·服务器·数据库·aws·云服务器
HaoHao_0101 小时前
VMware 的 AWS
大数据·服务器·数据库·云计算·aws·云服务器
晚秋贰拾伍2 小时前
设计模式的艺术-外观模式
服务器·设计模式·外观模式
kyle~3 小时前
Linux--权限
linux·运维·服务器
谁在夜里看海.3 小时前
【Linux-网络】初识计算机网络 & Socket套接字 & TCP/UDP协议(包含Socket编程实战)
linux·运维·服务器·网络·计算机网络
冷影玺4 小时前
网络系统管理Linux环境——StorageSrv之Mariadb
linux·运维·mariadb