プロキシ サーバーで SSL トンネリングを使用してターゲット サーバーに接続しています。http を使用してプロキシ サーバーに接続し、HTTPS を使用してターゲット サーバーに接続します。SSL トンネリングは正常に機能し、HTTPS メッセージをリモート サーバーと交換できますが、問題があります。プロキシ サーバーは、必要な SSL トンネルを確立するために urllib2 の要求への応答でヘッダーを返しますが、urllib2 (Python 2.7.3) を使用してアクセスする方法がわかりません。
理論的には SSL トンネリング ハンドシェイクを自分で実装できると思いますが、そうすると、自分が望んでいるよりもプロトコルに深く入り込んでしまいます (または、快適だと感じます)。
SSL トンネルを確立するときに urllib2 を使用して応答にアクセスする方法はありますか?
アップデート:
プロキシ サーバーを使用してターゲット サーバーに接続するコードを次に示します (プロキシ サーバーとターゲット サーバーの URL は実際のものではありません)。
proxy_handler = urllib2.ProxyHandler({'https': 'http://proxy.com'})
url_opener = urllib2.build_opener (proxy_handler)
request = urllib2.Request ('https://target_server.com/')
response = url_opener.open (request)
print response.headers.dict
WireShark を使用して、メッセージ トラフィックを調べました。WireShark では、ターゲット サーバーと交換されたメッセージの本文は暗号化されているため表示されませんが、SSL トンネル ハンドシェイクの本文は表示されます。関心のあるヘッダーがプロキシ サーバーから戻ってくるのを確認できます。