又是热血的标题=_= 其实,这个方法没有大家所想象的那么完美。首先,经过我的测试(测试用机:Motorola Milestone),发现如下的局限性:
- 只能在手机用WIFI上网的时候使用(未严格验证,使用CM 6.12和MIUI得到这个结果,欢迎大家使用各种版本测试)
- 只对原生的浏览器Chrome Lite有效(未严格验证,使用CM 6.12和MIUI得到这个结果,欢迎大家使用各种版本测试)
- 你要拥有一个VPS或者购买Puff的SSH服务(已经购买Puff的SSH服务的请直接跳到第二步)
其实VPS这个东西嘛,也不算贵,在这里最便宜的只要19块大洋一个月,149可以买一年(你可以先买一个月试试)。根据我的猜测,一个64MB内存的VPS足够使用了(欢迎反驳)。 惯例,我的教程,都要先表明思路:
- 在VPS上用nginx架设反向代理(架设端口8087)
- (其实完成上一步也就差不多了,但是咱的GFW有深度包检测呢,所以要给手机与VPS之间的连接带个套套,这样才安全嘛。本文重点就是教你如何带套)
- ConnectBot用SSH连接到VPS,用端口转发,把VPS上的8087端口映射为手机上的8080端口
- 设置手机,使用127.0.0.1:8080作为代理。
以下教程仍然以我正在用的CentOS举例。Ubuntu我根本就不会用!(捂脸)
一、部署nginx
先安装nginx(已经安装了的可以跳过这一步)
yum install nginx
以上命令我没测试过哦,我用的是编译安装。如果安装不成功,请大家自行Google“nginx 安装” 。如果你的VPS内存比较小且不放置PHP程序,建议把php-cgi进程杀掉。
vim /usr/local/nginx/conf/nginx.conf #这个路径视你的nginx安装位置而定
在nginx.conf里http{}段加入如下内容(咦?制表符显示不出来啊?):
resolver 8.8.8.8;
server
{
listen localhost:8087; #添加一个localhost:可以只监听本地端口,这样ip:8087就不能直接作为代理了,安全
location / {
proxy_pass http://$http_host$request_uri;
}
}
为了安全,强烈建议把以上的8087端口改为其他。 保存,然后重启nginx
service nginx restart
二、连接SSH服务器
这一步有两种方法。一是使用ConnectBot,从我的测试结果来看,该方法比较稳定;二是使用max.c.lv开发的SSH Tunnel,其主要源码来自ConnectBot,使用较方便,但是貌似不是很稳定(至少在我的机子上是这样)……
方法一:
下载并安装这个版本的ConnectBot,菜市场的版本貌似不给力?
然后在屏幕下方输入你的登录信息进行登录,接着是要求你接受密钥、输入密码。
登录成功后,摁菜单键,选端口转发
添加这样一个端口转发,然后确定。
ok。
方法二:
在这里下载最新的SSH Tunnel。
很简单的配置。不是吗?前四项用你的SSH登录信息,本地端口填8080,远程填8087(nginx那个)
如果手机ROOT过的话,就可以勾选【自动配置代理】,于是万事大吉了。
三、设置代理
如果你用的是SSH Tunnel且Root过且勾选了某个选项,那么就可以跳过这一步了。
在菜市场里面下载【Droid Proxy】。CM系列ROM和MIUI(这个好像也是CM的?)不用下载,系统自带代理设置。
主机名填写127.0.0.1,端口填写8080,保存。用Chrome Lite可以上YouTube了!
四、思考
刚才貌似看到有一个app可以设置全局代理……测试之后我发上来。
—————————————————————————————————————————
需要翻墙利器赛风? 请阅读和关注中国数字时代。
推特用户请点击这里免翻墙上推特
请点击这里下载翻墙软件
更多翻墙方法请发电邮(最好用Gmail)到:fanqiang70ma@gmail.com
请阅读和关注中国数字时代、翻墙技术博客GFW BLOG(免翻墙)
1 条评论:
直接选动态socket就可以了,不需要反向代理兜两个圈子
相当于ssh -D
发表评论