SSL部署文档

Python Flask应用程序安装SSL证书


一、生成证书请求


*密钥文件不区分操作系统平台,推荐使用CIM网页工具。

*访问CIM:

*https://cim.itrus.cn


运行CIM网页工具,点击工具箱,点击CSR生成,然后填写证书注册信息,点击生成,然后下拉至底部,点击保存CSR和私钥。请确保您填写的信息真实性和准确性,否则会导致证书申请失败。


以下是示例信息: 

图片3.png


*使用CIM工具创建csr文件之后,将生成的server.csr文件发送给天威诚信,等待证书的签发。请同时备份server.key文件并稍后上传到服务器上进行配置。


*在您收到证书签发邮件之前,请不要删除压缩包中的server.key文件,以避免私钥丢失而导致证书无法安装。

注:如SSL证书已签发,不需要再次生成CSR,开始安装证书即可。

 

将证书签发邮件中的包含服务器证书代码的文本复制出来(包括“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”)粘贴到记事本等文本编辑器中。 


为保障服务器证书在客户端的兼容性,服务器证书需要安装中级CA证书。


在服务器证书代码文本结尾,回车换行不留空行,粘贴证书签发邮件中的 “以下是您的CA证书” 部分里的所有内容(包括“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”),每串证书代码之间均需要使用回车换行不留空行,修改文件扩展名,保存包含证书代码的文本文件为server.pem文件。


步骤二:在Flask网站安装证书

 

执行以下命令,在Linux服务器的/目录下创建一个用于存放证书的目录。

 mkdir /ssl  #创建证书目录,命名为ssl。

将证书文件和私钥文件上传到Linux服务器的证书目录(/ssl)。


说明

1. 

您可以使用远程登录工具附带的本地文件上传功能,上传文件。例如PuTTyXshellWinSCP等。如果您使用的阿里云云服务器 ECS,上传文件具体操作,请参见上传或下载文件(Windows上传文件到Linux云服务器

打开Flask应用文件,参考以下示例代码配置证书。

以下是一段完整的Flask应用示例代码。您可以复制代码内容,并在修改证书路径后保存为test.py以进行测试运行。

# 引入 flask web 框架from flask import Flask

 

app = Flask(__name__)

@app.route("/")def main():

    return "<p>Hello, World!</p>"

# 配置SSL证书# HTTPS的默认访问端口443。# 配置443端口和证书绝对路径。'/ssl/cert.pem'需替换为证书文件绝对路径。'/ssl/cert.key'需替换为证书私钥绝对路径。

context = (r'/ssl/cert.pem', r'/ssl/cert.key')

app.run(host="0.0.0.0", port=443, ssl_context=context)


步骤三:重启Flask应用验证SSL证书是否配置成功

证书安装完成后,您可通过访问证书的绑定域名验证该证书是否安装成功。https://yourdomain   #需要将yourdomain替换成证书绑定的域名。

如果网页地址栏出现小锁标志,表示证书已经安装成功。

图片4.png