linuxOPENVPN搭建.docx

上传人:b****5 文档编号:11569038 上传时间:2023-03-19 格式:DOCX 页数:10 大小:170.64KB
下载 相关 举报
linuxOPENVPN搭建.docx_第1页
第1页 / 共10页
linuxOPENVPN搭建.docx_第2页
第2页 / 共10页
linuxOPENVPN搭建.docx_第3页
第3页 / 共10页
linuxOPENVPN搭建.docx_第4页
第4页 / 共10页
linuxOPENVPN搭建.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

linuxOPENVPN搭建.docx

《linuxOPENVPN搭建.docx》由会员分享,可在线阅读,更多相关《linuxOPENVPN搭建.docx(10页珍藏版)》请在冰豆网上搜索。

linuxOPENVPN搭建.docx

linuxOPENVPN搭建

RedhatLinux5下安装配置OpenVPN 

摘要:

单用户访问VPNServer端局域网段OS:

RedhatAS5 OpenVPNVersion:

2.0.9.  LZO:

Version2.0.3功能需求:

实现公司内部VPN客户端(10.252.255.30)能访问新的70端口VPN,但新的VPN的客户端不能相互访问。

一、所需要软件准备(为了确保安装成功,在安装系统时可以完全安装系统)

1. 到http:

//openVPN.net/上下载openVPN的最新版,至今天是openVPN-2.0.9.tar.gz.

2. 到网上下载lzo  最好是安装lzo,以便实现实时数据传输(好像在安装了lzo后,进行1024位加密时,有异常,需要进行测试)。

3. openssl redhatlinux在安装系统时,一般都安装了该包,如果未安装,请从安装光盘中进行安装。

二、安装软件

(1) lzo软件包的安装注意:

include和lzo的安装目的地址,因为openVPN需要用到。

默认的include安装到/usr/lzo/include/lzo,lib安装到了/usr/local/lib。

1. cplzo-2.03.tar.gz/usr

2. cd/usr

3. tar–zxvflzo-2.03.tar.gz

4. mv lzo-2.03 lzo

5. cd lzo

6. ./configure

7. make

8. makeinstall

(2) openVPN软件的安装,默认的openVPN安装到/usr/openVPN/easy-rsa目录下

9.cd/usr/openVPN

10../configure–with-lzo-headers=/usr/lzo/include/lzo–with-lzo-lib=/usr/local/lib

(如果没有lzo包,使用–disable-lzo,禁止使用lzo数据压缩功能。

更多参数,见./configure–help)

注意:

如果出现如下错误,用后面的方法解决:

configure:

checkingforLZOLibraryandHeaderfiles…

checkinglzo/lzo1x.husability…no

checkinglzo/lzo1x.hpresence…no

checkingforlzo/lzo1x.h…no

checkinglzo1x.husability…yes

checkinglzo1x.hpresence…yes

checkingforlzo1x.h…yes

checkingforlzo1x_1_15_compressin-llzo…no

configure:

error:

LZOheaderswerefoundbutLZOlibrarywasnotfound

解决方法一:

安装lzo-1.08.tar.gz 然后再重新编辑openvon

解决方法二:

 (做软件连接,改文件名)

[root@AS47lib]#cd/usr/lzo/lib/

[root@AS47lib]#ln-s/usr/lzo/lib/liblzo2.aliblzo.a

[root@AS47lib]#ln-s/usr/lzo/lib/liblzo2.laliblzo.la

[root@AS47lib]#ls-l

total496

lrwxrwxrwx 1rootroot    22Jun1910:

52liblzo.a->/usr/lzo/lib/liblzo2.a

lrwxrwxrwx 1rootroot    23Jun1910:

52liblzo.la->/usr/lzo/lib/liblzo2.la

-rw-r–r– 1rootroot497946Jun1910:

51liblzo2.a

-rwxr-xr-x 1rootroot   738Jun1910:

51liblzo2.la

12.make

13.makeinstall

三、证书有效期vi/usr/openVPN/easy-rsa/fdefault_days   = 3650(默认有效期为10年,根据你的需要修改吧,不修改也行)这一步不修改也可以

四、参数文件修改vi/usr/openVPN/easy-rsa/vars

exportKEY_COUNTRY=CN#国家

exportKEY_PROVINCE=GD #所属省

exportKEY_CITY=SZ #所在城市

exportKEY_ORG="RTXVPN" #所属组织,CA证书也会根据这个生成

exportKEY_EMAIL="luofeipeng@"邮箱,可任意写。

[root@AS47easy-rsa]#sourcevars  #使修改的变量生效,注意是.vars

五、openVPN配置

1. 生成证书(服务器证书)

1) cd/usr/openVPN/easy-rsa:

openvpn安装目录

2) ./clean-all:

清除所有openvpn相关信息

3) ./build-ca:

生成以ca证书

Generatinga1024bitRSAprivatekey……….++++++…………………………++++++writingnewprivatekeyto'ca.key'—–Youareabouttobeaskedtoenterinformationthatwillbeincorporatedintoyourcertificaterequest.WhatyouareabouttoenteriswhatiscalledaDistinguishedNameoraDN.TherearequiteafewfieldsbutyoucanleavesomeblankForsomefieldstherewillbeadefaultvalue,Ifyouenter'.',thefieldwillbeleftblank.—–

CountryName(2lettercode)[CN]:

默认即可

StateorProvinceName(fullname)[GD]:

默认即可

LocalityName(eg,city)[GD]:

默认即可

OrganizationName(eg,company)[SZ]:

默认即可

OrganizationalUnitName(eg,section)[]:

RTXVPN:

组织名

CommonName(eg,yournameoryourserver'shostname)[]:

RTXVPN:

主机名

EmailAddress[]:

4)./ubild-dh:

生成dh1024.pem文件

5) ./build-key-serverRTXVPN:

生成服务器证书文件包含.key.crt.csr文件

Generatinga1024bitRSAprivatekey……………………………..++++++……..++++++writingnewprivatekeyto'server.key'—–Youareabouttobeaskedtoenterinformationthatwillbeincorporatedintoyourcertificaterequest.WhatyouareabouttoenteriswhatiscalledaDistinguishedNameoraDN.TherearequiteafewfieldsbutyoucanleavesomeblankForsomefieldstherewillbeadefaultvalue,Ifyouenter'.',thefieldwillbeleftblank.—–

CountryName(2lettercode)[CN]:

StateorProvinceName(fullname)[GD]:

LocalityName(eg,city)[GD]:

OrganizationName(eg,company)[SZ]:

OrganizationalUnitName(eg,section)[]:

RTXVPN

CommonName(eg,yournameoryourserver'shostname)[]:

RTXVPN

EmailAddress[]:

Pleaseenterthefollowing'extra'attributestobesentwithyourcertificaterequest

Achallengepassword[]:

Anoptionalcompanyname[]:

Usingconfigurationfrom/usr/openVPN/easy-rsa/f

Checkthattherequestmatchesthesignature

Signatureok

TheSuGDect'sDistinguishedNameisasfollows

countryName              RINTABLE:

'CN'

stateOrProvinceName  RINTABLE:

'GD'

localityName              RINTABLE:

'GD'

organizationName      RINTABLE:

'SZ'

organizationalUnitName:

PRINTABLE:

'RTXVPN'

commonName           RINTABLE:

'RTXVPN'

emailAddress          :

IA5STRING:

''

CertificateistobecertifieduntilJun 216:

51:

162019GMT(3650days)

Signthecertificate?

[y/n]:

y

1outof1certificaterequestscertified,commit?

[y/n]y

Writeoutdatabasewith1newentries

DataBaseUpdated

2. 客户端证书

在openVPN中,本例的这种配置方法是每一个登陆的VPN客户端需要有一个证书,每个证书在同一时刻只能供一个客户端连接(如果有两个机器安装相同证书,同时拨服务器,都能拨上,但是只有第一个拨上的才能连通网络)。

所以需要建立许多份证书。

下面建立三份,名称分别为client1,client2,client3。

5) ./build-keyclient1

Generatinga1024bitRSAprivatekey……………………….++++++……………………++++++writingnewprivatekeyto'client1.key'—–Youareabouttobeaskedtoenterinformationthatwillbeincorporatedintoyourcertificaterequest.WhatyouareabouttoenteriswhatiscalledaDistinguishedNameoraDN.TherearequiteafewfieldsbutyoucanleavesomeblankForsomefieldstherewillbeadefaultvalue,Ifyouenter'.',thefieldwillbeleftblank.—–

CountryName(2lettercode)[CN]:

StateorProvinceName(fullname)[GD]:

LocalityName(eg,city)[GD]:

OrganizationName(eg,company)[SZ:

OrganizationalUnitName(eg,section)[]:

RTXVPN

CommonName(eg,yournameoryourserver'shostname)[]:

client1#重要:

每个不同的client生成的证书,名字必须不同.

EmailAddress[]:

Pleaseenterthefollowing'extra'attributestobesentwithyourcertificaterequest

Achallengepassword[]:

Anoptionalcompanyname[]:

Usingconfigurationfrom/usr/openVPN/easy-rsa/f

Checkthattherequestmatchesthesignature

Signatureok

TheSuGDect'sDistinguishedNameisasfollows

countryName          RINTABLE:

'CN'

stateOrProvinceName  RINTABLE:

'GD'

localityName         RINTABLE:

'GD'

organizationName     RINTABLE:

'SZ'

organizationalUnitName:

PRINTABLE:

'RTXVPN'

commonName           RINTABLE:

'client1'

emailAddress         :

IA5STRING:

''

CertificateistobecertifieduntilJun 216:

51:

472019GMT(3650days)Signthecertificate?

[y/n]:

y

1outof1certificaterequestscertified,commit?

[y/n]y

Writeoutdatabasewith1newentries

DataBaseUpdated

6) 依次类推生成其他客户端证书/key:

7) ./build-keyclient2

8) ./build-keyclient3

注:

服务器上有./build-keying执行文件。

这是一个批量生成客户端的文件

注意在进入CommonName(eg,yournameoryourserver'shostname)[]:

的输入时,每个证书输入的名字必须不同.

9)./revoke-fullno_user (no_user是一个不存在的用户名,目的是建立吊销文件crl.pem,不然服务启动后,有用户拔入时,VPN服务将自动停止,原因是无吊销文件)

3. 生成的所有证书在/usr/openVPN/easy-rsa/keys下。

其中服务器需要的是ca.crt、server.crt、server.key、dh1024.pem共4个文件,每个客户端需要的是ca.crt、client1.crt、client1.key共3个。

4. 配置服务器端文件

port70

protoudp

devtap

server10.191.0.0255.255.0.0:

客户端获取IP的网段

push"route10.252.255.0255.255.255.0":

路由客户端会自动添加此路由

push"route10.190.0.0255.255.0.0"

#push"dhcp-optionDNS10.191.0.1"

ifconfig-pool-persist/usr/local/etc/ipp.txt:

记录客户端IP信息的文档

client-config-dir/usr/local/etc/ccd

ca/usr/openvpn/easy-rsa/keys/ca.crt

cert/usr/openvpn/easy-rsa/keys/RTXVPN.crt

key/usr/openvpn/easy-rsa/keys/RTXVPN.key

dh/usr/openvpn/easy-rsa/keys/dh1024.pem

keepalive10120

#client-to-client如果此处开启,刚VPN的客户端能够实现相互访问,公司禁止此功能。

comp-lzo

#usernobody

#groupnobody

max-clients5000

status/usr/openvpn/log/openvpn-status.log

log/usr/openvpn/log/openvpn.log

writepid/usr/openvpn/log/server.pid

verb3 

j) 改成verb5可以多查看一些调试信息可改可不改

k) status /usr/openVPN/logs/openVPN-status.log(VPN状态检查文件,可以根据此文件来统计登录信息,需要自己写程序来进行统计)

l) log        /usr/openVPN/logs/openVPN.log (启用日志功能)

m) log-append /usr/openVPN/logs/openVPN.log  (启用日志追加功能)

n) crl-verify/usr/openVPN/easy-rsa/keys/crl.pem (必须启用证书吊销功能,保证安全)

5. 启动openVPN服务(在这次搭建过程中,把iptables都清空了,什么规则也没做。

1) 关闭防火墙

Iptables–F清空防火墙策略

2) echo“1”>/proc/sys/net/ipv4/ip_forward (启用路由功能)

3) /usr/local/sbin/openVPN-config/usr/local/etc/server.conf (启动openVPN服务)

4) 为了实现开机启动,在/etc/rc.local后面添加

echo“1”>/proc/sys/net/ipv4/ip_forward

/usr/local/sbin/openVPN–config/usr/local/etc/openVPN/server.conf 

5)路由

一、PN的路由,

DestinationGatewayGenmaskFlagsMetricRefUseIface

192.168.126.0*255.255.255.0U000eth0

10.191.0.0*255.255.0.0U000tap0

10.190.0.0192.168.126.1255.255.0.0UG000eth0

10.252.0.0192.168.126.1255.255.0.0UG000eth0

169.254.0.0*255.255.0.0U000eth0

default192.168.126.10.0.0.0UG000eth0

二、端10.252.255.30路由

三、器物理机上的路由:

四、端获取IP后的路由:

是自动从服务器上分配下来的路由。

6. 安装客户端(Windows必须启用DHCPClient服务,才能获得IP地址)

1) 从http:

//openVPN.se/上下载与openVPN服务器版本一致的Windows客户端“OpenVPNGUIForWindows”例如,服务器装的  是OpenVPN2.09,那么下载的OpenVPNGUIfowwindows应该是:

2) 将服务器上/usr/openVPN/easy-rsa/keys下面的ca.crt、client1.crt、client1.key复制到C盘下建立的一个keys文件夹(不同的客户端用不同的证书,但必须有ca.crt和再加上用户的两个文件,如client2.crt和client2.key)

3) 将/usr/openVPN/sample-config-files/client.conf 复制到客户端,改名为C:

\ProgramFiles\OpenVPN\config\client.oVPN

4) 编辑client.oVPN

client

devtap

protoudp

port70

remote219.133.36.173

resolv-retryinfinite

comp-lzo

nobind

persist-key

cac:

\\keys\\ca.crt

certc:

\\keys\\lfp.crt

keyc:

\\keys\\lfp.key

verb5

mute20

a) prototcp改成udp

b) remote219.133.36.173(VPN服务器的Internet网口IP)

c) ca那3行改为

caca.crt

certclient1.crt

keyclient1.key

7. 连接:

在右下角的openVPN图标上右击,选择“Connect”。

正常情况下应该

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1