python3 快速生成 https 所需证书

from OpenSSL import crypto, SSL

def generate_certificate(
organization="PrivacyFilter",
common_name="https://www.url.com",
country="NL",
duration=(365 * 24 * 60 * 60),
keyfilename="key.pem",
certfilename="cert.pem"):

k = crypto.PKey()
k.generate_key(crypto.TYPE_RSA, 4096)

cert = crypto.X509()
cert.get_subject().C = country
cert.get_subject().O = organization
cert.get_subject().CN = common_name
cert.gmtime_adj_notBefore(0)
cert.gmtime_adj_notAfter(duration)
cert.set_issuer(cert.get_subject())
cert.set_pubkey(k)
cert.sign(k, 'sha512')

with open(keyfilename, "wt") as keyfile:
keyfile.write(crypto.dump_privatekey(crypto.FILETYPE_PEM, k).decode("utf-8"))
with open(certfilename, "wt") as certfile:
certfile.write(crypto.dump_certificate(crypto.FILETYPE_PEM, cert).decode("utf-8"))

if __name__ == '__main__':
generate_certificate()

快速生成一个非安全的测试用证书,我运行了一下,发现可以在win10环境中运行上述代码生成证书和私钥。

运行fastapi

我的终端运行指令:

uvicorn tst-sql.main:app --ssl-keyfile ./cert/key.pem --ssl-certfile ./cert/cert.pem

原运行代码:

 uvicorn.run("PrivacyFilterAPI:privacyFilterApp",
host="0.0.0.0", port=8000, reload=True,
ssl_keyfile="./key.pem", ssl_certfile="./cert.pem"
)

摘自:https://zhuanlan.zhihu.com/p/387353414

小工具 xca

xca下载地址:http://xca.hohnstaedt.de/

使用说明,见博客https SSL 自建证书的制作

转: fastapi https 配置的更多相关文章

  1. 烂泥:haproxy学习之https配置

    本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb. 在前一段时间,我写了几篇有关学习haproxy的文章.今天我们再来介绍下haproxy ...

  2. haproxy学习之https配置

    haproxy学习之https配置   原文  http://www.cnblogs.com/ilanni/p/4941056.html   如何配置https,以及https在实际生产环境中的应用. ...

  3. Apache https 配置指南

    Windows Apache HTTPS配置创建下面3个目录: C:\Program Files\Apache Group\Apache2\conf\sslC:\Program Files\Apach ...

  4. nginx常用配置系列-HTTPS配置

    接上篇,nginx配置系列 HTTPS现在已经很流行,特别是AppStore上线的应用要求使用HTTPS进行通信,出于安全考虑也应该使用HTTPS,HTTPS配置需要准备证书文件,现在也有很多免费证书 ...

  5. Tomcat8配置Https协议,Tomcat配置Https安全访问,Tomcat Https配置

    Tomcat8配置Https协议,Tomcat配置Https安全访问,Tomcat Https配置 ============================== ©Copyright 蕃薯耀 2017 ...

  6. nginx普通配置/负载均衡配置/ssl/https配置

    1.nginx普通配置 server { listen ; server_name jqlin.lynch.com; access_log /var/log/nginx/main.log main; ...

  7. apache https配置【转】

    博文来源:apache https配置 参考博文:apache.nginx配置自签名证书 1.  确认是否安装ssl模块 是否有mod_ssl.so文件 2.  生成证书和密钥 linux下 步骤1: ...

  8. https进行配置以及http跳转到https配置

    https配置: nginx配置 server { listen 443; server_name localhost; ssl on; root html; index index.html ind ...

  9. SSL 原理及 https 配置

    目录 1. SSL 原理 1.1. SSL 简介 1.2. 主要概念 1.3. 建立安全连接的过程 2. https 配置 (以 nginx 为例) SSL 原理 SSL 简介 SSL (Secure ...

  10. Spring Boot SSL [https]配置例子

    前言 本文主要介绍Spring Boot HTTPS相关配置,基于自签证书实现: 通过本例子,同样可以了解创建SSL数字证书的过程: 本文概述 Spring boot HTTPS 配置 server. ...

随机推荐

  1. fork后更新仓库代码

    目录 fork后更新仓库代码 场景: 模型 操作方法如下: 方法一.从github上进行操作然后更新 如何在 Github 网页端同步更新? 方法二.通过命令行fetch拉取原仓库更新 fork后更新 ...

  2. 从XML配置角度理解Spring AOP

    本文分享自华为云社区<Spring高手之路18--从XML配置角度理解Spring AOP>,作者: 砖业洋__. 1. Spring AOP与动态代理 1.1 Spring AOP和动态 ...

  3. 用 C 语言开发一门编程语言 — 异常处理

    目录 文章目录 目录 前文列表 异常捕获 定义 Lisp Value 函数 前文列表 <用 C 语言开发一门编程语言 - 交互式解析器l> <用 C 语言开发一门编程语言 - 跨平台 ...

  4. Netflow/IPFIX 流量收集与分析

    目录 文章目录 目录 Netflow(网络数据流检测协议) IPFIX(网络流量监测) IPFIX 组网架构 IPFIX 应用场景 Usage-based Accounting(基于使用流量的计费) ...

  5. 智能制造 | AIRIOT智慧工厂管理解决方案

      工厂生产运转中,设备数量多,环境复杂.企业往往需要承担很高的维修.保养.备件和人力成本.传统的工厂改革遇到了诸多前所未有的挑战:   1.管理系统较多,数据隔离,系统集成困难重重: 2.大量老旧设 ...

  6. 聊聊 JSON Web Token (JWT) 和 jwcrypto 的使用

    哈喽大家好,我是咸鱼. 最近写的一个 Python 项目用到了 jwcrypto 这个库,这个库是专门用来处理 JWT 的,JWT 全称是 JSON Web Token ,JSON 格式的 Token ...

  7. ubuntu禁止指定的软件升级

    禁止软件升级 sudo echo 软件包名 hold | sudo dpkg --set-selections 取消软件禁止升级的限制 sudo echo 软件包名 install | sudo dp ...

  8. Android 13 - Media框架(22)- ACodec(四)

    关注公众号免费阅读全文,进入音视频开发技术分享群! 前面两节我们了解了 ACodec 的创建及配置流程,配置完成后 ACodec 进入了 LoadedState,这一节开始将会了解 ACodec 的启 ...

  9. [HNOI2005] 狡猾的商人's 题解 (差分约束系统)

    题目描述 给你一个\(n\)元一次方程,判断是否有解,方程给出的格式为 \(a-b=c\) 思路 这道题看上去是一道题目看上去就是判断给出条件是否有矛盾,所以就自然而然的可以使用带权并查集 但是因为我 ...

  10. linux 环境下安装python3.7

    虽然Linux系统默认自带python环境但是比较老了,今天有需要刚好重新配置一下,其他版本同理!不局限于python3.7.0 终端下到python官网找到下载路径, 用wget下载py3.7 wg ...