Verwendung von SocksiPy mit SSL

Ich versuche, SocksIPy mit dem ssl-Modul (von stdlib) zu verwenden, um das Remote-Zertifikat einer Site abzurufen, aber SocksIPy spielt nicht mit ssl.

Der folgende Code stellt eine Verbindung zu check.torproject.org her und gibt an, dass wir Tor nicht verwenden (was bedeutet, dass SocksIPy nicht funktioniert) (schlecht).

Ich bin mir nicht sicher, ob SocksIPy die beste Lösung dafür ist, aber ich konnte keinen anderen Weg finden, um einen Raw-Socket zu proxifizieren (oder pycurl / urllib2 dazu zu bringen, SOCKS-Proxys zu verwenden und SSL-Zertifikate zu vergeben!).

Zur Verdeutlichung ist mein Problem, dass der Socket nicht als Proxy fungiert. Ich möchte das SSL-Zertifikat mit einem Proxy meiner Wahl erhalten, das passiert nicht.

Scheint gerade, ich kann entweder Proxy oder SSL haben, aber nicht beides. Hilfe!

import socks
import ssl

s = socks.socksocket()
s.setproxy(socks.PROXY_TYPE_SOCKS5, "127.0.0.1", 9050)

ss = ssl.wrap_socket(s)
ss.connect(('check.torproject.org', 443))
ss.write("""GET / HTTP/1.0\r
Host: check.torproject.org\r\n\r\n""")

# print ss.getpeercert()
print ss.read(), ss.read(), ss.read()
ss.close()

Antworten auf die Frage(2)

Ihre Antwort auf die Frage