ProxHTTPSProxy: Proxomitron SSL 助手
Posted: Jun 10 2010, 11:30
这是我用 Python 写的一个代理服务器程序,主要用来解决 Proxomitron 的 SSL 问题 。
工作原理
- 对 https 请求,返回 "307 Moved Temporarily",将 https 请求变形为 http 格式放在 "Location" header 中。目的是将浏览器从 https 模式切换到 http 模式。
- 对 http 请求,本代理服务器将其还原为 https 请求,获取 https 内容,解密后传递给浏览器。代理服务器和远端服务器的通讯是 https 加密的,而和浏览器的通讯是 http 明文的。这样, Proxomitron 就可以对明文内容进行过滤。
安装
- 从 http://www.python.org/download/ 下载安装 Python 2.x 分支 (或许需要翻墙,感谢郭嘉)
- 从 http://www.slproweb.com/products/Win32OpenSSL.html 下载安装 OpenSSL
- 解压缩附件,执行 ProxHTTPSProxy.py
ProxHTTPSProxy 最初只能作为 Proxomitron 的上级代理来工作。经过改进,现在的版本也可以脱离 Proxomitron 单独使用。本程序支持 http 和 socks5 类型的上级代理, 以及 http 头信息显示。运行选项请参考 config.py 文件。
配合 Proxomitron 使用
很简单,对于想要过滤的 https 网页,将 ProxHTTPSProxy 设为 Proxomitron 的上级代理。注意 https 和 http 请求都需要转发给 ProxHTTPSProxy。别忘了先要将 ProxHTTPSProxy 添加到 Proxomitron 的代理列表里: http://www.proxomitron.cn/help/External ... ialog.html
下面以 sidki 的配置包为例,演示如何修改 Exceptions-U.ptxt 文件。
- 如果想过滤所有 https 网页, 请将浏览器的 https 代理设置为 ProxHTTPSProxy,做如下修改:
- 如果只想过滤某些 https 网页,做如下修改:
(可选): 由于我们不再使用 Proxomitron 的 SSL dll 进行 https 过滤,可以在 Proxomitron 的 config settings 中取消 https 的设定。
如果不打算安装 python,可以选择安装 exe 版本: http://proxfilter.net/ProxHTTPSProxy.zip
工作原理
- 对 https 请求,返回 "307 Moved Temporarily",将 https 请求变形为 http 格式放在 "Location" header 中。目的是将浏览器从 https 模式切换到 http 模式。
- 对 http 请求,本代理服务器将其还原为 https 请求,获取 https 内容,解密后传递给浏览器。代理服务器和远端服务器的通讯是 https 加密的,而和浏览器的通讯是 http 明文的。这样, Proxomitron 就可以对明文内容进行过滤。
安装
- 从 http://www.python.org/download/ 下载安装 Python 2.x 分支 (或许需要翻墙,感谢郭嘉)
- 从 http://www.slproweb.com/products/Win32OpenSSL.html 下载安装 OpenSSL
- 解压缩附件,执行 ProxHTTPSProxy.py
ProxHTTPSProxy 最初只能作为 Proxomitron 的上级代理来工作。经过改进,现在的版本也可以脱离 Proxomitron 单独使用。本程序支持 http 和 socks5 类型的上级代理, 以及 http 头信息显示。运行选项请参考 config.py 文件。
配合 Proxomitron 使用
很简单,对于想要过滤的 https 网页,将 ProxHTTPSProxy 设为 Proxomitron 的上级代理。注意 https 和 http 请求都需要转发给 ProxHTTPSProxy。别忘了先要将 ProxHTTPSProxy 添加到 Proxomitron 的代理列表里: http://www.proxomitron.cn/help/External ... ialog.html
下面以 sidki 的配置包为例,演示如何修改 Exceptions-U.ptxt 文件。
- 如果想过滤所有 https 网页, 请将浏览器的 https 代理设置为 ProxHTTPSProxy,做如下修改:
Code: Select all
# ProxHTTPSProxy
[^/]++:443&$URL(http://*) $SET(0=i_proxy:3.) $SETPROXY(127.0.0.1:8081)
Code: Select all
# ProxHTTPSProxy
# Add specific URLs like below
ssl.scroogle.org: $SET(0=i_proxy:3.) $SETPROXY(127.0.0.1:8081)
如果不打算安装 python,可以选择安装 exe 版本: http://proxfilter.net/ProxHTTPSProxy.zip