GAppProxy从svn r9版本开始支持HTTPS协议

4 views
Skip to first unread message

dug...@188.com

unread,
Jun 23, 2008, 3:11:13 PM6/23/08
to GAppProxy
昨天想到一个让GAppProxy支持HTTPS的办法, 今天晚上花了点时间整理了一下, 初步有个样子, 不过还是问题多多, 比如Google账
户有时能登录, 而大多时候不行.

需要注意的是这个支持HTTPS的方式从原理上破坏了HTTPS固有的安全性, 将HTTPS的安全级别降到了HTTP级, 所以如果你要传输重要数
据, 请不要使用该HTTPS代理.

此外, 要使用HTTPS代理功能, 需要Python 2.6以上版本, 目前2.6只发布了beta版. 使用2.6的原因是以前的Python对
SSL的支持无论在功能还是可靠性上都存在比较严重的缺陷.

接下来我会将时间主要用在完善GAppProxy的主功能, 即Proxy上, 包括HTTP/HTTPS Proxy.

phoenix

unread,
Jun 23, 2008, 3:19:38 PM6/23/08
to gapp...@googlegroups.com

关于对https的支持,我建议在客户端增加一个bypass的选项,即如果检测到https请求,则直接让本机处理。

目前来说,这是一个既能安全使用google服务,又能使用http代理的最好方法。

dug...@188.com

unread,
Jun 24, 2008, 1:00:33 AM6/24/08
to GAppProxy
你说的这个还有更直接的解决办法,可以在浏览器的代理设置中指定GAppProxy只用来代理HTTP,其他协议默认直连。

也可以利用PAC选择代理路径,Firefox用户可以考虑前面朋友推荐的FoxyProxy.

还有,这里有个前提假设,用户是不能直连到需代理网络的,所以直接用HTTPS连接不可行。

WCM

unread,
Jun 24, 2008, 1:16:15 AM6/24/08
to gapp...@googlegroups.com
2008/6/24 dug...@188.com <dug...@188.com>:
你说的这个还有更直接的解决办法,可以在浏览器的代理设置中指定GAppProxy只用来代理HTTP,其他协议默认直连。

也可以利用PAC选择代理路径,Firefox用户可以考虑前面朋友推荐的FoxyProxy.

还有,这里有个前提假设,用户是不能直连到需代理网络的,所以直接用HTTPS连接不可行。


https 主要是登录的时候需要。用其它的代理登录一次,写下 cookie,后面的浏览继续用 GAppProxy。不算完美,但也不算麻烦。


BTW,你前面提到要写文档。我正好有点空,也许可以帮点忙,你可以把精力放到代码上:)。

--
http://lovelywcm.blogspot.com

dug...@188.com

unread,
Jun 24, 2008, 1:32:08 AM6/24/08
to gapp...@googlegroups.com
非常感谢,感觉你对Proxy的了解比较深入,希望你能写的通俗易懂点,因为我感觉即使要单纯用好Proxy也挺复杂了。
 
HTTPS方面我会调整,目的是至少能登录gmail,或者找到不能登录的确切原因。

phoenix

unread,
Jun 24, 2008, 2:00:45 AM6/24/08
to gapp...@googlegroups.com

应该不少人都是用浏览器外壳的,以我现在用的GreenBrowser来说,其代理服务器设置就是对http和https都生效的。所以当我设置GappProxy为代理后,google的https就用不了了。

撇开这个问题不谈,如果硬要支持https,但将其安全级别降到http级别,似乎有些得不偿失。另外,再考虑到通用性,即如果在其他服务器上使用你的服务端,那么该服务器是否需要支持https?

我希望GappProxy的发展方向是象PHProxy一样,可以由用户自行配置到他们的虚拟主机上使用,以减少GAE被盾的可能性,所以应尽量降低对使用环境的限制。

关于GAE因GappProxy被盾的可能性,我认为是非常大的。我从不惮以最坏的恶意来揣度,想想"肝胆相照"这样的公益性网站都被封锁了吧。

最后,关于WCM认为的https只是登陆的时候需要,我不敢苟同。我的Gmail,Google Reader一直是以https的方式使用的。目前Google的服务都能以https来正常使用,所以对https的支持似乎并不紧要。

WCM

unread,
Jun 24, 2008, 2:47:14 AM6/24/08
to gapp...@googlegroups.com
2008/6/24 <dug...@188.com>:
非常感谢,感觉你对Proxy的了解比较深入,希望你能写的通俗易懂点,因为我感觉即使要单纯用好Proxy也挺复杂了。
 
HTTPS方面我会调整,目的是至少能登录gmail,或者找到不能登录的确切原因。


你是指 FoxyProxy 么?这个是一定会写的。FoxyProxy 将会推出类似 Adblock Plus 的在线订阅功能,到时我会为它维护一个用于中国大陆的代理配置文件。相应地,也会介绍各种常见代理服务的优缺点及其安装配置方法。我正在想,是否应该将 GAppProxy 设为默认代理服务器。


我觉得应该详细介绍下如何架设自己的 GAppProxy 服务器,面向那些没有任何 Python 和 GAE 使用经验的人。因为如果用户多起来了,很可能你的帐号会超过 Google 的流量限制。


关于 GMail,我昨天出现了多次循环重定向[1]。但是我使用 FoxyProxy 配置,只是某些网站会使用代理,GMail 本身不曾用过代理。Google 采取了很多方法防止机器人自动访问,我试图找出导致这种循环重定向的规律,可最后没总结出来。。。

[1] http://lh6.ggpht.com/lovelywcm/SF-a16lTtDI/AAAAAAAAAp8/NwXNTjA926g/GMail-Redirect-Loop.png


--
http://lovelywcm.blogspot.com

dug...@188.com

unread,
Jun 24, 2008, 3:40:34 AM6/24/08
to gapp...@googlegroups.com

FoxyProxy当然是欢迎介绍的,我的想法是你最好写的基础点,否则普通用户可能接受不了。
 
你能介绍怎么在GAE上做fetch服务太好了,我一直觉得这个事情不好做,大多用户根本不知道GAE,而且申请GAE帐户对普通Proxy用户来说也麻烦了点,而我的GAE确实有点吃不消。
 
白天没太多时间,有什么问题我会晚上再写的。

WCM

unread,
Jun 24, 2008, 3:42:37 AM6/24/08
to gapp...@googlegroups.com
2008/6/24 phoenix <when...@gmail.com>:

应该不少人都是用浏览器外壳的,以我现在用的GreenBrowser来说,其代理服务器设置就是对http和https都生效的。所以当我设置GappProxy为代理后,google的https就用不了了。


我没用过 GreenBrowser,不清楚情况。但我想,一个好的浏览器应该是有办法允许用户充分配置的,什么时候该用代理,什么时候不该用,而不是一直挂着代理不变。

撇开这个问题不谈,如果硬要支持https,但将其安全级别降到http级别,似乎有些得不偿失。另外,再考虑到通用性,即如果在其他服务器上使用你的服务端,那么该服务器是否需要支持https?


这只是提供一个可选功能,在情况允许的时候由你主动调用,而不是强制你用。
 

我希望GappProxy的发展方向是象PHProxy一样,可以由用户自行配置到他们的虚拟主机上使用,以减少GAE被盾的可能性,所以应尽量降低对使用环境的限制。


为什么叫 GApp Proxy?不就是利用 GApp 的 API 、服务器以及带宽么。打造通用的代理服务器软件?那不是重复造轮子么,如果需要,已经有很多现成的工具。何况,没见着有几个虚拟主机提供 Python 支持的。能提供 Python 的,大概也提供 SSH 吧,那还用这么麻烦么?
 

关于GAE因GappProxy被盾的可能性,我认为是非常大的。我从不惮以最坏的恶意来揣度,想想"肝胆相照"这样的公益性网站都被封锁了吧。


我不敢肯定,但我认为不会。

比如你可以看看这个:
http://earthquake.usgs.gov/
甚至这个:
http://earthquake.usgs.gov/eqcenter/recenteqsww/Maps/
它们都活得好好的。但是下面这个被干掉了:
http://earthquake.usgs.gov/eqcenter/recenteqsww/Maps/10/105_30.php

GFW 是可以定点封杀的,干掉一个项目并不需要干掉整个平台。
 

最后,关于WCM认为的https只是登陆的时候需要,我不敢苟同。我的Gmail,Google Reader一直是以https的方式使用的。目前Google的服务都能以https来正常使用,所以对https的支持似乎并不紧要。



我说的,是底线。很多网站在注册和登录的时候必须使用 https 协议,即使你不在乎安全也不行。

你说的,是更高一点的要求。是你主动追求安全,而不是必须。
在网上能公开获取的信息,即使被截获了我也不介意,反正是网上公开的,爱看你也看吧;可能你看的是政治敏感信息,如果你只是看看而已,我敢说,你整天看也不会有人来找你麻烦;可能你担心因为敏感字眼导致临时撞墙,GAppProxy 是 Base64 编码传输的,也不会有这个问题。

另外就是发送,发送普通信息加不加密都无所谓。
但是发送的密码有所谓,所以我说暂时用下别的代理。
还有就是发送私人信息,这个也有所谓,所以我不会用 http 访问 GMail,何况 GMail 好好的,为什么要用代理?如果真的很在乎安全的话,不只是 https 了事,还需要用密钥签名。


总之,我觉得提供这样一个功能是很好的。多了一个便利,有时候很方便。但是用不用、什么时候用这个功能,是由自己订制的。你调用它,它就给你代理;不调用它,它也不会强迫你。

dug...@188.com

unread,
Jun 24, 2008, 3:42:35 AM6/24/08
to gapp...@googlegroups.com
你说的这个东西我一两句话也说不清,回头我在说自己的想法吧。

phoenix

unread,
Jun 24, 2008, 3:55:17 AM6/24/08
to gapp...@googlegroups.com
On 6/24/08, WCM <love...@gmail.com> wrote:

撇开这个问题不谈,如果硬要支持https,但将其安全级别降到http级别,似乎有些得不偿失。另外,再考虑到通用性,即如果在其他服务器上使用你的服务端,那么该服务器是否需要支持https?


这只是提供一个可选功能,在情况允许的时候由你主动调用,而不是强制你用。
总之,我觉得提供这样一个功能是很好的。多了一个便利,有时候很方便。但是用不用、什么时候用这个功能,是由自己订制的。你调用它,它就给你代理;不调用它,它也不会强迫你。
这就是我想要的,关于https的支持,请提供一个选项,而不是强制使用。
GFW 是可以定点封杀的,干掉一个项目并不需要干掉整个平台。

它可以定点封杀,但我看到更多的是封掉整个平台。

WCM

unread,
Jun 24, 2008, 4:00:09 AM6/24/08
to gapp...@googlegroups.com
2008/6/24 phoenix <when...@gmail.com>:
这就是我想要的,关于https的支持,请提供一个选项,而不是强制使用。

就算它想强迫你,也不可能……
当然,你得配置,而不是一直挂着代理不变。

WCM

unread,
Jun 24, 2008, 4:01:59 AM6/24/08
to gapp...@googlegroups.com
2008/6/24 <dug...@188.com>:


FoxyProxy当然是欢迎介绍的,我的想法是你最好写的基础点,否则普通用户可能接受不了。
 
你能介绍怎么在GAE上做fetch服务太好了,我一直觉得这个事情不好做,大多用户根本不知道GAE,而且申请GAE帐户对普通Proxy用户来说也麻烦了点,而我的GAE确实有点吃不消。
 


尽量图文并茂吧。。
另外,在哪写呢,WIKI?


--
http://lovelywcm.blogspot.com
Reply all
Reply to author
Forward
0 new messages