Total Pageviews

Saturday, 10 August 2013

webOS系统下,用VPN翻墙

webos 1.x系统目前有prevpnc软件可支持OpenVPN,、Cisco IPSec和 PPTP模式。
webos 2.x系统默认支持IPSec模式,注意这个并不是常见的L2TP IPSec模式,而是Cisco IPSec。
webos 全系列均支持OpenVPN模式,易用性较差(需要一定的linux经验),安全性较高。
webos 1.x系统prevpnc软件下载和使用请参考:
WebOS 2.x 系统(Palm Pre 2)配置OpenVPN方法
最近返回天朝,空气质量先不吐槽,我必须得吐槽一下伟大的天朝局域网。。。
移动联通在我这是完全不能使用PPTP和L2TP,据说是和网关的设备陈旧老化有关,电信的固网宽带倒是工作正常,但是网络那个慢DYB哟。。。
废话不多说,直接开始教程:
你需要准备的东西:
WebOS设备一台,版本要是2.1(或以上,高版本未测试)的;
能联网的电脑一只,以及工作正常的操作系统,请事先卸载360流氓软件以免妨碍折腾工作的进行;
MicroUSB数据线一枚
===================我是牛逼分割线===================
1、下载WebOS Quick Install(下简称WQI),安装方法自行Google,网上大把,这个是折腾WebOS必备软件之一;
2、确认你的WebOS打开了Developer Mode,打开方法就是传奇的upupdowndownleftrightrightbastart 或者可以偷懒输入webos20090606;
3、WQI中搜索Preware并安装到手机;
4、手机中打开刚刚安装的Preware,进入,搜索OpenVPN,安装;
5、从Preware/WQI中搜索安装SDLTerminal。
至此软件安装部分完成。
要进行本OpenVPN运动,您应该手头有四个文件(两个.crt文件,一个 .key文件,一个.ovpn文件),就是配置文件和证书了。
用WQI启动Linux Command Line或者直接手机打开刚刚安装的Terminal,建立一个文件夹,把证书和配置文件扔进去即可。
具体步骤如下:
$cd /etc
$mkdir openvpn
WQI传入证书和配置文件到/etc/openvpn
然后回终端,继续输入:
$openvpn –config /etc/openvpn/xxx.ovpn
Xxx是你ovpn文件名。
然后终端会蹦一大堆字刷屏(log记录),如果看到最后停止在
Initialization Sequence Completed
说明已经正常连接VPN。
如果报错请复制相应文字发送给你的VPN提供者求助。
高级应用:
其实有兴趣可以把启动OpenVPN的命令放到rc实现开机自启动(猜想。。。因为Linux这么干)。
再蛋疼可以写JavaScript程序。。。写前端GUI。。。写好了欢迎分享。。。我写好了也会分享。。。没写好之前暂时笨方法吧~
抱歉我并没有测试密码类型的OpenVPN是否工作,还请网友有机会验证。
---------------------------------------------------

Veer使用openvpn转pptp vpn翻墙

       前几天入手了一个hp veer,商家刷了汉化补丁并安装了一些应用。用着觉得还是不舒服,于是我就重新刷了原版的rom,并用preware安装了一些补丁和应用,用起来顺手很多。但突然发现,veer的vpn配置里只有vpnc和cisco这两种,而我购买的vpn是pptp类型的。在preware里搜了一下pptp无果,难道说我的veer就只能在墙内使用?当然不是了,因为还可以使用openvpn。
       Veer可以使用openvpn,而我手上只有pptp vpn,于是我就想在一台机子里搭建一个openvpn srv,然后将这个openvpn的出口都由pptp转出去,这个转发只需使用iptables就搞定了。显然,这里操作都是在Linux下进行的,其他平台能否使用就不知道了。
       具体方法: (我使用的是Archlinux)
       1. 服务器端
          安装openvpn
          # pacman -S openvpn
          生成证书
          # cp -r /usr/share/openvpn/easy-rsa /etc/openvpn
          # cd /etc/openvpn/easy-rsa
          # . ./vars
          # ./clean-all
          # ./build-ca
          # ./build-key-server 主机名 # 注意这里不要添加密码,这里主机名是你的机器的主机名,可用hostname查看
          # ./build-dh
          # ./build-key 客户端主机名  # 同样不加密码,客户端主机名随意弄个就行,如veer。这里所有的证书都保存在/etc/openvpn/easy-rsa/keys中,需要将客户端使用的证书发送给客户端
          配置openvpn (这里我使用证书验证,使用密码验证的请自行Google)    
                /etc/openvpn/openvpn.conf:
                     port 1194
                     proto tcp
                     dev tun0
                     ca /etc/openvpn/easy-rsa/keys/ca.crt
                     cert /etc/openvpn/easy-rsa/keys/主机名.crt   # 这里要注意证书的名字
                     key /etc/openvpn/easy-rsa/keys/主机名.key   # 同样是证书的名字
                     dh /etc/openvpn/easy-rsa/keys/dh1024.pem
                     server 10.8.0.0 255.255.255.0                           # vpn的网段,自己设吧
                     ifconfig-pool-persist ipp.txt
                     keepalive 10 120
                     comp-lzo
                     user nobody 
                     group nobody
                     persist-key 
                     persist-tun 
                     status /var/log/openvpn-status.log 
                     verb 3 
                     log-append /var/log/openvpn 
                     status /tmp/vpn.status 10 
                     push "dhcp-option DNS 8.8.8.8" 
                     push "redirect-gateway local" 
          修改服务器的转发配置: 
          # echo 1 > /proc/sys/net/ipv4/ip_forward
          # iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o ppp0 -j SNAT --to pptp_vpn网卡的地址 
          # /etc/rc.d/iptables save 


          运行openvpn srv: 
          # /etc/rc.d/openvpn start 
       2. 客户端  (即veer) 
          在veer里使用preware安装openvpn, Xecutah, XServer, XTerm, openssh等。 
          首先在一台机子上写好客户端的配置,然后使用scp将客户端需要的证书和配置一同传过去就好了。 
          配置文件 veer.conf: (这个名字可以随意起) 
                client remote 服务器的ip 1194 
                dev tun0 
                proto tcp 
                resolv-retry infinite 
                nobind 
                persist-key
                persist-tun 
                verb 2 
                ca ca.crt 
                cert 客户端主机名.crt  # 注意证书的名字,这些证书就是前面生成的 
                key 客户端主机名.key  # 同样是证书的名字
                comp-lzo
          使用scp把证书和配置传到veer: (注意,这是在veer上的XTerm中进行操作) 
          # scp -r root@服务器的ip:/root/openvpn . # 注意最后有一点,这里假设证书和客户端配置都是放在服务器的/root/openvpn目录中
          # cd openvpn && openvpn veer.conf # 认证通过就可以翻墙了。