田伟博客 生活日志,用博客记录生活。

CentOS5.5安装OpenVPN

在学习中实践 在实践中学习;有句话是这么说的:“光说不练假把式”,意思是只会说,却不会去做。强调不光会说,而且还要去认真做,这就有点像在学校学习的理论知识,要结合实际操作来加深记忆,或者说是在实际的操作中来达到学习的目的。

今天动手在CentOS中完成OpenVPN的安装和配置,并在本地完成VPN代理上网,本文根据网上资料并根据自己的VPS系统环境整理修改。

服务器环境:

Ramhost的VPS,CentOS5系统,由于系统优化过,本身是不带OpenVPN。

客户端也就是本机:

Windows XP SP2简体中文版,对客户端要求不高。

下面都是以Root身份用SSH登录服务器的操作指令,具体步骤如下:

1.安装软件仓库

rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm

2.安装软件

yum -y install openvpn

3.生成服务器证书

cd /usr/share/openvpn/easy-rsa/2.0
vi vars   #设置相关证书变量值(修改最后5个值: 国家/省/市/组织/电邮)

export KEY_COUNTRY="CN"
export KEY_PROVINCE="GD"
export KEY_CITY="ZhongShan"
export KEY_ORG="FreeVNP"
export KEY_EMAIL=Tony@tianwei.org


source vars  #设置会话环境变量生效
./clean-all  #清理旧文档
./build-ca  #创建CA证书
./build-dh  #创建相关加密文件
./build-key-server server #创建服务器证书

4.复制服务器证书和配置文件

  cp keys/ca.crt   /etc/openvpn
  cp keys/server.key  /etc/openvpn
  cp keys/dh1024.pem  /etc/openvpn
  cp keys/server.crt  /etc/openvpn
  cp /usr/share/doc/openvpn-2.1/sample-config-files/server.conf /etc/openvpn(注:)

注:可以将配置文件范本复制到目录然后修改,也可以用vi新建。

5.修改配置文件(修正)

cd /etc/openvpn
vi server.conf

port 1194
proto udp #TCP/UDP均可
dev tun
ca ca.crt
cert server.crt
key server.key  # This file should be kept secret
dh dh1024.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
client-to-client
keepalive 10 120
comp-lzo
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
log         openvpn.log
verb 3

6.配置启动参数

  chkconfig openvpn on
  service openvpn start


7.生成客户端证书(每个客户端做一次)

cd /usr/share/openvpn/easy-rsa/2.0
./build-key client       #客户名称自定义 
如果需要生成多个客户端,重复执行
./build-key client1 #注意修改名称,确保每个证书名称唯一

8.让VPN可以访问外网设置

vi /etc/sysctl.conf
et.ipv4.ip_forward = 0改成net.ipv4.ip_forward = 1保存。然后执行
sysctl –p

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o venet0 -j SNAT --to-source 1.2.3.4

#将1.2.3.4 换成你自己的IP,

ifconfig #查看自己的IP绑在哪块网卡上的,比如我的外网IP是绑在venet0:0,那么红色字体就venet0

/etc/init.d/iptables save #保存iptables设置,
/etc/init.d/iptables restart #重新启动下。

到这一步服务端就设置好了,然后下载我们的证书,以下三个:

ca.crt,client.crt,client.key

9.安装客户端

http://openvpn.net/ 下载openvpn+gui并安装


10.部署客户端证书

  把下载的证书放到到C:\Program Files\OpenVPN\config(默认安装在此目录)
  ca.crt
  client.crt
  client.key

a.复制C:\Program Files\OpenVPN\sample-config\client.ovpn到上面的config目录
b.复制下面配置参数替换原有内容

client
dev tun
proto udp
remote 1.2.3.4 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert Tony.crt
key Tony.key
ns-cert-type server
comp-lzo
verb 3

到此就可以打开OpenVPN客户端进行链接了。

开机自动启动

vi /etc/rc.local
/etc/init.d/openvpn start

参考资料:

http://salomi.blog.51cto.com/389282/252130

留言列表
syshy
syshy 装了好多次,终于按照你的方法装成个了,但是启动后,我在本地能上qq,网页一律打不开,ping 域名也是无解析,点解啊?
田伟
田伟 8.让VPN可以访问外网设置

vi /etc/sysctl.conf
et.ipv4.ip_forward = 0改成net.ipv4.ip_forward = 1保存。然后执行
sysctl –p

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o venet0 -j SNAT --to-source 1.2.3.4

#将1.2.3.4 换成你自己的IP


请参考这一条
郑州网站建设
郑州网站建设 启凡软件觉得这个新版本还是不错的!值得一用哟
发表留言
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。