CentOS 6 安装OpenVPN

来源:互联网 发布:兼职淘宝新媒体编辑 编辑:程序博客网 时间:2024/05/02 04:38

最近公司业务需要访问海外站点和服务器,从国内直接访问慢而且某些站点被墙。故从香港买了台云主机当作跳板机使用。这里我们采用了OpenVPN,网上搜了很多文档,都不是很详细,为了后面可能再用到,这里用文档记录详细的安装步骤。


一:系统环境
香港阿里云服务器

操作系统:CentOS6.8 X86_64


二:安装OpenVPN软件包

1、默认的Centos软件源里面没有OpenVPN的软件包,我们可以添加rpmforge的repo,从而实现yum安装openvpn
rpm -ivh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
2、安装完rpmforge的repo之后,执行yum命令安装OpenVPN、easy-rsa
yum -y install openvpn easy-rsa

三:生成OpenVPN需要的证书
cp -R /usr/share/easy-rsa /etc/openvpn 
cd /etc/openvpn/easy-rsa/2.0
chmod +x  *
然后使用easy-rsa的脚本产生证书
ln -s openssl-1.0.0.cnf openssl.cnf
. vars
./clean-all
# 生成根证书ca.crt和根密钥ca.key(一路按回车即可)
./build-ca server
# 为服务端生成证书和密钥(一路按回车,直到提示需要输入y/n时,输入y再按回车,一共两次)
./build-key-server server
# 为客户端生成证书和密钥(一路按回车,直到提示需要输入y/n时,输入y再按回车,一共两次)
./build-key client
./build-dh
查看证书是否生成
ls /etc/openvpn/easy-rsa/2.*/keys/


四:生成OpenVPN服务端配置文件

编辑/etc/openvpn/server.conf文件,内容如下:
port        1194
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/dh2048.pem
server      10.1.1.0 255.255.255.0
push        "redirect-gateway def1 bypass-dhcp"
push        "dhcp-option DNS 8.8.8.8"
log           /var/log/openvpn.log
keepalive   10 120
verb        3
client-to-client
comp-lzo
persist-key
persist-tun


五:开启OpenVPN服务
将openvpn设置为开机自启动的服务
chkconfig openvpn on
立即启动openvpn服务
/etc/init.d/
openvpn start
如果OpenVPN启动失败,请查看OpenVPN的启动日志/var/log/openvpn.log

六:服务端开启nat功能
客户端拨入OpenVPN后,默认网关会指向OpenVPN服务器,为了能使客户端可以上网,需要在服务端开启nat功能
首先,打开ip forward功能
sed -i '/net.ipv4.ip_forward/s/0/1/g' /etc/sysctl.conf 
sysctl -w net.ipv4.ip_forward=1

然后,配置iptables防火墙
/sbin/iptables -A INPUT -p udp -m udp --dport 1194 -j ACCEPT 
iptables -t nat -A POSTROUTING -s 10.1.1.0/255.255.255.0 -j SNAT --to-source SERVER_IP
将SERVER_IP替换为服务器的出口ip


七:OpenVPN客户端配置
好了服务端准备就绪,接下来开始客户端配置

对于Windows客户端
到http://openvpn.se/download.html 下载gui版的OpenVPN,按照提示安装完成后,进入到安装目录,如C:\Program Files\OpenVPN。将Linux服务端使用easy-rsa产生的客户端证书、私钥和ca证书下载到本地。即需要下载到本地的文件如下:
/etc/openvpn/easy-rsa/2.0/keys/ca.crt       #ca证书
/etc/openvpn/easy-rsa/2.0/keys/client.crt   #客户端证书
/etc/openvpn/easy-rsa/2.0/keys/client.key   #客户端私钥
将这些文件下载到C:\Program Files\OpenVPN\config下。

编辑客户端OpenVPN配置文件client.ovpn,内容如下:
client
dev tun
proto udp
remote SERVER_IP 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client.crt
key client.key
comp-lzo
verb 3
redirect-gateway def1
route-method exe
route-delay 2

将SERVER_IP写成OpenVPN服务器的ip,然后打开OpenVPN的GUI,点击连接,完成OpenVPN拨入




0 0
原创粉丝点击