标签 OpenVPN 下的文章

上星期在公司的服务器上部署了OpenVPN,居然没有想象中的难。记录一下吧。

1)添加软件源
参考:CentOS推荐使用EPEL源
http://blog.51yip.com/linux/1337.html

添加软件源后就方便多了。N多软件直接yum安装。

2)安装OpenVPN
参考1:OpenVPN for CentOS
https://docs.ucloud.cn/software/vpn/OpenVPN4CentOS.html

参考2:CentOS6.4配置OpenVPN
http://www.chenshake.com/centos6-4-configuring-openvpn/

基本就是yum安装OpenVPN及相关软件,然后设置并生成相关证书。客户端使用相关证书即可。

3)设置SELinux
参考:Run OpenVPN on non-standard port with SELinux and Centos 6
http://www.jacobtomlinson.co.uk/2014/12/08/openvpn-non-standard-port-selinux-centos-6/

设置SELinux,使得OpenVPN的自定义端口可以访问。如运行了iptable的话,也要设置该端口可访问。

昨天,一星期难得一天的假期,全耗在usbnet上。最终还是没找到解决方法,我的G1还是不能在CentOS上通过USB共享无线网络。网上找到有讨论,说升级了内核后,就轻松连上了(该讨论的地址:http://www.centos.org/modules/newbb/viewtopic.php?topic_id=24127&forum=40#forumpost95581。虽然该帖讨论的是HTC Tattoo,但跟G1是一样的)。果然2.6.18的内核太年迈了,但我又不想更换内核,于是时间都白搭进去。

在找的过程中,发现有人讨论OpenVPN在Android(特别是在CyanogenMod Rom)上运行。相关讨论几文章如下:

1)CM的OpenVPN设定指南:http://www.androidin.net/bbs/viewthread.php?tid=60483&extra=&page=1

讲述N1上设置内置的OpenVPN,被网友多处转帖。我用的CyanogenMod-4.2.15.1也集成OpenVPN的支持,就是一直没搞过。该设置最麻烦的地方是导入证书。Android只支持PKCS12格式的加密证书,于是需要转换格式。看过一些文章后,终于转换出.p12文件(参考:常见证书格式及相互转换)。导入格式还有个问题,原来CyanogenMod Rom只能导入文件名为certs.p12的证书,这个我看了源码才知道,杯具~~更杯具的是,发现我申请的OpenVPN没有提供用户证书及密钥,于是不能用这种方法进行设置。
导入证书的相关讨论:
How To Install Openvpn Certs?:
http://forum.cyanogenmod.com/index.php?/topic/1732-how-to-install-openvpn-certs/page__p__30859__hl__openvpn__fromsearch__1s
installing cert and key for openvpn:
http://forum.cyanogenmod.com/index.php?/topic/304-openvpn-and-certificates/page__hl__openvpn__fromsearch__1
CyanogenMod Rom的源码地址:
http://github.com/cyanogen/CyanogenMod
导入证书的相关源码(见getCertFile方法):
http://github.com/cyanogen/android_packages_apps_CertInstaller
/blob/donut/src/com/android/certinstaller/CertInstaller.java

2)安装OpenVPN Settings:Android G1 Openvpn设置

该文章讲述得比较详细,不过由于TunnelDroid的作者改为直接支持OpenVPN Settings了,所以只要直接从Market下载并安装OpenVPN Settings就可以了。然后建立目录/sdcard/openvpn,把OpenVPN的相关配置文件放进去就可以了。

拿着手机“翻墙”很有Hacker味道,twitter、facebook、youtobe等都可以直接上了。不过我最高兴的是,可以直接访问http://developer.android.com/。

PS. 1)OpenVPN最难的,还是找个免费的OpenVPN服务器

2)高中时发现个软件叫SoftEther的可以建立虚拟局域网的,现在该软件已经变成PacketiX VPN了。该软件由日本筑波大学开发的,据说具有优秀的防火墙穿透能力。官方网站:http://www.softether.co.jp/