小编Sen*_*sei的帖子

Python 3:如何从服务器端记录SSL握手错误

我正在使用HTTPServer作为使用SSL的基本HTTP服务器.我想记录客户端何时启动SSL握手(或者可能是任何时候接受套接字?)以及任何相关的错误.我想我需要扩展一些类或覆盖一些方法,但我不确定哪个或如何正确地实现它.我非常感谢任何帮助.提前致谢!

修剪示例代码:

from http.server import BaseHTTPRequestHandler, HTTPServer
from socketserver import ThreadingMixIn
from threading import Thread
import ssl
import logging
import sys

class MyHTTPHandler(BaseHTTPRequestHandler):
    def log_message(self, format, *args):
        logger.info("%s - - %s" % (self.address_string(), format%args))
    def do_GET(self):
        self.send_response(200)
        self.end_headers()
        self.wfile.write('test'.encode("utf-8"))

class ThreadedHTTPServer(ThreadingMixIn, HTTPServer):
    pass

logger = logging.getLogger('myserver')
handler = logging.FileHandler('server.log')
formatter = logging.Formatter('[%(asctime)s] %(message)s')
handler.setFormatter(formatter)
logger.addHandler(handler)
logger.setLevel(logging.DEBUG)

server = ThreadedHTTPServer(('', 443), MyHTTPHandler)
server.socket = ssl.wrap_socket (server.socket, keyfile='server.key', certfile='server.crt', server_side=True, cert_reqs=ssl.CERT_REQUIRED, ca_certs='client.crt')
Thread(target=server.serve_forever).start()

try: 
    quitcheck = input("Type 'quit' at any time to …
Run Code Online (Sandbox Code Playgroud)

python ssl logging

3
推荐指数
1
解决办法
3961
查看次数

标签 统计

logging ×1

python ×1

ssl ×1