一 、CA 机构
1.1、ca 私钥生成
openssl genrsa -des3 -out ca.key 2048
-des3 对私钥进行加密
1.2、ca 公钥生成
openssl req -x509 -key ca.key -out ca.crt -days 365
1.3、ca 证书读取
openssl x509 -in ca.crt -text -noout
这个证书称之为根证书
二、 my-site.com 网站证书签发
2.1、 站点私钥
openssl genrsa -out my-site.com.key 2048
2.2、 生成 csr
openssl req -new -key my-site.com.key -out my-site.com.csr
2.3 读取 csr
openssl req -text -noout -verify -in my-site.com.csr
三、 CA签发证书
采用 ca私钥对 mysite的 csr 进行签名
3.1 ca 签名站点
openssl x509 -req -in ../mysite.com/my-site.com.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out my-site.com.crt -days 365
3.2 查看 签名证书
openssl x509 -in my-site.com.crt -text -noout
四、 python 使用证书
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "hello world"
if __name__ == "__main__":
app.run(ssl_context=('my-site.com.crt','my-site.com.key'),host="0.0.0.0")