OpenVPN安装配置

原文:http://www.e2fsck.org/openvpn-installation-configuration.html

前言: 一直在用PPTP VPN用的挺好的,但发现openvpn用的人很多,于是我也来安装一下看看, 192.168.0.6为外网IP

第一步 安装准备

1. 关闭 selinux 和 iptables

2. 安装 openssl

安装lzo

[root@dota ~]# tar xvf lzo-2.04.tar.gz

[root@dota ~]# cd lzo-2.04

[root@dota lzo-2.04]# ./configure

[root@dota lzo-2.04]# make && make install

 

3. 下载安装 openvpn

[root@dota ~]# wget http://swupdate.openvpn.org/community/releases/openvpn-2.2.1.tar.gz

[root@dota ~]# tar xvf openvpn-2.2.1.tar.gz

[root@dota ~]# cd openvpn-2.2.1

[root@dota openvpn-2.2.1]# ./configure

[root@dota openvpn-2.2.1]# make && make install

4. 检查 tun 是否安装

[root@dota openvpn-2.2.1]# modinfo tun

5. 启用IP转发

[root@dota openvpn-2.2.1]# echo 1 > /proc/sys/net/ipv4/ip_forward

这个要加到开机启动里

6. 复制配置文件

[root@dota openvpn-2.2.1]# mkdir -p /etc/openvpn

[root@dota openvpn-2.2.1]# cp -r * /etc/openvpn/

[root@dota ~]# cp -r sample-config-files/server.conf /etc/openvpn/

7. 创建主CA证书及密钥

[root@dota openvpn-2.2.1]# cd /etc/openvpn/easy-rsa/2.0/

[root@dota 2.0]# vi vars

把下面的内容改下

export KEY_COUNTRY=”CN”
export KEY_PROVINCE=”JS”
export KEY_CITY=”Suzhou”
export KEY_ORG=”google.com
export KEY_EMAIL=”test@google.com

[root@dota 2.0]# . ./vars   (注意. .中间有个空格,成功会出现下面的提示)
NOTE: If you run ./clean-all, I will be doing a rm -rf on /root/openvpn-2.2.1/easy-rsa/2.0/keys

[root@dota 2.0]# ./clean-all

[root@dota 2.0]# ./build-ca

一路回车即可。

8. 为服务器创建证书和密钥

[root@dota 2.0]# ./build-key-server server

一路回车,最后2个 y 确认即可。

[root@dota 2.0]# ./build-dh

安装 server 所需的 CA 证书

[root@dota 2.0]# cp keys/ca.crt ../
[root@dota 2.0]# cp keys/dh1024.pem ../
[root@dota 2.0]# cp keys/server.key ../
[root@dota 2.0]# cp keys/server.crt ../

然后编辑配置文件

[root@dota 2.0]# cd ../..

[root@dota openvpn]# vi server.conf

修改成如下配置

dev tap
;dev tun

push “dhcp-option DNS 8.8.8.8″
push “dhcp-option DNS 8.8.4.4″

ca /etc/openvpn/easy-rsa/ca.crt
cert /etc/openvpn/easy-rsa/server.crt
key /etc/openvpn/easy-rsa/server.key   # This file should be kept secret
dh /etc/openvpn/easy-rsa/dh1024.pem

再添加1行

push “redirect-gateway def1″        #重定向客户端网关为VPN服务器的网关

9. 启动 openvpn server

[root@dota openvpn]# cp -r /etc/openvpn/sample-scripts/openvpn.init /etc/init.d/openvpn

[root@dota openvpn]# chmod 755 /etc/init.d/openvpn

[root@dota openvpn]# service openvpn restart
正在关闭openvpn:[确定]
正在启动 openvpn:[确定]
[root@dota openvpn]# chkconfig openvpn on

 

10. 创建客户端证书

[root@dota 2.0]# cd /root/openvpn-2.2.1/easy-rsa/2.0/build-key

[root@dota 2.0]# ./build-key client

一路回车,最后2个 y 确认即可。

[root@dota 2.0]# ./build-dh

11. 在 iptables 中开启 udp 的 1194 端口

[root@dota openvpn-2.2.1]# iptables -A INPUT -p udp -m udp –dport 1194 -m state –state NEW -j ACCEPT

12. 转发所有来自 10.8.0.0网段的流量

[root@dota openvpn-2.2.1]# iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j MASQUERADE

转发地址:

[root@dota keys]# iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j SNAT –to-source 192.168.0.6

 

第二步  客户端配置

把 /root/openvpn-2.2.1/easy-rsa/2.0/keys 目录下的 ca.crt、client.crt、client.key 和

/root/openvpn-2.2.1/sample-config-files 目录下的 client.conf 放到客户端安装的 config 目录下

然后 XP 上安装

openvpn-2.0.9-gui-1.0.3-install.exe

安装好后把sample-config目录下的client.ovpn拷贝到config目录下,然后编辑

client

dev tap
;dev tun

remote 192.168.0.6 1194

persist-key 
persist-tun 
ca ca.crt 
cert client.crt 
key client.key 
ns-cert-type server 
comp-lzo 
verb 3

redirect-gateway def1

然后,桌面右下角,右键红色的图标,连接

附:如果不能上国外网站,请把

XP 客户端“本地连接”里,把第一DNS改成“8.8.8.8”

 

错误:

1. 如果提示 619 错误,则查看“本地连接”防火墙那栏,会提示有个 windows 服务没开,打开就可以了。

发表评论