CENTOS6.5下的OpenVPN的配置

来源:互联网 发布:范磊c语言视频教程 编辑:程序博客网 时间:2024/05/01 09:42
一、安装准备
1、安装openssl、gcc、libpam
#yum -y install openssl-devel openssl
#yum -y install gcc gcc-c++
#yum -y install pam-devel.x86_64

如遇Segmentation Fault,在/usr/local/lib下,删除链接libz.so和libz.so.1
#rm -f libz.so
#rm -f libz.so.1
安装完之后恢复这两个链接即可
#ln -s libz.so.1.2.7 libz.so.1
#ln -s libz.so.1 libz.so

二、OpenVPN服务端安装过程

下载lzo,下载链接为http://www.oberhumer.com/opensource/lzo/#download,下载完之后复制到/var/tmp目录下
1、lzo的安装
#cd /var/tmp    //安装目录
#gunzip zxvf lzo-2.04.tar.gz    //解压
#tar zxvf lzo-2.04.tar    //解压
#cd lzo-2.04
#./configure
#make
#make install   #编译与安装

2、openvpn下载与安装

下载openvpn,下载链接为https://openvpn.net/index.php/open-source/downloads.html,下载完之后复制到/var/tmp目录下
#cd /var/tmp
#gunzip xvf openvpn-2.3.10.tar.gz
#tar xvf openvpn-2.3.10.tar
#./configure
#make
#make install

安装好了检查一下openvpn版本
#openvpn --version

3、easy-sea安装
下载openvpn,下载链接为https://community.openvpn.net/openvpn/wiki/GettingEasyRsa,下载完之后复制到/var/tmp目录下
#cd /var/tmp
#gunzip xvf easy-rsa-2.2.0_master.tar.gz
#tar xvf easy-rsa-2.2.0_master.tar
#./configure
#make
#make install

安装路径是/usr/local/share/easy-esa/

三、制作证书
复制源文件至目标路径
#mkdir /etc/openvpn
#cp -rf /usr/local/share/easy-rsa /etc/openvpn/

0、配置vars
#vi /etc/openvpn/easy-rsa/vars
export KEY_SIZE=2048      //DH证书的长度设为2048,缺省为1024

export KEY_COUNTRY="CN"
export KEY_PROVINCE=“SH”
export KEY_CITY=“Shanghai”
export KEY_ORG=“jhrdc”
export KEY_EMAIL=“admin@jh.cn”
export KEY_OU=“jhrdc“
export KEY_NAME=“jhrdc”       //特别重要,“jhrdc”根据情况自己设定

#cd /etc/openvpn/easy-rsa
#source vars  //执行脚本生成证书时,需要设置一些环境变量
#./clean-all    //制作客户端证书时,不需要执行该脚本

1、生成根证书-CA证书,CA证书同时需要部署在服务器和客户端上
#./build-ca
#cp keys/ca.crt /etc/openvpn/

2、生成服务器端证书
#./build-key-server jhrdc
#./build-dh
#cp keys/jhrdc.crt keys/jhrdc.key keys/dh2048.pem /etc/openvpn/

3、Client端证书
#./build-key jhrdc    //使用服务器端的CN设定
Generating a 2048 bit RSA private key
................................................................................................+++
....+++
writing new private key to ‘jhrdc.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [CN]:
State or Province Name (full name) [SH]:
Locality Name (eg, city) [Shanghai]:
Organization Name (eg, company) [JH]:
Organizational Unit Name (eg, section) [jhrdc]:
Common Name (eg, your name or your server's hostname) [jhrdc]:testchannel1    //给不同的客户端创建证书和私钥时,可以使用不同名字
Name [jhrdc]:testchannel1
Email Address [admin@jh.cn]:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:


如遇“TXT_DB error number 2”错误,重新touch一个keys/index.txt

生成的客户端证书位于/etc/openvpn/easy-rsa/keys,分别是jhrdc.crt、jhrdc.csr、jhrdc.key。这几个证书和前面所生成的服务器端的证书有所不同,仅可为客户端所使用,请将这几个证书文件和ca.crt打包,拷贝到客户端电脑备用。

注意,同一个证书,缺省配置情况下同时只能从一个客户端登陆

四、配置openvpn服务器
修改服务器配置文件
#cp /var/tmp/openvpn-2.3.10/sample/sample-config-files/server.conf /etc/openvpn/
#vi /etc/openvpn/server.conf
port 1194 //端口设为1194
proto tcp //协议设为tcp
ca ca.crt //ca.crt的路径,建议和server.conf在一个目录下
cert jhrdc.crt //jhrdc.crt的路径,建议和server.conf在一个目录下
key jhrdc.key //jhrdc.key的路径,建议和server.conf在一个目录下
server 10.8.0.0 255.255.255.0 //DHCP服务器的IP段,缺省是10.8.0.0
client-to-client //VPN客户端之间允许互相访问,如不需要客户端之间互相访问,则可注释该配置
max-clients 10 //并发的客户端链接,可设为10个
user nobody //服务启动时使用的系统用户,建议使用nobody
group nobody //服务启动时使用的系统用户组,建议使用nobody

五、启动openvpn的服务器端
#cd /etc/openvpn
#openvpn —config /etc/openvpn/server.conf —daemon

六、配置客户端
下载Windows客户端,下载链接为https://openvpn.net/index.php/download/community-downloads.html,

安装后,将第三步所生成的证书文件和配置文件放在一个目录里,并修改客户端配置文件,然后启动该配置文件即大功告成。配置文件简要说明
client
proto tcp
remote 111.111.111.111 1194   //VPN服务器的IP地址和端口号
ca ca.crt //ca.crt的路径,建议和server.conf在一个目录下
cert testchannel1.crt //testchannel1.crt的路径,建议和server.conf在一个目录下

key testchannel1.key //testchannel1.key的路径,建议和server.conf在一个目录下


原文 http://bbs.csdn.net/topics/391948237

0 0
原创粉丝点击