使用SSH实现iPhone自动代理
IOS中最方便的翻墙方式是使用VPN,速度尚可,但PPTP和L2TP是不能像OpenVPN一样定义路由的,打开VPN后,所有流量均走VPN线路,浏览国内网站很慢,需要来回切换。windows下可以用脚本定义静态路由,使用Route设置脚本,实现国内网不经VPN搞定,但IOS下在cydia找了半天也没找到iptable这个命令包,所以还是用ssh吧。下面是具体使用方法:
1、越狱,并配置好ios的环境
如何越狱就不用我说了吧,随便一搜网上一大堆,越狱后如果你不知道如何ssh连接到你的ios设备可以参考我以前的一篇文章:为ipad2安装和配置gcc编译环境,当然这里没必要安装gcc环境,所以进行到第二步就OK了。
2、安装一些必须的软件包
如果你确定第一步你已经没有问题了,我们下面要继续安装一些必须的软件包。ssh连接到你的iPhone或者iPad后执行下面的命令:
sudo -iapt-get install screen
然后你的ios设备上面将会安装好screen这个软件包,不知道screen是什么的同学可以参考这里。
执行下面的命令:
screen –S autossh ssh -D 1987 [用户名]@[ip地址] #如果你自定义了ssh的端口号,记得使用-p 加你的端口号,如下: ssh -D 1987 –p [端口号] [用户名]@[ip地址]3、配置PAC,用来实现自动切换。
可以使用我的pac文件,http://wangheng.org/tools/autossh.pac。在iPhone的设置->WIFI->HTTP代理->自动->URL 里把它填上就可以了。
内容不多,如下:
function FindProxyForURL(url,host) { url = url.toLowerCase(); if( shExpMatch(url, “*facebook.com*”) || shExpMatch(url, “*googlecode.com*”) || shExpMatch(url, “*twitter.com*”) || shExpMatch(url, “*youtube.com*”) || shExpMatch(url, “*wordpress.com*”) || shExpMatch(url, “*appspot.com*”) || shExpMatch(url, “*.google.com*”) ) { return “SOCKS 127.0.0.1:1987″; } return “DIRECT”; } return “DIRECT”; }
好了,大功告成,享受你的无国界自由网络吧~
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 王恒's Blog!
评论