与HTTP代理建立安全连接

时间:2017-09-07 21:21:40

标签: python python-2.7 ssl http-proxy

我正在尝试创建一个HTTP客户端,它必须通过转发代理与公共网络中的源服务器联系。与代理和原始服务器的通信必须是相互TLS。

我尝试使用python的请求库来执行此操作 -

import requests
from requests.exceptions import Timeout, ConnectionError

origin_url="https://origin_server.com/"
CA_CHAIN_FILE = 'ca.pem'
SERVER_KEY = 'server.cer'
PRIV_KEY = 'private.key'

auth_tuple = None
timeout_sec = 5
proxies = {
    'https': 'https://fwd_proxy.cust1.com:8445'
}
headers = { 'User-Agent': 'My User Agent' }
payload = {}

resp = requests.get(origin_url, data=payload, verify=CA_CHAIN_FILE, auth=auth_tuple, headers=headers, cert=(SERVER_KEY, PRIV_KEY),  timeout=timeout_sec, proxies=proxies)

但是上面的代码以纯文本形式发送HTTP CONNECT,并且不首先与代理建立ssl连接。有没有办法使用请求库或任何其他python模块实现这一点?

0 个答案:

没有答案