VPN配置简单说明书.docx
- 文档编号:28242421
- 上传时间:2023-07-09
- 格式:DOCX
- 页数:26
- 大小:25.24KB
VPN配置简单说明书.docx
《VPN配置简单说明书.docx》由会员分享,可在线阅读,更多相关《VPN配置简单说明书.docx(26页珍藏版)》请在冰豆网上搜索。
VPN配置简单说明书
VPN配置简单说明书
VPN配置简单说明书
一、IKE协商的阶段简单描述:
IKE协商可以和TCP的三次握手来类比,只不过IKE协商要比TCP的三次握手要复杂一些,IKE协商采用的UDP报文格式,默认端口是500,在主模式下,一个正常的IKE协商过程需要经过9个报文的来回,才最终建立起通信双方所需要的IPSecSA,然后双方利用该SA就可以对数据流进行加密和解密。
下面结合简单描述一下协商的过程。
假设A和B进行通信,A作为发起方,A发送的第一个报文内容是本地所支持的IKE的策略(即下面所提到的Policy),该policy的内容有加密算法、hash算法、D-H组、认证方式、SA的生存时间等5个元素。
这5个元素里面值得注意的是认证方式,目前采用的主要认证方式有预共享和数字证书。
在简单的VPN应用中,一般采用预共享方式来认证身份。
在本文的配置中也是以预共享为例来说明的。
可以配置多个策略,对端只要有一个与其相同,对端就可以采用该policy,并在第二个报文中将该policy发送回来,表明采用该policy为后续的通信进行保护。
第三和第四个报文是进行D-H交换的D-H公开值,这与具体的配置影响不大。
在完成上面四个报文交换后,利用D-H算法,A和B就可以协商出一个公共的秘密,后续的密钥都是从该秘密衍生出来的。
第五和第六个报文是身份验证过程,前面已经提高后,有两种身份验证方式——预共享和数字证书,在这里,A将其身份信息和一些其他信息发送给B,B接受到后,对A的身份进行验证,同时B将自己的身份信息也发送给A进行验证。
采用预共享验证方式的时候,需要配置预共享密钥,标识身份有两种方式,其一是IP地址,其二是主机名(hostname)。
在一般的配置中,可以选用IP地址来标识身份。
完成前面六个报文交换的过程,就是完成IKE第一阶段的协商过程。
如果打开调试信息,会看到IKESAEstablish(IKESA已经建立),也称作主模式已经完成。
IKE的第二阶段是快速模式协商的过程。
该模式中的三个报文主要是协商IPSecSA,利用第一阶段所协商出来的公共的秘密,可以为该三个报文进行加密。
在配置中,主要涉及到数据流、变换集合以及对完美前向保护(PFS)的支持。
在很多时候,会发现IKESA已经建立成功,但是IPSecSA无法建立起来,这时最有可能的原因是数据流是否匹配(A所要保护的数据流是否和B所保护的数据流相对应)、变换集合是否一致以及pfs配置是否一致。
二、IKE、IPSec配置基本步骤
1.配置IKE策略(policy)
policy就是上图中的IKE策略。
Policy里面的内容有hash算法、加密算法、D-H组、生存时间。
可以配置多个policy,只要对端有一个相同的,双方就可以采用该policy,不过要主要policy中的认证方式,因为认证方式的不同会影响后续的配置不同。
一般采用预共享(preshare)。
在目前的安全路由器和VPN3020上的实现上都有默认的配置选项,也就是说如果你新增加一条策略后,即使什么都不配置,退出后,也会有默认值的。
2.配置预共享密钥(preshare)
在配置预共享密钥的时候,需要选择是IP地址还是Hostname来标识该密钥,如果对端是IP地址标识身份,就采用IP地址来标识密钥;如果对端是Hostname来标识身份,则采用hostname来标识密钥。
3.配置本端标识(localid)
本端标识有IP地址和Hostname,在安全路由器上,默认的是用IP地址来标识。
即不配置本端标识,就表示是用IP地址来标识。
以上三个步骤就完成IKE的配置,以下是IPSec的配置:
4.配置数据流(access-list)
很容易理解,部署任何VPN都需要对数据流所限制,不可能对所有的数据流都进行加密(anytoany)。
配置好数据流后,在加密映射(map)中引用该数据流。
5.配置变换集合(transform-set)
变换集合是某个对等方能接受的一组IPSec协议和密码学算法。
双方只要一致即可。
注意,在VPN3020和带加密模块的安全路由器上支持国密办的SSP02算法。
6.配置加密映射(map)
为IPSec创建的加密映射条目使得用于建立IPSec安全联盟的各个部件协调工作,它包括以下部分:
l所要保护的数据流(引用步骤4所配置的数据流)
l对端的IP地址(这个是必须的,除非是动态加密映射,见本文后面的章节)
l对所要保护的数据流采用什么加密算法和采用什么安全协议(引用步骤5所配置的变换集合)
l是否需要支持PFS(双方要一致)
lSA的生存时间(是可选的,不配置的话有默认值)
7.应用(激活)加密映射
在安全路由器上是将该加密映射应用到接口上去,而在VPN3020上是激活(active)该map。
三、动态加密映射技术
目前,安全路由器系列和VPN系列均支持动态加密映射。
什么是动态加密映射?
动态加密映射所应用的环境是什么呢?
我们可以从以下的一个案例中来说明动态加密映射的概念。
如下图:
在上图的网络拓扑中,MP803接入Internet的并不是宽带接入(固定IP地址),而是在通过电信ADSL拨号来获取到IP地址,不是固定的IP地址。
这时候,对于上端MP2600A来说,就存在问题了,回想一下前面所描述的配置步骤,在步骤六中配置加密映射的时候,需要配置对端的peerIP地址,这时候怎么办呢?
或许您想到——那我每次拨号获取到IP地址后,再在两端来配置IPSec——这种解决办法是OK的,只要客户或者您自己容忍每次MP803重新拨号后,您重新去更改配置。
显然,这样方法充其量只能用来测试的。
动态加密映射就是用来解决这类问题的。
顾名思义,动态加密映射,就是说,在配置加密映射的时候,不需要配置对端的peerIP地址。
目前,安全路由器和VPN系列都支持动态加密映射,但由于两者实现上的差异,导致他们在配置动态加密映射的时候存在一些不同,在后文的实际配置案例中会讲到。
四、NAT穿越略述
NAT穿越是指在两台VPN网关之间的还存在NAT设备,从原理来说,NAT和IPSec存在一定的矛盾。
主要体现两点:
NAT更改了IP数据包的IP源地址或者目的地址,这与IPSec协议中的AH认证头协议存在不可调和的矛盾,因此如果IPSec报文需要穿越NAT设备的话,在配置变换集合的时候就不能选用AH协议(目前,由于ESP协议也提供验证功能,AH使用很少);第二点是NAT设备的端口地址转换是针对TCP/UDP/ICMP等协议。
对于ESP协议,没有相应的处理机制。
具体详细资料请查看IETF的草案。
此外,NAT穿越目前还没有国际标准,公司在国内率先实现了NAT穿越功能。
目前,公司的安全路由器、VPN3020等都已经实现了NAT穿越。
NAT穿越对于路由器和VPN3020上的配置没有任何的改变。
目前,公司的北京办和总部的互联的两台路由器建立隧道就是穿越了NAT。
五、实际配置案例
案例1:
路由器与路由器互通
网络拓扑如图所示:
网络拓扑1
需求:
两台MP2600路由器,都有固定的公网IP地址,现在需要构建VPN,保护在两台路由器后面的网络。
使PC1能够访问到PC2。
规划:
使用IKE自动协商密钥,policy的参数设置,加密算法为des、验证算法为sha方式为预共享、D-H组为group1;身份标识为IP地址,以IP地址作来标识预共享密钥;变换集合参数设置,隧道模式为tunnel、协议-算法为esp-des、esp-md5;不启用pfs;在配置注意,避免配置所要保护的数据流为any到any。
首先是在实际使用过程中,不会有这样的需求,其次,这样会让很多本来不需要加密的通信无法通信。
具体配置脚本:
=======================================================
MP2600A
=======================================================
MP2600A#shrunning-config
BuildingConfiguration...done
Currentconfiguration...
version2.24.8
hostnameMP2600A
enablepassword[WOWWWNXSXencrypt
noservicepassword-encrypt
noserviceenhanced-secure
iptcptimestamp
//步骤4:
配置访问列表,定义所要保护的数据流。
ipaccess-listextended1001
permitip192.168.1.00.0.0.255192.168.2.00.0.0.255
exit
//步骤5:
配置变换集合,定义数据加密所使用的算法和安全协议
cryptoipsectransform-settr1esp-desesp-md5-hmac
modetunnel
exit
//步骤六:
配置加密映射,将各种组件联系在一起
cryptomapmap11ipsec-isakmp
matchaddress1001//引用步骤4所配置的数据流
setpeer2.2.2.2
settransform-settr1//引用步骤5所配置的变化集合
setsecurity-associationlifetimeseconds28800
setsecurity-associationlifetimekilobytes4608000
exit
interfaceloopback0
exit
interfacefastethernet0
ipaddress1.1.1.3255.255.255.0
//步骤七:
将加密映射应用到接口上去.
cryptomapmap1
exit
interfaceethernet0
ipaddress192.168.1.1255.255.255.0
exit
iproute0.0.0.00.0.0.01.1.1.1
//步骤1:
配置IKE的policy
cryptoisakmppolicy1
encryptiondes
hashsha
authenticationpre-share
group1
lifetime86400
exit
//步骤2:
配置预共享密钥,此处配置的是对端VPN网关的IP地址.
cryptoisakmpkeymaipuaddress2.2.2.2
=======================================================
MP2600B
=======================================================
MP2600B#shrunning-config
BuildingConfiguration...done
Currentconfiguration...
version2.24.8
hostnameMP2600B
userfaintpassword0faint
enablepassword[WOWWWNXSXencrypt
noservicepassword-encrypt
noserviceenhanced-secure
iptcptimestamp
//该数据流与MP2600A的数据流相对应。
ipaccess-listextended1001
permitip192.168.2.00.0.0.255192.168.1.00.0.0.255
exit
cryptoipsectransform-settr1esp-desesp-md5-hmac
modetunnel
exit
cryptomapmap11ipsec-isakmp
matchaddress1001
setpeer1.1.1.3
settransform-settr1
setsecurity-associationlifetimeseconds28800
setsecurity-associationlifetimekilobytes4608000
exit
interfaceloopback0
exit
interfacefastethernet0
ipaddress2.2.2.2255.255.255.0
cryptomapmap1
exit
interfaceethernet0
ipaddress192.168.2.1255.255.255.0
exit
interfaceserial0
physical-layersync
encapsulationhdlc
exit
interfaceserial2
physical-layersync
encapsulationhdlc
exit
iproute0.0.0.00.0.0.02.2.2.1
//与MP2600A的policy至少有一个相同
cryptoisakmppolicy1
encryptiondes
hashsha
authenticationpre-share
group1
lifetime86400
exit
cryptoisakmpkeymaipuaddress1.1.1.3
路由器上的调试命令:
如果是telnet登录到路由器上,执行termonitor命令。
然后打开调试开关
debugcryptoisakmpnormal就能够看到IKE的协商过程和调试信息,从调试信息中可以获取到协商到那个阶段,由于那些问题而协商失败。
以下是两端成功的协商信息。
注意:
如果中途协商失败,两端需要执行clearcryptosa命令来清除当前SA的状态以便于重新协商。
几个与IPSec相关的show命令:
showcryptoisakmppolicy:
查看路由器上已经配置了那些policy;
showcryptoisakmpconnection
查看路由器上已经存在的isakmp连接数;
showcryptoisakmpidentity:
查看路由器上的身份标识方式;
showcryptoipsecsa;查看路由器上已经存在的IPSecSA;该命令比较重要,有时候通过该命令来判断IPSecSA是否已经建立成功。
Showcryptoipsectransform-set:
查看路由器上已经配置的变换集合。
案例2:
路由器与路由器之动态加密映射
网络拓扑如图所示:
网络拓扑2
下面简单说明其配置步骤:
IKE的配置与前述的配置步骤一样,主要是IPSec的配置有些差异。
动态加密映射是不需要配置所要保护的数据流。
因此,步骤四:
配置变换集合;步骤五:
配置动态加密映射(在路由器上的命令是:
cryptodynamic-map);步骤六:
配置一个静态加密映射,将其与动态加密映射关联起来;步骤七:
在接口上应用步骤六中配置的静态加密映射,此处不能也无法应用动态加密映射;
配置规划:
MP803所挂接的局域网当需要和总部通信的时候(源:
192.168.2.0/24;目的:
192.168.1.0/24),应该走VPN隧道,这也是我们要保护的数据流,对于其他的数据流,例如局域网中的主机上网的数据流,应该是走NAT(源:
192.168.2.0/24;目的:
any),很明显,这两个数据流是包含的关系,路由器的处理顺序是先进行NAT转换,到了接口后再匹配VPN隧道。
因此在配置NAT的数据流的时候,先要deny掉该上总部内网的数据流。
具体配置脚本:
=================================================================
MP803:
ADSL拨号,同时实现上网和走NAT
=================================================================
hostnameMP803
enablepassword[WOWWWNXSXencrypt
noservicepassword-encrypt
noserviceenhanced-secure
iptcptimestamp
//定义要保护的数据流
ipaccess-listextended1001
permitip192.168.2.00.0.0.255192.168.1.00.0.0.255
exit
//定义该数据流走NAT上网,为了避免走内网的数据流也“上网”去了,
//先deny该数据流
ipaccess-listextended1002
denyip192.168.2.00.0.0.255192.168.1.00.0.0.255
permitip192.168.2.00.0.0.255any
exit
dialer-list1protocolippermit
//配置NAT
ipnatinsidesourcelist1002interfacedialer0overload
cryptoisakmppolicy1
encryptiondes
hashsha
authenticationpre-share
group2
lifetime28800
exit
cryptoisakmpkeymaipuaddress1.1.1.3
cryptoipsectransform-settr1esp-desah-md5-hmac
modetunnel
exit
cryptomapmap11001ipsec-isakmp
matchaddress1001
setpeer1.1.1.3
settransform-settr1
setsecurity-associationlifetimeseconds28800
setsecurity-associationlifetimekilobytes4608000
exit
interfaceloopback0
exit
//拨号配置,map是应用到本虚拟接口
interfacedialer0
ipaddressnegotiated
dialerpool1
dialer-group1
encapsulationppp
ppppapsent-username01234mp@169password01234mp
mtu1492
ipnatoutside
cryptomapmap1
exit
interfacefastethernet0
ipaddress192.168.2.1255.255.255.0
ipnatinside
exit
//物理接口配置
interfaceatm0
pvc1/33
encapsulationaal5snap
pppoe-clientdial-pool-number1
noiproute-cache
nocdpenable
exit
iproute0.0.0.00.0.0.0dialer0
=======================================================
MP2600A:
配置动态加密映射
=======================================================
MP2600A#shrunning-config
BuildingConfiguration...done
Currentconfiguration...
version2.24.8
hostnameMP2600A
enablepassword[WOWWWNXSXencrypt
noservicepassword-encrypt
noserviceenhanced-secure
iptcptimestamp
//步骤四:
配置变换集合,定义数据加密所使用的算法和安全协议
cryptoipsectransform-settr1esp-desesp-md5-hmac
modetunnel
exit
//步骤五:
配置动态加密映射
cryptodynamic-mapdmap11ipsec-isakmp
settransform-settr1
setsecurity-associationlifetimeseconds28800
setsecurity-associationlifetimekilobytes4608000
exit
//步骤六:
配置静态加密映射,与该动态加密映射关联起来
cryptomapmap11ipsec-isakmpdynamic-mapdmap1
interfacefastethernet0
ipaddress1.1.1.3255.255.255.0
//步骤七:
将静态加密映射应用到接口上去.
cryptomapmap1
exit
interfaceethernet0
ipaddress192.168.1.1255.255.255.0
exit
iproute0.0.0.00.0.0.01.1.1.1
//步骤1:
配置IKE的policy
cryptoisakmppolicy1
encryptiondes
hashsha
authenticationpre-share
group1
lifetime86400
exit
//步骤2:
配置预共享密钥,由于下端是动态IP地址,因此配置地址为any
//删除该预共享密钥的命令是nocryptoisakmpkeyhostnameany
cryptoisakmpkeymaipuany
注意:
在完成配置,进行数据流触发的时候,需要注意的是要保证ADSL拨号能够获取到IP地址,在下端路由器上能够ping通上端路由器。
案例3:
VPN与VPN互通
网络拓扑如图所示:
网络拓扑3
需求:
两台VPN3020,都有固定的公网IP地址,现在需要构建VPN,保护在两台VPN3020后面的网络。
使PC1能够访问到PC2。
规划:
使用IKE自动协商密钥,policy的参数设置,加密算法为des、验证算法为md5,认证方式为预共享、D-H组为group1;身份标识为IP地址,以IP地址作来标识预共享密钥;变换集合参数设置,隧道模式为tunnel、协议-算法为esp-des、esp-m
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VPN 配置 简单 说明书