Total Pageviews

Saturday, 24 January 2015

为iPad/iPhone建立ssh tunnel翻墙

想办法在iPad上也用ssh tunnel翻墙吧。


使用ssh tunnel翻墙有多种方法,这里采用如下方法:

在iPad上建立ssh tunnel通道,
iPad配置代理,
将所有的http访问都通过此通道,
从而翻墙一跃而过

先决条件:

ssh 帐号
越狱的iPad/iPhone
cydia中下载并安装:mobileterminal ,backgrounder,openSSH 应用
可以copy文件从pc至iPad文件系统中的工具,例如:windows下的ifunbox,itools,Mac系统下的iExplorer

步骤:

打开mobileterminal,在命令行输入ssh命令

ssh -D localport username@host -p port -N

简单说明一下:

localport是建立通道后,本地侦听的端口

username是你的ssh用户名

host port 分别是你的ssh服务的域名和端口。

例如:

ssh -D 7070 luyu@fuckthegfw.com -p 80 -N

首次连接会提示(yes/no),输入“yes”,然后输入密码。
按住Home键,当出现background enable时松手,这个步骤时为了保证mobileterminal 切到后台再切入前台时保持显示和状态
编辑一个文本文件,并存为overall.pac

function FindProxyForURL( url, host ) { return "SOCKS 127.0.0.1:7070"; }

利用ifunbox等工具将overall.pac拷贝到iPad的/var/mobile目录下
在iPad的设置->wifi->http代理 选择“自动”,“URL”填“file://localhost/var/mobile/iphone.pac”。

注意:

有些ssh服务器在ssh连接时会返回类似这样的错误:

Can’t Change User’s Home Dir

注意包含-N参数,确保登录后不执行服务器命令

必需使用pac文件,如果仅仅时填写手动的代理信息,会返回protocol mismatch的错误.