def run(self, handler):
context = ssl.SSLContext(ssl.PROTOCOL_TLSv1_2)
context.load_cert_chain(handler.certificate_file, handler.private_key_file)
context.load_verify_locations(cafile=handler.certificate_file)
context.load_verify_locations(cafile=handler.crl_file)
context.options &= ssl.OP_NO_SSLv3
context.options &= ssl.OP_NO_SSLv2
context.verify_flags |= ssl.VERIFY_CRL_CHECK_LEAF
context.verify_mode = ssl.CERT_OPTIONAL
self.options['ssl_context'] = context
logger.info('Starting server on host %s port %d.', self.host, self.port)
server = pywsgi.WSGIServer(
(self.host, self.port),
handler,
ssl_context=context,
handler_class=RequestHandler,
log=logger,
error_log=logger,
)
server.serve_forever()
评论列表
文章目录