python快速搭建https服务器

本文介绍了在ubuntu操作系统上搭建https服务器的过程

在一台连接到网络的主机上搭建https服务器,假设该主机的ip地址为:10.98.69.174

创建证书example.crt和私钥example.key

bash 复制代码
openssl req -newkey rsa:2048 -nodes -keyout example.key -x509 -days 365 -out example.crt

使用命令可以查看证书详情

bash 复制代码
openssl x509 -in example.crt -text -noout

编辑python脚本文件https_server.py

python 复制代码
import ssl
from http.server import HTTPServer, BaseHTTPRequestHandler

class MyRequestHandler(BaseHTTPRequestHandler):
    def do_GET(self):
        pass

if __name__ == '__main__':
    context = ssl.create_default_context(ssl.Purpose.CLIENT_AUTH)
    context.load_cert_chain(certfile='./example.crt', keyfile="./example.key")

    ciphers = 'ECDHE-ECDSA-AES128-GCM-SHA256:TLS_CHACHA20_POLY1305_SHA256...'
    context.set_ciphers(ciphers)

    ciphers_suit = context.get_ciphers()
    for i in range(len(ciphers_suit)):
        print(f"{i}: {ciphers_suit[i]['name']}")

    httpd = HTTPServer(('0.0.0.0', 4443), MyRequestHandler)
    httpd.socket = context.wrap_socket(httpd.socket, server_side=True)
    httpd.serve_forever()

然后运行python脚本

bash 复制代码
python3 https_server.py

可以在局域网内通过火狐浏览器访问 https://10.98.69.174:4443 查看https服务器是否已经生效

本文在写作中,以下文章给作者带来了很大的帮助,特此表示感谢

快速架设Python HTTPS服务 - 又是火星人 - 博客园

相关推荐
七夜zippoe3 分钟前
OpenClaw memory_search:语义搜索实战
服务器·网络·memory·语义搜索·openclaw
计算机安禾5 分钟前
【计算机网络】第21篇:HTTP/2与HTTP/3——二进制分帧、流多路复用与QUIC传输
网络协议·计算机网络·http
深邃-6 分钟前
【Web安全】-云服务器与Docker(2):Docker镜像操作,Docker容器操作,Docker搭建漏洞靶场
linux·服务器·web安全·网络安全·docker
techdashen22 分钟前
你的社交数据,凭什么归平台所有?用 Cloudflare 搭建去中心化社交应用
服务器·去中心化·php
流浪00123 分钟前
Linux基础篇 (一) 不费力掌握入门级命令
linux·运维·服务器
楼田莉子26 分钟前
仿Muduo的高并发服务器:基于Tcp协议的回显服务器
linux·服务器·c++·后端
S1998_1997111609•X42 分钟前
论述情况盀导致系统应用通信通讯协议被恶意注入污染蜜罐开元盀用于非法侵入爬虫植入ssd的通用技术原理
网络·网络协议·百度·哈希算法·开闭原则
Yupureki1 小时前
《MySQL数据库基础》6.表的增删查改
linux·服务器·数据库·mysql
CDN3602 小时前
【硬核架构】2026年服务器运维:Rust重写核心组件与eBPF内核观测的实战
运维·服务器·架构
Yupureki9 小时前
《Linux网络编程》8.网络层IP原理
linux·运维·服务器·网络·ip