在诺基亚S60手机上使用VPN之一:原生客户端说明及12vpn评测。
这是一篇早就打算要写的文章,但因为有一些技术细节始终没有解决好,所以一直迟迟没有动笔。最后我意识到这样下去,这篇文章不知道要到猴年马月才能写出来,而且12vpn推出了对诺基亚S60手机原生VPN客户端的支持,完善我的教程的必要性也就不那么迫切了。我打算分三个部分写这个教程:
- 诺基亚S60手机原生VPN客户端的使用说明和12vpn的评测,因为如果我一上来就把如何生成VPN策略文件和OpenSwan的配置摆上来,不需要知道这些的普通用户可能会被弄晕而产生用起来太复杂的错误印象;
- 生成VPN策略文件和安装配置OpenSwan的教程。这个教程其实只是一个可以工作的范例,有些需要细调的高级设置我自己也没有弄清楚;
- VPN策略文件和OpenSwan的高级设置问题,这是我目前还在折腾的部分。
下面是诺基亚S60手机原生VPN客户端的使用说明及12vpn评测:
看到过不少诺基亚S60上没有可用VPN客户端的观点,但事实上诺基亚S60手机上原生的Mobile VPN客户端只是不支持常见的PPTP协议(第三方软件SymVPN支持PPTP,但正版价格超过二十美元,而破解版绝大多数都不好用),而是支持IPSec VPN。另一种观点是诺基亚S60手机原生VPN用户端太复杂,普通用户很难搞定。这种看法也对也不对,VPN策略文件的生成确实比较复杂,但这是系统管理员的工作,普通用户只需要把系统管理员发给他们的VPN策略文件安装到手机上,简单设置一下就可以用了。实际上iPhone/iPod Touch常用的L2TP VPN很多也是基于IPSec的,12vpn提供给S60用户的配置方式看起来并不比iPhone/iPod Touch复杂。
诺基亚S60手机原生的Mobile VPN客户端并不需要用户自己设置VPN服务器地址、用户名和密码(额外使用了Xauth验证的是另一回事),这些都是在VPN规则中定义好的。mVPN客户端中有一个设置规则服务器的选项,这是用于把VPN规则推送到手机上的,需要在服务器端安装诺基亚专门的软件,这种方式很少有人用,用户可以从本地安装VPN策略文件而完全不去管这个选项。VPN策略文件早些是以sis文件形式提供的,像普通软件一样安装。但目前mVPN V3.1和V4都可以直接导入.vpn文件。
下面的使用说明参考了12vpn针对S60V5上的mVPN V4英文介绍:
- 用户首先需要安装mVPN客户端,V3.1(针对S60V3 FP1)在此下载,V4(针对S60V3 FP2和S60V5)在此下载;
- 从系统管理员那里得到.vpn(或.sis/.sisx)策略文件并传到手机上安装。IPSec VPN网管和客户端之间的验证主要有两种方式:PSK和X509证书。如果是PSK方式,VPN规则文件直接装上就可以用了;而X509证书是以PKCS#12格式存储的,安装含有该证书的规则时会提示用户输入密码才能正确读取证书,这个密码是由提供VPN规则文件的系统管理员设置,比如12vpn的证书密码一律是“import”〔不含引号〕。第一次导入证书的时候, 手机会提示用户设置〔输入两次〕读取证书的密码,一定要牢记该密码,以后启动VPN连接的时候都要输入密码;新装含有X509证书的VPN规则后使用mVPN V3.1的S60V3 FP1手机需要重启,需要重装VPN规则前,删除原来的规则和证书并重启机器。我不确定使用mVPN V4的S60V5和S60V3 Fp2手机是否同样需要如此,听说不用;
- 使用WiFi的话要确认无线路由打开了VPN Passthrough的选项;
- 手机上网需使用net连接而非wap(这一点我不确定,因为mVPN客户端中可以定义Proxy);
- S60V5等较新的手机上导入了VPN规则后会自动生成一个标记为IntraNet的VPN接入点,在浏览器等需要联网的程序出现接入点选择时使用该接入点即通过VPN上网;S60V3 FP1等较老的手机上需要自己通过“设置—>连接—>VPN(虚拟专网)—>VPN接入点—>选项—>新增接入点”用导入的VPN规则定义新的接入点。
- IPSec VPN连接的初始化有点慢,大概要等半分钟的样子,之后就没有影响了。如果VPN规则中使用X509证书,验证的时候手机会提示用户输入保存证书时设置的密码,使用PSK验证的则没有这一步。假如VPN规则和IPSec网关(二者是对应的)中设置了使用Xauth验证,则另外需要输入系统管理员在服务器上设置的用户名和密码。
- 根据我自己的经验,如果设置了多个使用不同VPN规则的接入点,有可能会出现冲突。但这也许和个人手机和IPSec VPN的具体设置有关,只是一个在使用中出现问题的时候可以参考的可能性。
- 另外一点是使用VPN的时候也留心一下DNS设置。诺基亚S60手机设置接入点的时候可以自定义DNS服务器地址,新的VPN规则参数中也有独立的选项。虽然似乎现在多数IPSec VPN网关也可以把DNS信息推送到手机上,但说不定某个时候问题会出在这个地方。
简而言之,诺基亚S60手机原生的VPN客户端的设置是通过VPN规则文件完成的,而该VPN规则和具体的IPSec VPN设置对应,应该都由系统管理员完成,而不需要普通用户操心。
之所以专门附上12vpn的评测,因为它是众多VPN服务商中我唯一知道提供了对诺基亚S60手机支持的。除了通常的PPTP外,它还支持OpenVPN、L2TP和IPSec(Cisco)从而保证了不同平台的用户都可以使用他们的服务。
和个人架设的VPN相比,在我看来12vpn有下面几个优势:
- 他们在有多个的VPN服务器在不同的国家,这在用户需要特定地区的IP来使用某些服务,例如BBC iPlayer和Hulu等等,的时候会很必要;
- 作为一个公司,他们有更多的资源提供客户支持。自己架设过VPN的网友很清楚要支持不同的平台和千差万别的网络(不同的运营商和防火墙)是一件相当负责的任务。即使12vpn自己刚放出诺基亚S60手机的VPN规则的时候,只能支持S60V5手机上的mVPN V4,而在S60V3手机上的mVPN V3.1中无法正常工作。我和另一个推友@nielspeen自己花了很多时间修改他们的VPN规则都未成功,最后还是12vpn过了一天自己更新了配置文件解决的。
但12vpn的Personal帐号比较贵(包年70美元,月付要9美元另加10美元的设置费。)其实他们还有便宜得多的Lite帐号没有放在主页上,不过只能包年(25美元,2010年2月底之前有10%的优惠),而且有每月10G的流量限制。还有推友觉得12vpn的速度一般,这是一个小马过河的问题,我自己觉得用12vpn看Hulu的速度还不错(稍有停顿,但似乎比hideipvpn快些,比我原来自己建的一个OpenVPN速度有明显提高)。
除了购买12vpn的服务外,喜欢折腾的网友还可以自己在VPS或专用主机上搭建IPSec VPN,不过这方面的内容要放到下一篇文章中了。没有条件自己折腾,又不打算购买12vpn,但想在诺基亚S60手机上使用VPN的网友,也可以联系我要帐号测试你的诺基亚S60手机在我的IPSec VPN上用起来是否让人满意,再决定是否购买付费服务。





much simplier to use SymVPN from http://www.telexy.com
我自己建的IPSec VPN目前还有NAT-T工作不正常的问题,所以移动运营商分配给手机的IP是192.168或10.0之类内网地址的情况下,会出现连上VPN服务器后网关无反应而又断开的现象,所以手机拿不到公网IP的网友等我解决了这个问题再要测试账号吧。
Much simpler? I don’t think so. I tried both and some people also have problem to use SymVPN.
Don’t forget mVPN is free and SymVPN cost 20USD+
您好,有没有办法做Craigslist的电话认证账户,希望您能给点指导。先谢谢您了
Mike: the author has included a lot of technical details, as this is his personal interest. The normal user however just installs the mVPN client and then the VPN profile from the provider (e.g. 12vpn.)
The installation of mVPN vs SymVPN is no different. The configuration of mVPN is actually easier than SymVPN as you don’t need to enter any server or login details manually. The profile takes care of it all.
That said, the most compelling reason for using mVPN is that it uses IPSec+NAT-T(=mVPN) which is less likely to be blocked than TCP+GRE (=PPTP=SymVPN.) The NAT-T extension of IPSec makes it function very similar to OpenVPN: just sending UDP packets back and forth over an unprivileged port.
Niels Thanks for your explanation about the difference between mVPN and SymVPN.
沧海:我根本不知道Craigslist的电话认证账户是什么……如果你是需要美国的电话号码完成某些验证,用IPKall的虚拟号加上SIP网络电话就可以了。
我昨天也购买了12vpn一个月的服务,但是手机配置总是失败,不知道问题出在哪里,我是nokia 5800xm,请指教。谢谢!
[...] 在诺基亚S60手机上使用VPN之一:原生客户端说明及12vpn评测 [...]