Openvz安装Openvpn配置vpn-Burstnet vps CentOS
今天购买并开通了国内群众比较熟悉的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.conf:nano /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