OpenVZ VPS 下 CentOS 安装 OpenVPN 详细教程
博主声明:本文参考自亿旭网的这篇OPENVZ VPS CENTOS 下安装OPENVPN 零起点专用教程,经过博主亲试,确实可用,并且没有转发问题,可以放心使用~
第一步:检查 OpenVPN 所需环境
1.检测虚拟网卡(TUN/TAP)支持
如果返回信息为:cat: /dev/net/tun: File descriptor in bad state 说明正常
2.检测iptables_nat模块
如果返回信息为:iptables: Unknown error 4294967295 说明正常
说明:如果上面两步,返回信息有一个不正常,那么你需要发个ticket让客服帮忙开通。因为没有这两项支持OpenVZ主机将无法顺利安装 OpenVPN !
第二步:安装 OpenVPN
环境准备好之后,我们正式开始安装 OpenVPN 了。这里使用的是 yum 来进行安装。
1.默认情况下 CentOS 的 yum 源没有 OpenVPN 的,先安装 EPEL 这个东西(代码如下)
rpm -Uvh epel-release-5-4.
2.成功后 yum 源里面就有 OpenVPN 了,直接使用命令安装
说明:这里就体现了 yum 安装的好处,比如 OpenVPN 需要 lzo 支持,安装的时候会检测系统,没有的组件会自动安装进去。
3.找一下安装到哪去了,命令如下:
找出来了,原来在这里:/usr/share/openvpn/easy-rsa 大家应该都是一样的
第三步:配置 OpenVPN
1.把easy-rsa这个文件夹移出来
2.进入然后/etc/openvpn/easy-rsa/2.0目录,用vi vars来编辑环境变量。
vi vars
根据实际情况修改,保存。这里涉及到编辑器vi的用法,如果有机会我会整理一篇有关的教程。
export KEY_PROVINCE=”TJ”
export KEY_CITY=”TJ”
export KEY_ORG=”liukangxu.info”
export KEY_EMAIL=”admin@liukangxu.info”
3.保存后把. vars设置生效。
第四步:生成证书
1.创建证书颁发机构(系统出现提示操作时,直接全部回车)
2.创建CA之后来生成服务器证书(系统出现提示操作时,前面直接全部回车 最后2个按y)
3.服务器证书生成完了,我们来生成客户端证书,理论上每个OpenVPN用户都有独立的证书。(系统出现提示操作时,前面直接全部回车 最后2个按y)
说明:这里的vpn1是客户端名称,如果你再生成第二个随便换成别的名字就可以如:./build-key vpn2)
4.最后生成Diffie Hellman参数,这个需要一小点时间
./build-dh
第五步:设置OpenVPN参数
1.新建 server.conf
2.放入如下内容:(port 1996 是监听端口 proto udp 可以是 udp 或 tcp 推荐使用 udp)
proto udp
dev tun
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/easy-rsa/2.0/keys/server.crt
key /etc/openvpn/easy-rsa/2.0/keys/server.key
dh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem
server 10.8.0.0 255.255.255.0
push “redirect-gateway def1″
push “dhcp-option DNS 8.8.8.8″
push “dhcp-option DNS 8.8.4.4″
client-to-client
keepalive 10 120
comp-lzo
persist-key
persist-tun
verb 3
第六步:启用 ipv4 转发
1.编辑/etc/sysctl.conf
2.找到net.ipv4.ip_forward = 0改成net.ipv4.ip_forward = 1保存
3.让更改生效
说明:如果此时出现错误 error: “Operation not permitted” setting key “net.ipv4.tcp_syncookies” ,就编辑 /etc/sysctl.conf,注释掉 net.ipv4.tcp_syncookies 那一行
4.配置 iptables
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j SNAT --to-source 你的服务器IP地址
/etc/init.d/iptables save
/etc/init.d/iptables restart
第七步:启动 OpenVPN
1.启动 OpenVPN
2.检查 OpenVPN
3907/openvpn
第八步:OpenVPN 客户端
1.下载客户端: http://swupdate.openvpn.org/community/releases/openvpn-2.2.1-install.exe
2.使用 SFTP 软件把客户端所需文件下载到本地,服务器路径为:/etc/openvpn/easy-rsa/2.0/keys 中5个文件的:
vpn1.csr
vpn1.key
ca.crt
ca.key
将上述5个文件下载到 C:Program FilesOpenVPNconfig
3、C:Program FilesOpenVPNconfig 文件夹下,新建 vpn1.ovpn,输入以下内容
dev tun
proto udp
remote 服务器IP地址 1996
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert vpn1.crt
key vpn1.key
ns-cert-type server
comp-lzo
verb 3
第九步:恭喜你大功告成
1.在开始菜单里面找到OpenVPN GUI并运行,Vista和Win7下需要管理员身份运行。点Connect后等一下,出现本地连接2,搞定!
2.在服务器上你可以用 service openvpn start | stop | restart 来控制
3.另外在此推荐一个自动区分国内国外线路的项目 chnroutes ,不但能够加快国内网站的访问速度,还能节省 VPN 的流量,一举两得哦亲~
iptable的命令写有问题,提示参数错误
哦,那你多找几篇教程比对一下
可以参考一下 linux network cookbook
可以参考一下 oreilly
可以参考一下 oreilly <>
很详细
感谢支持~