第一步:检查 OpenVPN 所需环境
cat /dev/net/tun
如果返回信息为:File descriptor in bad state 说明正常.
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o venet0 -j MASQUERADE
如果返回信息为:iptables: Unknown error 4294967295 说明正常.
第二步:安装 OpenVPN
$ rpm -Uvh http://syslogserver.googlecode.com/files/epel-release-5-3.noarch.rpm epel-release-5-4.noarch网盘
$ yum install openvpn
第三步:配置 OpenVPN
$ locate easy-rsa
$ cp -R /usr/share/openvpn/easy-rsa /etc/openvpn/
$ cd /etc/openvpn/easy-rsa/2.0
$ vi vars
Ecvps 上配置的时候,发现无法定位 easy-rsa ,即在使用 locate easy-rsa 时返回:
locate: can not open '/var/lib/mlocate/mlocate.db': No such file or directory
此时,只需要运行 updatedb 这个命令,即可解决问题! 修改如下内容,保存.
export KEY_COUNTRY="CN"
export KEY_PROVINCE="HN"
export KEY_CITY="ZZ"
export KEY_ORG="kangxiaowei.com"
export KEY_EMAIL="sishixiong@gmail.com"
生成证书.
$ ./clean-all
$ source ./vars
$ ./build-ca server
全部回车.
$ ./build-key-server server
全部回车 最后2个y.
$ ./build-key sishixiong
全部回车 最后2个y.
$ ./build-dh
打包下载客户端所需文件.
$ tar -zcvf keys.tar.gz keys
把 keys 放到正确目录.
$ mv keys /etc/openvpn/
新建 server.conf.
$ vi /etc/openvpn/server.conf
放入如下内容.
port 1194 $监听端口
proto udp $可以是 udp 或 tcp
dev tun
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/server.crt
key /etc/openvpn/keys/server.key
dh /etc/openvpn/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 转发. 输入:
vi /etc/sysctl.conf
开始编辑,找到:
net.ipv4.ip_forward = 0
改成:
net.ipv4.ip_forward = 1
保存. 让它生效:
sysctl -p
如果此时出现错误.
error: "Operation not permitted" setting key "net.ipv4.tcp_syncookies"
就编辑sysctl.conf:
$ vi /etc/sysctl.conf
注释掉 net.ipv4.tcp_syncookies 那一行. 配置 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.
$ service openvpn start
检查 OpenVPN.
$ netstat -anup | grep 1194
OpenVPN 开机启动.
$ chkconfig openvpn on
第四步:OpenVPN 客户端. 下载客户端 http://www.openvpn.net/index.php/open-source/downloads.html
复制 ca.crt 和 sishixiong.crt 和 sishixiong.key 这三个文件,放到 C:\Program Files\OpenVPN\config
. 新建 sishixiong.ovpn,输入以下内容:
client
dev tun
proto udp
remote 服务器IP地址 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert sishixiong.crt
key sishixiong.key
ns-cert-type server
comp-lzo
verb 3
搞定! 可以用:
service openvpn start | stop | restart
来控制了.