欢迎来到HugNew-拥抱变化,扫一扫右边二维码关注微信订阅号:Martin说 或 加QQ群:427697041互相交流,Stay hungry, Stay foolish.

GoAgent图文教程:翻墙并没有那么难

windows Martin 6583℃ 3评论

一、申请 Google App Engine 并创建 appid

  • 申请注册一个 Google App Engine 账号。没有 Gmail 账号先注册一个, 用你的 Gmail 账号登录。
    申请 GAE 帐号
  • 登录之后,自动转向 Application 注册页面,如下图:
    申请 GAE 帐号
  • 接下来的页面,输入你的手机号码,需要注意的是,手机号码前面要+86(中国区号) 格式如:+86 13888888888。
    申请 GAE 帐号
  • 然后等待收取手机短信,收到短信后(一串数字号码)填入下图表单,点 send 提交.(有的手机收不到信息,到https://appengine.google.com/waitlist/sms_issues 提交该情况,一个工作日就能收到谷歌提示Google App Engine成功开通)。
    申请 GAE 帐号
  • 提交完成之后,GAE 账号即被激活,然后就可以创建新的应用程序了。转入 “My Applications” 页面,点击 “Create an Application” 新建应用
    申请 GAE 帐号
  • 一个Gmail账户最多可以创建十个GAE应用,每个应用每天 1G 免费流量。这里我们只创建一个应用就可以了。进入下一步,填写新应用的必要信息,如下图。在图中第一处添加一个应用名称,如 abc555 ,验证一下是否可用,如果显示 “Yes” 那么 abc555 就是你的 Appid(记住这个id),而 abc555.appspot.com 就是你的应用服务器地址了。第二个空可随便填,点击 Create Application 按钮提交
    申请 GAE 帐号
  • 提交之后,就能看到下图这个页面,就说明你已经成功创建了一个新的应用,你也可以点击应用名称,进入控制面板进行管理。
    申请 GAE 帐号
  • 如果你要建立多个 appid,只需要从步骤 4 开始再重复操作多次就行了。

二、下载 goagent 并上传至 Google App Engine

  • 下载 GoAgent 并解压
  • 编辑 local\proxy.ini,把其中 appid = goagent 中的 goagent 改成你之前申请的应用的 appid (用 windows 的记事本也可以)
    • 如果要使用多个appid,appid之间用|隔开,如:appid1|appid2|appid3,每个 appid 必须确认上传成功才能使用
    [gae]
    appid = appid1|appid2|appid3
    
  • 运行 goagent.exe(Linux 用python运行XXX/local文件下的goagent-gtk.py来启动goagent)
  • 上传
    • Windows 用户:双击 server 文件夹下的 uploader.bat,输入你上步创建的 appid (同时上传多 appid 在 appid 之间用 | 隔开,一次只能上传同一个谷歌帐户下的 appid )填完按回车。根据提示填你的谷歌帐户邮箱地址,填完按回车。根据提示填你的谷歌帐户密码(注意:如果开启了两步验证,密码应为16位的应用程序专用密码而非谷歌帐户密码,否则会出现 AttributeError: can’t set attribute 错误),填完按回车。
    • Linux/Mac OSX用户上传方法:在server目录下执行:python uploader.py
      上传 GAE
    • 如遇到上传困难的情况,可以先运行 goagent.exe(要先修改 appid )再运行 uploader.bat
    • 上传成功就会看图下图界面
      上传 GAE

三、运行客户端

  • Windows 用户运行 local 文件夹中的 goagent.exe,Linux/MacOSX 用户运行 python proxy.py
    • 设置浏览器或其他需要代理的程序代理地址为 127.0.0.1:8087
    • 注意:使用过程中要一直运行 goagent.exe/proxy.py
    • 代理地址 127.0.0.1:8087;如需使用 PAC,设置pac地址为 http://127.0.0.1:8086/proxy.pac
    • 也可以配合 SwitchyOmega/FoxyProxy 等浏览器扩展 (SwitchyOmega 用户可从 local 文件夹中的 SwitchyOptions.bak 文件导入配置)
  • 导入证书
    • IE/Chrome:使用管理员身份运行 goagent.exe 会自动向系统导入 IE/Chrome 的证书,你也可以双击 local 文件夹中的 CA.crt 安装证书(需要安装到 “受信任的根证书颁发机构” );
      运行客户端
      运行客户端
    • 下一步 -> 完成 -> 确定
    • Firefox:需要单独导入证书,打开FireFox?->选项->高级->加密->查看证书->证书机构->导入证书, 选择 local\CA.crt, 勾选所有项,导入;
    • Opera:导入证书方法:首选项→高级→安全性→管理证书→证书颁发机构->导入->选择 local\CA.crt文件->依次确认

四、浏览器设置方法

  • 使用 GoAgent 自带代理设置功能
    • 该功能可以为 IE 内核浏览器和未安装代理类扩展的 Chrome/Opera 等默认使用 IE 代理的浏览器和软件设置代理,但不能给 FireFox 设置代理
    • 右击 GoAgent 托盘图标,在 “设置IE代理” 菜单中选择要使用的模式。
    • 禁用代理 什么也不做,需要用户自己手动为软件设置代理
    • http://127.0.0.1:8086/proxy.pac 使用自带的PAC自动判断是否使用代理
    • 127.0.0.1:8087 全部使用 GoAgent 代理
  • 谷歌 Chrome 配合 SwitchyOmega 扩展
    • 安装扩展
    • 下载 SwitchyOmega.crx, 地址栏输入 Chrome://extensions/ 后按回车,打开扩展管理页,拖拽 SwitchyOmega.crx 到该页面之后点击确定即可安装,扩展也可以从 Chrome 应用商店 获得
      浏览器设置
    • 导入设置
      • 点击 SwitchyOmega 图标->导入/导出
        浏览器设置
      • 浏览到 SwitchyOptions.bak,点击确定导入设置
      • 更新自动切换规则(如果遇到无法更新规则列表,可以先运行 goagent ,并把浏览器代理设置为 GoAgent 模式再更新规则,不更新规则只会影响自动切换模式,不会影响其他模式的使用,若确实无法更新也可不更新,直接使用 PAC 模式即可)
      • 在扩展设置页点击 “自动切换” ,点击 “立即更新情景模式” ,最后点击 “应用选项” 。
        浏览器设置
    • 单击地址栏右侧 Proxy SwitchyOmega 图标即可进行模式选择
      浏览器设置

      • GoAgent 模式 除匹配 proxy.ini 中 profile 的直连外,其他全部通过 GAE
      • GoAgent PAAS 模式 全部通过 PAAS
      • GoAgent PAC 模式 根据 GoAgent 自带的 PAC 文件自动判断是否经过代理
      • 自动切换模式 根据切换规则自动选择是否进行代理,并根据所设情景模式自动选择使用何种代理
      • 遇到规则中没有的,可以使用扩展的 “新建规则” 按钮自行添加,选情景模式为 “GoAgent” ,使用此模式可以方便的定制自己的代理切换规则
      • 如果设置无误但浏览器提示错误 130 无法连接到代理服务器,可以将自己的设置导出之后卸载重装
      • 如果遇到无法更新规则列表,可以先运行 goagent,并把浏览器代理设置为 GoAgent 模式再更新规则,不更新规则只会影响自动切换模式,不会影响其他模式的使用,若确实无法更新也可不更新,直接把扩展设置为 GoAgent PAC 模式即可
  • Firefox 配合 FoxyProxy 扩展
  • Firefox 配合 AutoProxy 扩展(新版Firefox请将此扩展升级至最新版)
    • 安装扩展 https://addons.mozilla.org/zh-cn/firefox/addon/autoproxy/
    • 设置
      • 添加代理服务器 注意:新版 autoproxy 已内置GoAgent配置,可直接进行下一步
        浏览器设置
        浏览器设置
        浏览器设置
      • 添加规则订阅
        浏览器设置
        浏览器设置
      • 选择自己需要的模式
        浏览器设置

        • 自动模式 根据规则自行选择是否使用代理
        • 全局模式 全部使用代理
        • 禁用代理 全部不使用代理
  • opera 浏览器设置
    • 同 IE 一样有两种方式可选,不过不会影响系统其他程序的联网
    • 设置代理为 127.0.0.1:8087,全部使用 goagent 代理
      浏览器设置
    • 使用 PAC 自动代理
      浏览器设置
    • 不使用时应恢复为无代理状态
  • IE浏览器设置
    • 工具->Internet 选项->连接,局域网用户单击”局域网设置”。宽带用户选中自己正在使用的宽带连接之后单击”设置”,不要选 “局域网设置”
    • 局域网用户设置方法
      • 设置代理为 127.0.0.1:8087 ,全部使用 goagent 代理(不建议)
        浏览器设置
      • 使用 PAC 自动代理
        浏览器设置
    • 宽带用户设置方法
      • 选中自己正在使用的宽带连接之后单击”设置”
        浏览器设置
      • 设置代理为 127.0.0.1:8087,全部使用 goagent 代理(不建议)
        浏览器设置
    • 不使用时要将IE恢复无代理状态

五、适用环境

  • 适用:浏览器,支持 http 代理的下载软件等
  • 不适用:游戏客户端等需要稳定网络的程序,QQ,Tor(验证证书)。待添加。。。

六、关于软件更新

  • 更新历史中带有[是]则需要重新上传,否则不用重新上传。注意:是否需要重新上传是相对于前一版的,若你之前版本与当前版本之间某一版或多版带有[是]仍然需要重新上传。
  • appid 并不绑定任何客户端,如果本次更新无需重新上传,只需修改 proxy.ini 中的 appid 即可使用。同样,你也可以把 appid 共享给朋友,或者在自己其他机器上使用,一个 appid 可以多人多机器同时使用,在无需更新服务端的情况下,只需成功上传一次即可。在没有设定密码的情况下,只需要知道 appid 就可以使用你的 appid 的流量,为防止被盗用可以加上密码
  • goagent 每一版下载的都是全部文件,你可以选择覆盖原文件或者将新版放另一个文件夹,旧版你可以选择留存或者删除,修改新版 proxy.ini 中相关设置即可运行。如果旧版添加了开机启动,需要将旧开机启动删除。如果旧版已经在运行,需先将旧版关闭。
  • 如果之前版本没有ssl错误,使用新版出现 ssl 错误可以把原来的 CA.crt 和 certs 文件夹内的文件覆盖当前的这些文件。或者将 CA.crt 和 certs 文件夹删除,同时删除浏览器中所有goagent ca 的证书,再重启 goagent,会生成新证书,重启浏览器再导入新证书即可。浏览器证书中只能有一个 goagent ca 的证书。

七、常见问题

  • 是否每次更新都要重新上传?
    更新历史中带有”是”需要重新上传,否则不用重新上传。 注意:是否需要重新上传是相对于前一版的,若你之前版本与当前版本之间某一版或多版带有[是]仍然需要重新上传。
  • 遇到 FAQ 没有解决问题怎么办?
    首先请更新客户端和服务端到最新版(见首页),如果还有问题的话请提出 issue 。 提 issue 前建议先搜索下看是否是重复的问题。虽然我们可能顾不上回答,但是我们保证每个issue都会看的并尝试解决的。
  • 用 goagent 访问twitter,自动跳转为 mobile.twitter.com 并返回 403 Forbidden。
    检查自己的 id 是不是包含 android 或者 apple, iphone, mobile 啥的。
  • 在 Linux/Mac 下如何安装 gevent?
    easy_install gevent
  • 提示 HTTP Error code 错误怎么办?
    400: BAD Request 一般是 iplist 配置不对,尝试使用默认 iplist。 401: Unauthorized 一般是你处于内网环境中,需要设置 proxy.ini 里面的 proxy 段落。 403: Forbidden 先清空Hosts文件,然后删了proxy.ini [iplist]中的google_cn=*,并将[profile]的google_cn改为google_hk,[iplist]里google_hk=后面填找到的IP。 404: Not Found 一般是 proxy.ini 里面 appid 没有填对,或者服务端没有部署成功。 500: 一般是 server/client 版本不匹配,可能是没有上传成功,使用你正在使用的版本重新上传。 503: Service Unavailable 一般是流量用完了,请更换appid。
  • GAE 免费流量配额是多少?
    每个谷歌帐号可以在 GAE 创建10个 appid,每个 appid 每天1G免费流量,urlfetch 每分钟 22M, 传入传出带宽每分钟 56M,GoAgent 使用 urlfetch,故受每分钟 22M 的限制。 流量重置时间为加州时间的午夜,夏时制时为北京时间15点,否则为16点。
  • uploader 上传失败?
    404: Not Found 对应的 appid 没有创建或者 appid 与 Gmail 账户不对应。 10060 连接服务器超时,建议挂 VPN 后再上传 10054 连接被重置,建议挂 VPN 后再上传 10061 目标计算机积极拒绝 挂 VPN 或者运行 goagent 后把IE代理设置为 127.0.0.1:8087 Cannot set attribute,请暂时停用两部验证,并且到 google.com/settings/security 确认”不够安全的应用的访问权限”已启用。
  • 听说 goagent 保密性比较弱,如何加强?
    下载最新版的客户端,编辑 proxy.ini, [gae]validate = 1
  • Linux/Mac 如何上传服务端?
    在 server 目录下运行”python uploader.py”(没有引号)
  • 支持多个 appid 做负载平衡吗?
    目前 goagent 最新版是支持的,在 proxy.ini 中的配置多个 appid 即可。
  • 如何使用 php 模式?
    申请一个免费的 php 空间,然后通过在线代码编辑器或者 ftp 客户端把 index.php 上传到你申请到 php 网站的根目录。 假设为 http://hugnew.com/index.php 。访问你的index.php地址,如果没有问题的话,说明部署成功。编辑proxy.ini

       [php]
       enable = 1
       fetchserver = 你的index.php文件的地址
    

    重启 goagent.exe 即可。

  • 如何设为系统服务(开机自启动)?
    双击 addto-startup.js 即可。
  • goagent 支持 IPv6 网络吗?
    支持的,[gae]ipv6 = 1 即可。但是代理后,对网站显示的IP仍是IPv4。
  • 为什么 goagent 第一次运行需要管理员权限?
    因为 goagent 会尝试向系统导入 IE/Chrome 的证书,这需要管理员权限。
  • Firefox 怎么不能登陆 twitter/facebook 等网站?
    打开 FireFox->选项->高级->加密->查看证书->证书机构->导入证书, 选择local\CA.crt, 勾选所有项,导入。
  • goagent 原理是什么?
    goagent 是 GAE 应用,原理可以参考这个图 代理示意图
  • 如何防止 goagent 被匿名使用(盗用)?
    目前 goagent 最新版是支持的,请见密码设置 wiki 介绍。
  • 怎样设置不显示气泡提示?
    用 reshacker/exescope 等资源编辑工具把气泡提示字符串清空即可。
  • 如何删除 appengine.google.com 上老的 appid ?
    可以的,请登录 appengine.google.com 删除。
  • 如何得到 goagent 的源代码?
    goagent 的代码和程序是一起的,源代码就是运行程序。
  • 如何对 goagent 进行修改?
    客户端代码直接改 local/proxy.py, 改完重启 goagent.exe 即可;服务端改 server/gae.py, 改完用 uploader.bat 上传即可。
  • 为什么要叫 goagent,而不叫 GoProxy?
    一开始叫 GoProxy 的,后来 Hewig 说软件名字带有 proxy 字样不祥,于是就改成了 goagent。
  • Windows 系统下,出现 ioerror:cannot watch more than 2560 sockets
    使用 goagent-uv.exe 启动。
  • 为什么使用 goagent 后访问 google.com 仍然跳转到 google.com.hk?
    你访问Google的IP还是中国的,[profile]里删掉 .google.com= 那行即可,但是搜索时可能会跳出验证码。 如果你想用自己 IP 上 Google,但不想被跳转,先访问 https://www.google.com/ncr 一下即可。
  • 出现Address already in use 错误。
    原因:可能是 goagent 已经在运行或者端口被其他软件占用,比如搜狗浏览器开启全网加速会使用 8087 端口,比如旧版 goagent 加入开机启动没有删除、旧版已经在运行。 解决办法:关闭旧版 goagent 或者其他占用该端口的软件再重启 goagent 即可。

ps:鉴于现在Google被GFW,不能正常注册Google账号及登录gae,可以使用免费翻墙工具注册Google账号,当然,你也可以直接使用下面这几款免费翻墙工具,不过相比一下GoAgent稳定性更好一点:

免费翻墙工具(自由门、动网通、无界浏览)下载

转载请注明:HugNew » GoAgent图文教程:翻墙并没有那么难

喜欢 (11)or分享 (0)
发表我的评论
取消评论

表情
(3)个小伙伴在吐槽
  1. 跪谢啦!!!很实用
    Richard2015-02-05 10:55 回复
  2. 已经买VPN了
    匿名2015-03-05 10:15 回复
    • Heck yeah this is extlacy what I needed.
      匿名2015-06-09 01:02 回复