OpenWrt安装goagent实例教程

原文出处: fastpace

用过一些免费的vpn,发现要么比较慢,要么过段时间就失效了 。在PC上试了一下goagent,发现速度还不错,比那些免费的强多了。goagent,你懂的,不懂问谷谷或度娘。之所以要在路由器上安装goagent,是不想老在pc上开客户端。在路由器上安装iphone ipad也可以使用goagent。

下面以rg100a-aa(我刷的是这个版本Attitude Adjustment 12.09)为例来说明一下怎么在路由器上安装goagent:

 

1、安装python

下载本页附件libopenssl_1.0.1c-1_brcm63xx.zip,解压后将libopenssl_1.0.1c-1_brcm63xx.ipk上传到路由器/tmp目录

如果你的路由器是Atheros AR7161,请下载libopenssl_1.0.1c-1_ar71xx.zip

官方libopenssl的安全线程支持上有问题,会出现“ssleay_rand_add: Assertion `md_c[1] == md_count[1]‘ failed”这样错误,用这个libopenssl就没有问题了。用ssh或者telnet登录到路由器运行如下命令:

  1. cd /tmp
  2. opkg update
  3. opkg install libopenssl_1.0.1c-1_brcm63xx.ipk
  4. opkg install python
  5. opkg install pyopenssl python-openssl

复制代码

 

2、在OpenWrt上安装goagent

GoAgent是一个基于Google Appengine,因此你必须在app engine上部署goagent的服务端。关于goagent部署请看这里,很详细:http://blog.chinaunix.net/uid-191945-id-3383080.html或者http://www.360doc.com/content/11/1108/14/7917215_162778496.shtml

现假定你的goagent服务端已经部署了
下载goagent:https://nodeload.github.com/goagent/goagent/legacy.zip/3.0,解压出来,修改/local/proxy.ini
将ip改成0.0.0.0

  1. [listen]
  2. ip = 0.0.0.0

复制代码

将appid改成你的appid,多个appid用“|”分隔

  1. [gae]
  2. appid = myvpn|myvpn2

复制代码

用ssh或者telnet登录到路由器运行如下命令:

  1. mkdir -p /app/goagent/local

复制代码

将certs目录、CA.crt、proxy.ini、proxy.py上传到路由器/app/goagent/local目录下。

 

3、启动goagent

  1. python /app/goagent/local/proxy.py

复制代码

先不要关闭ssh控制台,使用chrome的SwitchySharp插件测试一下代理是否成功。将其中“HTTP 代理”地址改成路由器地址,我这里是192.168.11.1

使用SwitchySharp访问一下twitter.com或者facebook.com看看是否成功:

如果成功,ssh控制台也会滚屏显示日志。

 

4、设置开机启动goagent

将下面代码加入到/etc/rc.local(或者直接在luci界面,系统>启动项>本地启动脚本 中添加)中

  1. python /app/goagent/local/proxy.py

复制代码

重启路由看看是否正常。

 

5、PAC文件利用

利用PAC文件可以实现自动代理。
打开SwitchySharp》导入/导出》导出PAC文件,将导出SwitchyPac.pac文件上传到路由器/www目录中。根据这个文件浏览器就能确定哪些网址需要使用代理,哪些直接连接就可以了。

或者,打开proxxy.ini修改[pac]中的ip地址为0.0.0.0,将SwitchyPac.pac放入proxy.ini相同目录中,此时pac访问地址为http://192.168.11.1:8086/SwitchyPac.pac

pac在chrome、ie、firefox等上都支持的(有的要插件),包括ios平台也可以使用pac文件。上传几张图,大家一看就明白了:
IE中自动代理设置:

ios中自动代理设置:

我的rg100a-aa刷完Attitude Adjustment 12.09后,装了一些常用的软件,再装python、goagent,空间基本够用了。

  1. root@OpenWrt:~# df -h
  2. Filesystem                Size      Used Available Use% Mounted on
  3. rootfs                   13.0M     11.1M      1.9M  86% /
  4. /dev/root                 1.8M      1.8M         0 100% /rom
  5. tmpfs                    14.3M    476.0K     13.8M   3% /tmp
  6. tmpfs                   512.0K         0    512.0K   0% /dev
  7. /dev/mtdblock3           13.0M     11.1M      1.9M  86% /overlay
  8. overlayfs:/overlay       13.0M     11.1M      1.9M  86% /

复制代码

如果你刷了那些大而全的版本,空间不够的话可以装在U盘上了。

 



杰克祥子
Practice doesn't make perfect, passion makes perfect. 新浪微博 @ 杰克祥子

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">