android手机HTC Hero如何使用vpn

February 27 2010, 6:56pm

大家都知道,官方的HTC hero目前是android 1.5,所以没有vpn功能。据说将来会出android 2.1,就能够支持了。但是默认的pptp vpn还是不怎么好用,在任何平台上,我都比较喜欢openvpn。

android 1.5是有办法使用openvpn的,并不复杂,我的手机已经成功了。方法和解释如下:

原理:

TUN/TAP是做虚拟网络的基础驱动,没有这个,就不会有vpn,无论pptp还是openvpn。而使用tun设备又需要root权限。

所以我们需要: 1 在手机上获得root权限 2 补上缺少的驱动。

整个做法非常安全,基本不会出问题。如果担心的话,可以搜索其他备份方法,很多论坛都有,我这里就不多说没用的了,只说跟openvpn有关的。

具体步骤:

1 把recovery image刷到手机上,好升级rom。

按照这个帖子进行 http://android.modaco.com/content/htc-hero-hero-modaco-com/291486/06-jan-installing-the-patched-recovery-image-on-your-device/

其实大部分人买到的机器,应该已经被刷过了,可以试试关机,然后按住 home键开机,看看是否会进入一个绿色文字的recovery菜单界面,如果已经有了,那就不用刷这个了。但上面那个帖子里面的压缩包仍然值得下载,里面有adb/fastboot等等一系列工具,这些东西本来是在android sdk里面的,如果你不想下载上百兆的SDK,不妨下这个几兆的包。里面有win/linux/mac版本。

2 合适的rom

先看看自己的rom有没有tun.ko模块。方法是用usb连上手机,用上面说的压缩包中的adb shell看看 /system/lib/modules/tun.ko 是否存在。大部分rom是不存在的。

有这个模块的rom是modaco的,其实这也是我觉得最好的一个rom,相当的稳定。搜索 3.1-update-hero-modacocustomrom-core-signed.zip 四处都有下载。然后就是改成update.zip 传到sd卡,关机,按住home开机,进入recovery菜单,选择用update.zip刷机。很多地方都有教程,不细说。

3 让openvpn生效

http://sourceforge.net/projects/tunneldroid 下载 openvpn-binary.zip 这个包,解压,用adb上传到手机上。这时候又用到了第一步下载的那 个包了。

先备份一下手机上的的文件

adb remount adb shell cd /system/lib cp libcrypto.so libcrypto-orig.so cp libssl.so libssl-orig.so exit

然后上传文件

adb remount adb push libcrypto.so /system/lib/ adb push liblzo.so /system/lib/ adb push libssl.so /system/lib/ adb push openssl /system/bin/ adb push openvpn /system/bin/ adb shell chmod 4755 /system/bin/openssl adb shell chmod 4755 /system/bin/openvpn

可以在adb shell中测试一下,直接运行openvpn命令,看看是否能运行,就行了。

4 把vpn证书传到sd卡上。 把xxx.ovpn这个配置文件和证书之类的东西都放在 /sdcard/openvpn目录下,如果没有就自己创建。

5 去market装TunnelDroid 装上就可以看的到刚才放的配置文件,点连接就可以用了。

其他怪问题可以参考这个讨论: http://android.modaco.com/content/software/291919/openvpn-on-android/

在vps上架设openvpn服务的方法,可参考:

http://www.douhua.im/2010/01/06/ubuntu-server-install-openvpn-server/

如果能取得ip,不能连出去,一般是iptable的问题, 试试运行一下

/sbin/iptables -p FORWARD ACCEPT

一般就能行了。

如果正常,看到手机的ip就是vpn的ip了...我们通过购买vpn的形式交了一笔上网税之后,终于享受了正常的手机功能。