HTTPS代理服务器python

时间:2015-05-30 18:39:32

标签: python ssl https proxy server

我的ssl服务器有问题(在Python中)。 我在浏览器中设置了SSL代理连接,并尝试连接到我的ssl服务器。

这是服务器:

import BaseHTTPServer, SimpleHTTPServer
import ssl

httpd = BaseHTTPServer.HTTPServer(('0.0.0.0', 443), SimpleHTTPServer.SimpleHTTPRequestHandler)
httpd.socket = ssl.wrap_socket (httpd.socket, server_side=True, certfile='server.crt', keyfile='server.key', do_handshake_on_connect=False)
httpd.serve_forever()

这是错误:

SSLError: [SSL: HTTPS_PROXY_REQUEST] https proxy request (_ssl.c:1750)

我尝试在浏览器中连接到服务器。 如果我去处理“https://127.0.0.1:443”,它的工作。 但是,如果我在服务器中使用代理,我会收到错误...

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

我不认为您了解HTTPS的代理服务器是如何工作的。

您正在做的是创建一个普通的HTTPS服务器。您应该做的是创建一个HTTP服务器来处理CONNECT请求并创建到请求目标的隧道。见http://en.wikipedia.org/wiki/HTTP_tunnel#HTTP_CONNECT_tunneling

相关问题