BurstNET VPS上搭建OpenVPN
2,552 views 三月 28, 10 by Timothy俺的VPS是基于OpenVZ的,因而不支持PPTP VPN,唯一的办法,是搭建OpenVPN。和PPTP VPN相比,OpenVPN的搭建要稍微麻烦一些。并且服务端和客户端需要生成证书,以及修改配置文件。下面把BurstNET VPS上,Ubuntu系统中搭建OpenVPS的流水账记录一下,供日后参考:
1.前期工作,OpenVPN,需要TUN支持,默认情况下,是没有开启的,需要到后台管理平台中,点击Enable Tun/Tap即可开通。开通后,用命令
1 | cat /dev/net/tun |
如果返回 cat: /dev/net/tun: File descriptor in bad stat,表明已经成功启用TUN支持。
另外,需要iptables_nat模块支持,用命令
1 | iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o venet0 -j MASQUERADE |
检查,如果返回iptables: Unknown error 4294967295,表明系统还不支持,需要联系客服开通。
2.安装OpenVPN,这个最简单不过了:
1 | sudo apt-get install openvpn |
安装好后,默认的路径在 /usr/share/openvpn,进入 /usr/share/openvpn/easy-rsa/2.0 目录,用vim修改vars文件,加入自己的信息,这些信息在生成证书的时候会用到,下面是示例:
1 2 3 4 5 | export KEY_COUNTRY="CN" export KEY_PROVINCE="SC" export KEY_CITY="ChengDu" export KEY_ORG="FreedomUnion" export KEY_EMAIL="admin@xiaozhou.net" |
修改好后,保存文件,用命令 . ./var运行,注意两个点之间有个空格。运行后,会设置好变量,接下来按照下面顺序,运行命令,生成证书:
1 2 3 4 | ./build-ca ./build-key-server timothy-vps ./build-key ClientName ./build-dh |
./build-key-server 用来生成服务端证书,./build-key用来生成客户端证书,有几个客户端,就需要生成几个。
生成好后,接下来需要配置服务端配置文件,把/usr/share/openvpn/easy-rsa/2.0/keys目录下所有生成好的证书文件,拷贝到 /etc/openvpn/keys,接下来,编辑服务端配置文件:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | cd /etc/openvpn vim server.conf #输入以下内容到配置文件 port 1194 proto tcp dev tun ca /etc/openvpn/keys/ca.crt cert /etc/openvpn/keys/timothy-vps.crt key /etc/openvpn/keys/timothy-vps.key dh /etc/openvpn/keys/dh1024.pem server 10.8.0.0 255.255.255.0 push "redirect-gateway def1" push "dhcp-option DNS 208.67.222.222" push "dhcp-option DNS 208.67.220.220" client-to-client keepalive 10 120 comp-lzo persist-key persist-tun verb 3 |
编辑好后,保存文件,用vim编辑 /etc/sysctl.conf,把net.ipv4.ip_forward=0改成 net.ipv4.ip_forward = 1,运行 sysctl -p命令,编辑/etc/init.d/iptables,加入以下规则:
/sbin/iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j SNAT –to-source Your-VPS-IP
接下来,服务端配置基本结束,运行命令,启动OpenVPN客户端:
1 | /usr/sbin/openvpn --config /etc/openvpn/server.conf & |
如果需要开机启动,把上面命令加入到/etc/rc.local即可
服务端启动成功截图
接下来,配置客户端了,Windows下使用OpenVPN,需要下载最新版的OpenVPN安装程序。安装好后,将在VPS上生成好的证书文件,下载到客户端,包括ca.crt证书,以及客户端证书:timothy.crt timothy.key,将它们统统拷贝到OpenVPS安装目录下的config目录,编写客户端文件,保存为client.ovpn,内容如下:
client
dev tun
proto tcp
remote Your-VPS-IP 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert timothy.crt
key timothy.key
ns-cert-type server
comp-lzo
verb 3
保存好后,右键点击client.ovpn,选择“Start OpenVPN on this config file”,建立VPN连接,建立好后,命令行会有如下提示: Initialization Sequence Completed,表示连接成功,这下,可以VPN上网了。去ip138.com,看看你的IP,应该是VPS的IP了:
声明: 此Blog中的文章和随笔仅代表作者在某一特定时间内的观点和结论,对其完全的正确不做任何担保或假设
本站文章均采用 知识共享署名-相同方式共享3.0 协议进行授权,除非注明,本站文章均为原创,转载请注明转自 Timothy's Space 并应以链接形式标明本文地址!
@Timothy :
谢谢你的文章,不过我的iptable 不成功
[root@200218 ~]# iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o venet0 -j MASQUERADE
iptables: Unknown error 4294967295
@PL: 貌似是语句有点问题。 你是哪家的VPS?
@Timothy : 我用的就是Burstnet的$5.99的VPS哟
@PL: BurstNET的,在web控制面板就可以开通。后面的转发,用这句:/sbin/iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j SNAT –to-source Your-VPS-IP,就可以了
我得到的是上面的信息,怎么跟客户沟通呀?
我还不知哪能与客服沟通
能帮我看看是怎么回事吗?
http://forum.ubuntu.org.cn/viewtopic.php?f=166&t=320669
还没有人回复怎么办…
@Guy: 看了,不过还是不太清楚啥原因。具体是什么错误信息?
@Timothy :现在我比较清楚是我客户端的问题,服务器配置没问题了.用win7可以成功连接,一切正常.用ubuntu作客户端连接的时候不行,连上之后除了我原来上外网的网关和本机可以ping通,其它IP都不能PING通了,大概会是什么原因呢?
@Guy: Ubuntu下没试过这个客户端。我也是在Win7下装的客户端。
cat /dev/net/tun
显示cat: /dev/net/tun: No such file or directory
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o venet0 -j MASQUERADE
没有任何反应
是不是没有开通!debian的系统
我还是按照你下面的方法继续操作了一遍
到这一步就和你的不一样了
mofei:~# /usr/sbin/openvpn –config /etc/openvpn/server.conf &
[1] 32269
mofei:~# Wed Mar 30 20:08:47 2011 OpenVPN 2.1_rc11 i486-pc-linux-gnu [SSL] [LZO2] [EPOLL] [PKCS11] built on Sep 18 2008
Wed Mar 30 20:08:47 2011 Diffie-Hellman initialized with 1024 bit key
Wed Mar 30 20:08:47 2011 Cannot load CA certificate file /etc/openvpn/easy-rsa/ path (null) (SSL_CTX_load_verify_locations) (OpenSSL)
Wed Mar 30 20:08:47 2011 Exiting(意思是不能链接?)
我已经搞了好几天这个了~无果!
小白很郁闷
看到网上很多类似的教程!虽说有点不一样!但大体的意思都是一样的!至今也没折腾出来一个!
求助啊!很郁闷啊
又试了一次还是不行
我发了TK,并且也回复开通了TUN,TAP
下面这是原话
I have enabled TUN/TAP and iptables nat for your vps. Please verify from your end.
Let us know if you need any further assistance.
貌似现在就是无法启动openvpn
还是这里
mofei:~# /usr/sbin/openvpn –config /etc/openvpn/server.conf &
[1] 28291
Wed Mar 30 21:10:30 2011 OpenVPN 2.1_rc11 i486-pc-linux-gnu [SSL] [LZO2] [EPOLL] [PKCS11] built on Sep 18 2008
Wed Mar 30 21:10:30 2011 Cannot open /etc/openvpn/keys/dh1024.pem for DH parameters: error:02001002:system library:fopen:No such file or directory: error:2006D080:BIO routines:BIO_new_file:no such file
Wed Mar 30 21:10:30 2011 Exiting
@mofei: 看样子是没找到对应的文件。看看你配置文件里面ca证书和pem文件的路径是否正确。
额…还是不行啊!server.conf里面的路径我改过了,但还是搞不定!
[...] BurstNET VPS上搭建OpenVPN [...]