赞
踩
本文详细讲解如何申请免费证书,需要先准备好域名,将服务器IP和域名绑定。
1、注册FreeSSL账号
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服务。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。