五千年(敝帚自珍)

主题:【原创】凑个热闹,超级懒人的GappProxy教学贴,完 -- zzbzerg

共:💬30 🌺50
分页树展主题 · 全看首页 上页
/ 2
下页 末页
  • 家园 【原创】凑个热闹,超级懒人的GappProxy教学贴,完

    近来河被墙,大家很悲伤。一朝梯在手,任君凭栏望。

    自从ccthere被墙以来,河里讨论梯子的事也多了起来,俺这菜鸟也鼓捣了一下,有点心得,正好聊天室里有河友说起,索性俺也凑热闹写个GappProxy的教学贴。

    说是教学贴,其实俺本人就是菜鸟一个,以前也没有过于强烈的翻墙需求,对于代理的理解也仅停留于年少时用socks代理上qq以及多ip登陆diablo2 BN之类,所以本菜鸟赶时髦写此GappProxy教程,不是为了给牛人或熟练手看的,而是以下几条目的:

    1.为了懒人以最快的速度,搭好好用的梯子

    2.为非工科背景以及不愿意纠结于过多技术名词的人快速搭好好用的梯子

    3.除了step by step外,还要说一些不讲究严密的科普,以便上述两种人能快速了解搭梯子的理念,而不是无脑的重复1,2,3,4等步骤

    注:看起来挺长,其实可以各取所需,不要被篇幅吓到了。

    第一部分 基础知识的科普

    (第一部分可以让没有基础的人大致了解自己在干什么,有基础的,性急的可直接跳到第二部分,按步骤操作,也没问题。)

    闲话少说,开始!

    1.梯子

    梯子就是翻墙的东西,突破某些限制,访问某些墙外的网站

    2.梯子功能的实现

    实现梯子,有好多方法,今天大致片面的以代理服务器为例

    我是A,能访问B,但不能访问C,D,E,F

    但B可以访问C,D,E,F,所以,我有点小手段,当我想访问C,D,E,F时,先找B,然后通过B传话给C,D,E,F,从而实现我和C,D,E,F的交流

    还不明白的,参看张生,红娘,崔莺莺

    3.Gappproxy是什么东西

    全写出来google application proxy,字面就是“谷歌应用”代理服务器

    大家知道,想在电脑上实现某个功能,就要装软件。“谷歌应用”就是往谷歌他们家电脑上装软件。(当然,你要是想往我电脑上装软件,我可不让)

    但谷歌允许你在一定规则的限制下,在他们家电脑上装软件(他们家电脑性能好啊,而且在墙外面啊),所以非常适合当红娘。

    想把谷歌调教成红娘有点复杂,要按照它能接受的方式,用它听的懂的语言(python,java)

    这个不用咱们懒人操心,有人替咱做好了,Gappproxy就是实现这种红娘的功能的软件。

    4.怎么往谷歌家的大电脑上装软件

    往自己电脑上装软件,可以用光盘,U盘,下载等方式;

    往谷歌家电脑装软件,要用上传,谷歌给你提供了全套的工具,不仅包括上传还包括调教,简单的说你用google提供的工具,不仅能上传,还能让它任你摆布,当红娘就是一种,嘿嘿。这些工具包括google app engine SDK, 还有用到的相应语言(比如Gappproxy用的Python)的SDK,我知道懒人一看这些就烦,不就是上传嘛,装这么多用不着的东西干嘛?

    对,所以这些咱都不装,只装一个霸王硬上弓的专用工具SDUpload 0.1,用它就可以把软件装到谷歌家的电脑上去。

    5.张生会红娘的信物

    两个人单独约会,有时需要拿点信物,比如你拿《女友》,她拿一本《知音》,一对暗号,就成了“我亲爱的她,难道你真的不懂我的心?”

    所以你光把谷歌调教成红娘还不行,你和她得有个信物。你在谷歌家安了红娘软件,你这里也得装一个红娘客户端

    分别对应的就是fetchserver和localproxy。记住,fetchserver是要霸王硬上弓塞给谷歌的;localproxy是自己留着的。

    6.自己和面蒸馒头还是买现成的馒头

    好了,我们假定张生和红娘约定,各自手持一个馒头做信物。我们看着这个约定犯了难,因为我们下载到的东西(fetchserver和localproxy)似乎文件夹里都是.py的文件,这些文件其实是python语言写的源代码,让我们不知所措。

    对编程有一点了解的童鞋知道,源代码想变成可执行的文件,中间要经过编译,(链接),解释等过程,最后生成可执行的程序。

    不要头痛,源代码就是面粉,你想吃馒头就得加水和面上锅蒸,蒸熟了才能吃,或者你直接拿别人蒸熟的馒头吃。

    好了,谷歌娘心灵手巧,直接把fetchserver的源代码这袋面粉塞给她就行了,后面不用管,她自己会蒸馒头的。

    而我们手里的localproxy这个面粉,有点麻烦,想加水和面蒸馒头的话,就要下载phython的SDK,我等懒人,看到这个实在是头痛了,干脆吃别人蒸好的馒头就行。

    让什么SDK见鬼去吧!

    7.总结

    经过前面的分析,我们定下了懒人搭梯子的基调和步骤

    1)向谷歌申请,请它允许我们在他家电脑上装程序

    2)拿到fetchserver这个红娘程序,装到谷歌家电脑上去

    3)拿到localproxy这个信物,既有源代码形式的,也有.exe这种懒人喜闻乐见的可直接执行形式的。

    对于我们懒人,用哪个不用多说了吧?

    --------------我是分割线---------------------------------------------------------

    第二部分 具体步骤

    (已经有搭建gappproxy经验的河友,只是嫌1.00beta版本有瑕疵的,可以直接下载链接里提供的r102版的软件并跳到第三部分)

    1.申请一个Google App Engine帐号,并创建一个应用,图文参看此链接的第1点。

    http://hi.baidu.com/chinaoffice/blog/item/80e25a81bb79e1d3bc3e1eb8.html

    tips:

    a.账号用gmail的帐号即可,没有可现申请

    b.这个过程就是向谷歌申请在他家电脑上装程序的过程

    c.在创建一个应用(create an application)这步,起的名字(application identifier)要记住,我们举例假设取为zzbzerg

    2.下载fetchserver,就是要装在谷歌家电脑上的程序,这里给出新版r102的链接

    外链出处

    解压后得到一个文件夹fetchserver,把里面的index.yaml删除,然后用记事本打开app.yaml,把里面的your_application_name整体替换成你刚才取的名,这里是zzbzerg,然后保存,关闭记事本。

    3.下载上传的工具SDUpload 0.1,链接在此

    http://code.google.com/p/sdapp/downloads/list

    下载2.1M的那个,压缩包的名字是SDUpload 0.1.rar

    解压缩,得到一个名为SDUpload 0.1的文件夹,把刚才那个fetchserver文件夹整体复制到SDUpload 0.1文件夹里

    4.开始上传

    在命令行(*)下进入SDUpload 0.1文件夹后输入 SDUpload update fetchserver会提示输入email和密码,输密码时屏幕无反应,只管输完,回车显示下列信息,说明上传成功。这是你的google红娘已经开始工作了

    Scanning files on local disk.

    Initiating update.

    Cloning 3 application files.

    Closing update.

    *:不会用windows命令行模式的按此做,以xp为例

    假设你解压后的SDUpload 0.1文件夹是F:\ladder\SDUpload 0.1

    请根据自己实际情况替换相应的文件夹名称及位置

    开始——》运行——》输入cmd 回车,弹出一个黑窗口

    输入 F: 回车,继续输入cd F:\ladder\SDUpload 0.1

    然后就可以敲上面说的命令了。

    5.下载及配置客户端

    我们直接拿现成编译好的来用,链接如下

    外链出处

    解压,得到GAppProxy文件夹,进入,双击gui.exe,把第二行勾上,填入http://zzbzerg.appspot.com/fetch.py

    zzbzerg要替换成你自己取的名,点save,然后quit,再打开点hide或者最小化都行

    6.设置浏览器

    以ie为例,Internet选项->连接->局域网设置->代理服务器

    打勾"为LAN使用代理服务器"

    地址:127.0.0.1

    端口:8000

    确定

    7.可以站在墙头观风景了。下次使用时,直接双击gui.exe,稍候即可打开浏览器站在墙头观风景。

    -----------------------------------------------

    第三部分 版本说明

    (用苹果机的直接跳到第四部分)

    我给的几个链接是r102版,fetchserver的源代码和localproxy的可执行文件,除了需要用SDUpload 0.1作为上传工具外,不需要下载google app engine sdk,python等开发环境。

    墙内墙外都可访问,速度很快,youtube和facebook也可以正常使用,https链接也可以正常使用

    算是比较完美了。

    到此,用windows的人已经可以正常翻墙浏览了。下面的第四部分留给苹果粉。

    -------------------------------------------------

    第四部分 在Mac OS X上的使用

    话说,在聊天室里or某贴里,有人提问说Mac是否可以使用。

    我回答,应该可以吧,有些心虚,因为那时还没试过,但凭俺的逻辑推测,能用的可能性相当大。原因如下:

    1.gappproxy用python编写,python的跨平台可移植性很好

    2.虽然在gapproxy的官方网站好像没提mac,但提到了Linux

    而mac osx和linux多少有些沾亲带故。

    3.gappproxy是个网络应用,程序本身应该没有过多依赖本机硬件的东西,更何况现在的mac和pc在硬件上的差异极小了。

    正好,我的台式机装的是mac os 10.4.8(tiger,很老了)和winxp的双系统,于是我查找了一些资料并开始用自己的osx测试

    最终,成功实现翻墙,浏览器用自带的safari

    步骤如下:

    1.搭建fetchserver,步骤同上,已搭好者请跳过

    别告诉我你不用windows,只用mac,如果真这样,你还是老老实用官方办法上传吧;当然你也可能有更方便的办法。

    2.下载python,官方站2.7

    http://www.python.org/download/releases/2.7/

    请自行挑选平台

    tiger用for 10.3 or later的

    leopard用for 10.5 or later的

    下好后安装。

    一般用mac的人不用俺科普,不过我见过不少用macbook pro和iphone的美眉是纯外貌协会的,还是啰嗦一句,exe没法在mac里直接执行,所以....客户端不能用上面那个,要下载python来运行源代码(终于要自己和面蒸馒头了)

    3.下载localproxy的源代码,同样用r102的

    官方网址http://gappproxy.googlecode.com/svn/trunk/

    把localproxy那个文件夹里的东西都弄回来。

    我其实下的是打包好的,但忘了从哪里下的了....囧

    如果是打包版,解压,得到localproxy文件夹,打开localproxy中的proxy.conf,修改“fetch_server =”后面的地址,此例为http://zzbzerg.appspot.com/fetch.py并去掉开头的#号

    其实这个性质和windows里第二部分第5条是等效的。

    目的就是一个,把proxy.conf文件的内容改为:

    fetch_server = http://zzbzerg.appspot.com/fetch.py

    4.打开terminal(终端),进入到localproxy所在的文件夹,执行python proxy.py

    出现类似这样的信息

    HTTP Enabled : YES

    HTTPS Enabled: YES

    Direct Fetch : YES

    Local Proxy :

    Fetch Server :http://zzbzerg.appspot.com/fetch.py

    说明客户端工作正常,不要关闭终端窗口,最小化即可

    配置浏览器代理,系统预置——》网络——》代理

    勾上http和https,地址端口127.0.0.1:8000

    点“现在应用”

    5.开启浏览器,如safari等,开始墙头眺望

    顺带引申一下,因为iphone的系统内核和mac相似,而python恰恰有for iphone的,所以理论上iphone也可以用gappproxy翻墙。

    经搜索,实际也有人做到了。

    再进一步,python有for s60和for windows mobile的

    所以各位用智能手机的朋友,有需要的话,不妨试试

    -------------------------------------

    这篇不短文章终于算是写完了,虽然以后还可能有些修补,但框架基本确定了。

    俺也要:

    感谢月色给俺的O梯子,使得我在自己没有梯子的时候,能够翻墙查资料,最后完成梯子。

    感谢鼓励我写这篇文章的人

    感谢gappproxy的开发者及贡献者,以及我这两天查的所有资料的原作者,转载者,下载地址提供者,太多了无法一一列出(其实我都记不住确切的了)

    感谢GAE,感谢phython,感谢.....MTV

    什么?李大师?让他一边抗铁牛去!俺是不扛了。

    完。

    关键词(Tags): #翻墙GAPP(slyypp)#翻墙(嘉英)#懒人#GappProxy#r102通宝推:all4fun,

    本帖一共被 5 帖 引用 (帖内工具实现)
    • 家园 一定要用写字板打开app.yaml而不是记事本

      不然会出错

    • 家园 上传出问题error parsing yaml file

      上传是提示

      error parsing yaml file:

      麻烦指点一下

    • 家园 申请一个Google App Engine帐号,需要手机

      申请一个Google App Engine帐号,需要手机验证。俺就怕这个,发垃圾信息。

      其实还是vpn最简单。和adsl拨号一样,windows xp自带。填个服务器以及用户,密码,就完了,2分钟都不用。花十几块就能买个账号了。

      这里有免费的vpn,能用多久不知道。http://www.free-vpn.info/vpnreactor/

      vpn教程http://www.free-vpn.info/windows-xp-pptp-vpn/

      • 家园 有稳定免费的vpn最好了,但试用性质的会有些限制

        而且,人多了以后,免费的vpn速度如何难说

        看图片里500多kbps的确不高,这是带宽测试,bit/s

        换算成Byte/s就不多了。

        我用gappproxy测试第一个链接里同一个网站的,同一个PA的测试站点

        下载是701kbps,上传始终在动,峰值在500kbps左右,基本稳定在300以上。

        不过,vpn确实是个不错的东西,梯子越方便越好,选择越多越好。

        我们要苦练翻墙技术,为了实现xxx而努力奋斗,嘿嘿

        google尽管不一定厚道,但基本的规则还是讲的吧,验证用手机号不会随便出卖的吧。

        据我所知,很多手机号及个人信息的源头流出地,恰恰是一些银行,车管所,电信运营商,基层派出所等看起来让人放心的机构。当然,不一定是组织行为,但这些单位里个别人的利用职务之便的个人行为泄出来的够多了。

        还有国内很多垃圾短信其实是用群发器,也不用针对特定客户,就是给一个号段,穷举发送,所以跟泄露关系也不大。

    • 家园 谢谢分享请教个问题

      我在一台机器上试验成功了,但在另一台新机器上却无法运行gui.exe,提示程序错误,是不是有什么东西没有装?谢谢!

      • 家园 会不会是缺少运行库的问题?

        这个可能跟具体机器的环境有关,可以大致说下用什么系统,然后大家一起分析下。

        • 家园 谢谢,我分析也是这样的

          系统是xpsp3,几乎就是全新的,没有什么运行库

          另一个系统用了很长时间了,大概什么库都是全的,java之类的全都有,所以想请教下运行这个软件需要安装程序来辅助呢?

          谢谢了!

    • 家园 天哪!!!翻墙原来可以这么简单?

      太感谢ZZ同志了!

    • 家园 这个SDUpload 0.1.rar总是下不了啊

      下了一半就结束了

      • 家园 说说怎么个结束法?有可能连接是被墙的,要翻墙

        用迅雷下载,或者直接这个链接http://sdapp.googlecode.com/files/SDUpload%200.1.rar

        刚试了,可以的

    • 家园 泪奔,真的成功了

      本想通宝以表谢意,结果发现没宝了。----------莫不是那位河友翻墙进来后,串到俺的号里给挥霍一空了。

      顺便问点问题:

      1.这段时间也找了不少类似工具,发现好多都是自动把ie代理设为127.0.0.1的,只不过端口号是五花八门而已。那些翻墙工具是否也是用的gappproxy??

      2.我给多台机子设置一下,是不是可以公用一个应用呢??这个gappproxy有什么限制没有,比如人数、流量??

      3.问个跑题的,cchere现在倒是可以不用翻墙,但我进去后只能从主页直接点开某个话题看主贴,用全看或者分页等功能就会变成“找不到网页”,这是个什么毛病啊??

      • 家园 大致回答一下,一起讨论

        1.不大可能是gappproxy,参看我gappproxy的科普。

        但原理应该是类似的。区别在于我们用gappproxy是自己在google上搭代理服务器,用google的机器;那些xx门什么的连接是人家轮子自己的服务器。我们用的gappproxy客户端叫localproxy(本地代理),轮子的就叫xx门了。

        ie代理设为127.0.0.1其实只是一个本地代理,表明在ie想访问某网址时,先向本地申请,然后本地那个客户端向远端连接(我们是连google的服务器,xx门是连人家轮子自己的服务器)

        2.是的,我们安装在google上的代理始终在运行,我们只要有客户端,将fetch server指向我们搭好的就行了。

        由于google本身限制,比如每天提供1G的流量等,所以几个人公用也没关系,只要不超过总的限制(除了流量,还有其他一些限制,但我们一般用gappproxy不会达到上限)。当然,自己搭一个,独占也不错。

        另,一个gapp账号最多允许搭10个应用,也就是说,如果你愿意,你可以一个gmail账号搭建10个独立的服务器。

        想查看自己在google搭建的应用,以及管理每个应用,查看数据统计,可以访问http://appengine.google.com

        3.全看和树展可能连接到了ccthere的,导致被墙

        • 家园 多谢多谢,遇到善人那我就打破砂锅了

          实在不好意思本人正式那种不讲究严密的科普,但又想要搞个一知半解,而不是无脑的重复1,2,3,4等步骤的人。

          文中提到的几个根据,sdupload是上传用的,俺不管他。

          那个龟exe是本地客户端,据我理解就是验证身份,一对一连接上自己的fetch server用的,也不管他。

          那么,根据主贴,fetch server就是我们安装在Google主机上的一个软件了,这个软件的功能不就类似于一个浏览器了。这个浏览器先不受限制的浏览各种网页,然后通过龟搬运到自己的显示屏上。而且fetch server是用python语言编写的,也就是说其实我们可以自己写一个更符合自己使用习惯的软件去安在Google上??

          ps:我也注意到了,可以注册10个应用,准备有空的时候把那九个也注册了,方便比我更懒的筒子使用。到时候借贵宝地公布可好??

          • 家园 花,您理解的很到位,至少我想表达的就是类似意思

            只是有个别细节你既然提到了,我也说下理解,其实也无所谓,大致意思就是你说的意思。

            1.龟.exe目前还没有身份验证的功能,它就是处理本地浏览器的请求,然后跟远端的fetch server通讯的。也就是说无论是谁搭的fetch server(利用同样的源代码),只要告诉你地址,通过gui都能连接。

            2.fetch server就是运行在google主机上的,严格说不是浏览器,字面意思是“取回服务器”,就是代理服务器(尽管这个词文绉绉),不过意思还是很符合的,代理代理,就是你(本机浏览器)有什么要求,它替你办,然后再转给你。

            3.对,fetch server是用python写的,并且源代码是公开的,.py的文件就是,装了python开发环境后就可以修改调试。

            而且google app不仅限于此,你还可以自己写些程序,或者下载别人写好的程序(比如我们正用的),实现在google上搭个网站,开个博客之类网络应用。

            4.非常欢迎造福懒人,这样只要用龟.EXE(这个名字不错,图形用户接口太文绉绉)填上地址就行了,但同一地址人太多的话,会把1G流量吃光的。

            我本来也想多建几个,一来懒了,二来授人以鱼不如授人以渔,就写这个帖子。用自己亲手搭的总是感觉爽,就像自己做的饭感觉更好吃一样(尽管照着别人的菜谱)

分页树展主题 · 全看首页 上页
/ 2
下页 末页


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河