Openvz安装Openvpn配置vpn-Burstnet vps CentOS

2011年9月30日 | 分类: 翻墙相关 | 标签: , , , ,

今天购买并开通了国内群众比较熟悉的Burst vps(“84 vps”),在CentOS 5系统下选择Openvz安装Openvpn,经过复杂的搭建过程配置好vpn线路,却发现速度却并不是很快。前两个月写了一篇关于基于ssh结合Tunnelier+Foxyproxy代理上网的文章,不过确实是vpn的速度要比ssh快一些;今天发现留言的两位鱼童靴对文中提到的快速的免费日本VPN客户端感兴趣,因为客户端不在这台电脑上,只能明天白天再将vpn发到你们邮箱了。

Burstnet vs Rapidxen

前几天也写了篇关于rapidxen vps搭建vpn的文章,建了几个vpn账号国内访问国外网站速度还算可以。Rapidxen和Burst net都是比较便宜的vps主 机(每月$6左右),相比较而言Burst的vePortal vps管理后台功能更加强大,而且相同价位的vps性能参数要比rapidxen高很多,如6美元的vps型号:CPU: 1GHZ, RAM: 512MB, DISKSPACE: 20GB, BANDWIDTH: 1000GB/MONTH ,还附送两个ip,而rapidxen ram只有128MB且流量限制每月600G。

Openvz vs Xen

因此按理说Burst 的vpn速度会比Rapidxen好很多,事实上并非如此。这可能和两者vps系统的虚拟化技术不同有关,rapidxen采用基于xen的半虚拟化技 术,Burst 则是基于操作系统级别虚拟化技术Openvz的vps,Google上查了些资料说虽然Openvz虚拟化技术会使vps有更高的性能表现,但其配置却非 常灵活,表面上分了512M内存给你,实际上因主机商超买vps后,最后分配到每个用户的甚至还没有Xen的128M好。

Openvpn vs pptpd

在Openvz vps下只有venet0,没有eth0,大部分Openvz没有masqurade;因此不能像Xen vps通过pptpd来搭建vpn。在Openvz下可以使用Openvpn来搭建vpn,需要生成key证书,生成服务器端和客户端配置文件,在用户的客户端机器上也要安装openvpn 的GUI客户端,因此Openvz安装Openvpn配置vpn搭建的整个过程要复杂很多,下面是具体步骤:

Openvz VPS安装Openvpn配置vpn

一、VPS安装Openvpn配置准备工作

以Burst为例,购买Burst vps的过程中,选择vps操作系统如CentOS 5 32 bit,vps开通之后可以通过uname –a命令查看linux vps系统的发行版本信息,getconf WORD_BIT查看是64位还是32位机。vps开通之后,进入Burstnet vePortal管理后台开启TUN/TAB,点击Enable Tun/Tap按钮即可,并不需要发ticket给Burst net客服帮助启用。开启之后输入命令cat /dev/net/tun,若出现 cat: /dev/net/tun: File descriptor in bad state 说明开启成功。以下部分参考mven .cn博客的介绍:BurstNET VPS搭建OpenVPN全过程记录。

二、升级下载和安装系统软件

1. 安装iptables等yum install gcc gcc-devel openssl openssl-devel iptables

2. 下载Openvpn和lzo

mkdir /opt/software
cd /opt/software
wget http://www.oberhumer.com/opensource/lzo/download/lzo-2.03.tar.gz
wget http://openvpn.net/release/openvpn-2.0.9.tar.gz

3. 安装Openvpn和lzo

#cd /opt/software
#tar -zxvf lzo-2.03.tar.gz
#cd lzo-2.03
#./configure
#make && make install
#cd ../
#tar -zxvf openvpn-2.0.9.tar.gz
#cd openvpn-2.0.9
#./configure --with-lzo-headers=/usr/local/include --with-lzo-lib=/usr/local/lib --with-ssl-headers=/usr/include/openssl --with-ssl-lib=/usr/lib
#make && make install

三、生成CA证书、Server Key和Client Key

1. 初始化参数

#cd /opt/software/openvpn-2.0.9/easy-rsa
#export D=`pwd`
#export KEY_CONFIG=$D/openssl.cnf
#export KEY_DIR=$D/keys
#export KEY_SIZE=1024
#export KEY_COUNTRY=CN
#export KEY_PROVINCE=GD
#export KEY_CITY=GZ
#export KEY_ORG="farlee.info" (设置为自己的)
#export KEY_EMAIL="farlee@farlee.info"(设置为自己的)

2. 生成CA证书

./clean-all
./build-ca

采用初始化参数的只需按Enter取用默认值,生成OpenVPN的CA证书只要设置下面两项,其他直接回车:

Organizational Unit Name (eg, section) []:farlee.info(设置为你自己的)
Common Name (eg, your name or your server's hostname) []:vpnhostname(设置为自己的名称或主机名)

3. 建立Server Key

#./build-key-server server
OpenVPN创建server key只要设置下面几项,其他采用初始化参数的只需回车:
Organizational Unit Name (eg, section) []:farlee.info (设置为自己的)
Common Name (eg, your name or your server's hostname) []:vpnhostname
A challenge password []:vpn111(设置密码)
An optional company name []:farlee.info
Sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y

4、生成Client Key

#./build-key client1  设置同上
Organizational Unit Name (eg, section) []:farlee.info
Common Name (eg, your name or your server's hostname) []:client1
A challenge password []:abcd1234
An optional company name []:farlee.info
Sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y

如果要创建多个vpn帐户,则同样如client1一样生成其他客户端证书/key

./build-key client2harry
./build-key client3farlee

5、生成 Diffie Hellman 参数./build-dh

四、创建Openvpn vps服务器和客户端配置文件

1. Openvpn服务器端配置文件nano /usr/local/etc/server.conf 复制如下文件内容:

local 1.1.1.1 (改为你的VPS IP地址)
port 1194
proto udp
dev tun
ca /opt/software/openvpn-2.0.9/easy-rsa/keys/ca.crt
cert /opt/software/openvpn-2.0.9/easy-rsa/keys/server.crt
key /opt/software/openvpn-2.0.9/easy-rsa/keys/server.key
dh /opt/software/openvpn-2.0.9/easy-rsa/keys/dh1024.pem

server 10.8.0.0 255.255.255.0
client-to-client
keepalive 10 120
comp-lzo
persist-key
persist-tun
status /opt/software//openvpn-2.0.5/easy-rsa/keys/openvpn-status.log
verb 4

push "dhcp-option DNS 10.8.0.1"
push "dhcp-option DNS 4.2.2.1"
push "dhcp-option DNS 4.2.2.2"

2. Openvpn配置客户端配置文件nano /usr/local/etc/client.ovp

client

dev tun
proto udp
remote VPS的IP地址 1194
persist-key
persist-tun
ca ca.crt
cert client1.crt
key client1.key
ns-cert-type server
comp-lzo
verb 3
redirect-gateway def1

3. 下载以上生成的客户端client key和客户端配置文件到本地计算机

#cp /usr/local/etc/client.ovpn /opt/software/openvpn-2.0.9/easy-rsa/keys/
#tar -vcf keys.tar /opt/software/openvpn-2.0.9/easy-rsa/keys/

如使用putty客户端程序psftp.exe下载这些文件到本地计算机:lcd 本地路径设置保存压缩文件的位置,cd /opt/software/openvpn-2.0.9/easy-rsa/,执行psftp下载命令get keys.tar即下载到本地客户端。

五、配置OpenVPN启动和设置

1. 启动OpenVPN服务器/usr/local/sbin/openvpn --config /usr/local/etc/server.conf

2. 设置OpenVPN开机自动启动nano /etc/rc.local,在最后面加入:
/usr/local/sbin/openvpn –config /usr/local/etc/server.conf > /dev/null 2>&1 &

3. 修改本机OpenVPN VPS域名服务器nano /etc/resolv.conf,将nameserver改为下面两行:

nameserver   4.2.2.1
nameserver   4.2.2.2

4. 开启域名服务

若需要访问被blocked掉了域名的网站,如twitter、facebook、google相关产品网站,需要在OpenVPN 服务器VPS主机上开启 name server, 并将 dns push 给 client,命令:service named start

5. 修改/etc/sysctl.confnano /etc/sysctl.conf,改成如下:net.ipv4.ip_forward = 1

6. 设置iptables

#iptables -t nat -A POSTROUTING -s 10.8.0.0/16 -j SNAT --to 1.1.1.1 (改成VPS的IP地址)
#/etc/init.d/iptables save
#/etc/init.d/iptables restart

六、Opnevpn windows 客户端安装设置

终于配置到了客户端了,接下来在用户Windows 系统下的安装OpenVPN GUI程序就比较简单了。

1. 下载安装和服务器端配套的OpenVPN GUI For Windows

http://openvpn.se/files/install_packages/openvpn-2.0.9-gui-1.0.3-install.exe,直接点next安装即可;

2. 将刚才下载到本地的keys.tar解压,全部放到OpenVPN GUI For Windows安装目录下的config目录下,检查一下至少要包含以下6个文件:
ca.crt | ca.key | client1.crt | client1.csr | client1.key | client.ovpn

3. 在客户端双击client.ovpn即可启动OpenVPN GUI For Windows客户端,不用输入账号密码即可连接至vpn服务器。若双击client.ovpn 没有反应,则在任务栏点 OpenVPN GUI 的小图标右键,选择 edit config,将内容复制过去再保存,然后再点右键中的 connect即可。

4、如果多个客户端要用到多个vpn账号,OpenVPN的配置和上面相同,再将config文件目录里的 client1.crt,client1.csr,client1.key 替换成对应的 client2harry.xxx 即可,最后在client.ovpn 中将cert client1.crt 和key client1.key的值改成client2harry.crt和client2harry.key。

 

来源http://farlee.info/archives/burstnet-vps-openvz-install-openvpn-config-vpn-centos.html

目前还没有任何评论.