vpn全部

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、Ipsec VPN
由于Internet宽带接入的普及,它的带宽与价格非常的便宜(相对于专线而言).8M的ADSL价位不到两千元/年.越来越多的企业开始发掘基于宽带接入的增值应用.由于VPN技术的成熟,如对数据的加密技术与VPN Qos技术的发展,使得基于Internet接入的VPN应用日趋增多.
VPN技术可用于远程用户的接入(用于取代传统拨号接入技术)访问,用于对主线路的备份作为备份链路,甚至可以取代传统的专线地位用于企业各分支机构的专有网络互联.
用于取代专线或备份线路接入的Site-to-Site VPN接入技术,用于远程终端用户接入访问的Remote-VPN(也叫Easy VPN,取代传统拨号接入).
基于WEB页面访问的WEB VPN技术.又叫SSL VPN.
1.Site-to-site vpn(三种类型)
站点间的VPN技术.IKE使用UDP端口500,Ipsec ESP和AH使用协议号50和51.因此如果要实现VPN 穿越,必须在相应接口上配置访问列表以允许VPN流量通过。

Site-to-Site VPN的配置通常可分为四个步骤:
1.传统路由及需互访的流量定义
定义路由设置
感兴趣的流量(即定义互访的内网主机流量以触发VPN参数协商)
2.定义IKE参数(IKE第一阶段安全关联协商)
定义ISAKMP策略
定义ISAKMP对等体和验证密钥
3.定义Ipsec参数(IKE第二阶段安全关联协商)
定义Ipsec的转换集Transform
定义Ipsec的加密映射(crypto map)。

4.将加密映射应用到相应接口。

当路由器收到一个数据包时,它将检查安全策略(即所定义的感兴趣的流量)以决定是否为此数据包提供保护。

如果匹配访问列表所定义的流量,则路由器决定采用何种安全服务,并决定IPSEC端点所使用的地址,并检查是否存在一个安全关联(security association).
如果没有安全关联,则路由器将与对等体协商建立。

而IKE用来在站点路由器之间建立一个提供验证的安全通道,并在此安全通道上进行Ipsec安全关联的协商。

IKE首先验证它的对等体,可通过预共享密钥,公钥密码或数字签名来实现。

一旦对等体被验证通过,Diffe-Hellman协议用来产生一个共有的会话密钥。

1.1静态地址
1.站点间用于建立VPN的两台设备都有静态公网地址.
内部主机通过NA T地址转换后访问Internet.但内部主机之间的访问流量不通过NA T转换,而通过Ipsec 加密进行访问。

Internet
R2
分支站点中心站点
如图所示,在远程站点间,由于专线费用过高,因此考虑与中心站点间采用IPsec VPN技术来实现远程分支站点与中心站点间的私网互联。

因为内网是私有地址,所以在上Internet时必须做NA T地址转换。

而通过VPN隧道在内网之间访问的时候,相当于两边私网通过专线互联,因此不需要做NA T。

1路由配置,NAT配置及感兴趣流量的定义
R1与R3分别是中心站点与分支站点的Internet接入路由器,在接入路由器上通常配置默认路由。

1.接口及路由配置
R1配置:
interface Ethernet0/1
ip address 10.1.1.1 255.255.255.0
interface Serial1/0
ip address 201.1.1.1 255.255.255.0
ip route 0.0.0.0 0.0.0.0 Serial1/0
R2配置
interface Serial1/0
ip address 201.1.1.2 255.255.255.0
!
interface Serial1/1
ip address 202.1.1.1 255.255.255.0
R3配置
interface Ethernet0/1
ip address 172.16.1.1 255.255.255.0
interface Serial1/1
ip address 202.1.1.2 255.255.255.0
ip route 0.0.0.0 0.0.0.0 Serial1/1
2.NAT配置
在R1和R3上分别做PA T地址转换,定义需要做NA T的访问列表。

R1配置:
R1(config)#int e0/1
R1(config-if)#ip nat inside
R1(config-if)#int s1/0
R1(config-if)#ip nat outside
ip nat inside source list 102 interface Serial1/0 overload
定义了访问列表102所指定的流量进行NAT转换,overload选项进行端口复用(PAT)
R1(config)#access-list 102 deny ip 10.1.1.0 0.0.0.255 172.16.1.0 0.0.0.255
将10.1.1.0访问172.16.1.0的流量不进行NAT转换。

R1(config)#access-list 102 permit ip 10.1.1.0 0.0.0.255 any
对去往Internet的流量进行NAT转换
R3配置:
R3(config)#int e0/1
R3(config-if)#ip nat inside
R3(config)#int s1/1
R3(config-if)#ip nat outside
ip nat inside source list 102 interface Serial1/1 overload
R3(config)#access-list 102 deny ip 172.16.1.0 0.0.0.255 10.1.1.0 0.0.0.255
R3(config)#access-list 102 permit ip 172.16.1.0 0.0.0.255 any
3.定义触发Ipsec保护的感兴趣的流量
R1
access-list 101 permit ip 10.1.1.0 0.0.0.255 172.16.1.0 0.0.0.255
R3
access-list 101 permit ip 172.16.1.0 0.0.0.255 10.1.1.0 0.0.0.255
2定义IKE参数
1.定义IKE加密策略:IKE用来创建使用共享密钥的安全关联(SA)
R1
R1(config)#crypto isakmp policy 1
R1(config-isakmp)#?
ISAKMP commands:
authentication Set authentication method for protection suite 定义验证的方法
default Set a command to its defaults
encryption Set encryption algorithm for protection suite 定义加密的方法
exit Exit from ISAKMP protection suite configuration mode
group Set the Diffie-Hellman group Diffie-Hellman算法用于密钥的安全交换。

hash Set hash algorithm for protection suite 哈希算法用来验证数据的完整性
lifetime Set lifetime for ISAKMP security association
no Negate a command or set its defaults
R1(config-isakmp)#authentication pre-share 定义双方身份验证采用预共享密钥交换方式
R1(config)#crypto isakmp key 0 cisco (验证密钥为cisco)address 202.1.1.2 (对等体地址)其它没有配置的参数有一个默认配置,加密算法默认为des,哈希算法为SHA-1, Diffie-Hellman采用组一的密钥交换方法,安全关联的生命周期为86400秒。

R3
R3(config)#crypto isakmp policy 1(1为策略编号,可以为不同站点配置不同策略号)
R3(config-isakmp)#authentication pre-share
R3(config)#crypto isakmp key 0 cisco address 201.1.1.1
3.定义Ipsec参数(IKE第二阶段安全关联的建立)
1.定义要保护数据的加密和验证转换集方法(Transform设置)
R1:
R1(config)#crypto ipsec transform-set mytrans esp-3des
R3
R3(config)#crypto ipsec transform-set mytrans(设置的转换集命名)?
ah-md5-hmac AH-HMAC-MD5 transform
ah-sha-hmac AH-HMAC-SHA transform
comp-lzs IP Compression using the LZS compression algorithm
esp-3des ESP transform using 3DES(EDE) cipher (168 bits)
esp-aes ESP transform using AES cipher
esp-des ESP transform using DES cipher (56 bits)
esp-md5-hmac ESP transform using HMAC-MD5 auth
esp-null ESP transform w/o cipher
esp-seal ESP transform using SEAL cipher (160 bits)
esp-sha-hmac ESP transform using HMAC-SHA auth
这些都是对数据进行加密和完整性验证的方法集。

可以任选使用,但站点两端设置必须相同。

AH只能用于对数据包包头进行完整性检验,而ESP用于对数据的加密和完整性检验。

R3(config)#crypto ipsec transform-set mytrans esp-3des
注意:这里所定义的mytrans转换集要在后面的crypto map中调用。

R3(cfg-crypto-trans)#mode ?
transport transport (payload encapsulation) mode
tunnel tunnel (datagram encapsulation) mode
在这里可以定义IPSEC工作在传输模式或隧道模式,传输模式通常用于主机与主机终端之间进行加密传输,而隧道模式则用于网络设备间建立VPN联接。

默认情况下,工作在tunnel模式。

2.定义加密映射:加密映射把远程对等体,T ransform定义的对流量的保护方法及感兴趣的流量关联在一起,
R1:
R1(config)#crypto map mymap 1 ipsec-isakmp
R1(config-crypto-map)#set peer 203.1.1.2 (设置对等体地址)
R1(config-crypto-map)#set transform-set mytrans(将前面的Transform设置关联起来)
R1(config-crypto-map)#match address 101 (与第一步所定义的感兴趣的流量关联)
R3(config-crypto-map)#set peer 201.1.1.1
R3(config-crypto-map)#set transform-set mytrans
R3(config-crypto-map)#match address 101
4.将加密映射应用至接口
R1:
interface Serial1/0
crypto map mymap
!
R3
interface Serial1/1
crypto map mymap
!
5.检验配置
R1#ping 172.16.1.1 source 10.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.1.1, timeout is 2 seconds:
Packet sent with a source address of 10.1.1.1
.!!!!
可见双方站点内网通信联通性OK
R1#show crypto engine connections active
ID Interface IP-Address State Algorithm Encrypt Decrypt
1 Serial1/0 201.1.1.1 set HMAC_SHA+DES_56_CB 0 0 2003 Serial1/0 201.1.1.1 set 3DES 4 0 2004 Serial1/0 201.1.1.1 set 3DES 0 4
可见已经为加密的流量建立了安全关联
R1#show crypto isakmp sa
dst src state conn-id slot status
202.1.1.2 201.1.1.1 QM_IDLE 1 0 ACTIVE
可见第一阶段安全关联已经建立成功
R1#show crypto ipsec sa
interface: Serial1/0
Crypto map tag: mymap, local addr 201.1.1.1
protected vrf: (none)
local ident (addr/mask/prot/port): (10.1.1.0/255.255.255.0/0/0) remote ident (addr/mask/prot/port): (172.16.1.0/255.255.255.0/0/0) current_peer 202.1.1.2 port 500
PERMIT, flags={origin_is_acl,}
#pkts encaps: 22, #pkts encrypt: 22, #pkts digest: 22
#pkts decaps: 22, #pkts decrypt: 22, #pkts verify: 22
#pkts compressed: 0, #pkts decompressed: 0
#pkts not compressed: 0, #pkts compr. failed: 0
#pkts not decompressed: 0, #pkts decompress failed: 0
#send errors 3, #recv errors 0
local crypto endpt.: 201.1.1.1, remote crypto endpt.: 202.1.1.2 path mtu 1500, ip mtu 1500
current outbound spi: 0xE52E393E(3845011774)
inbound esp sas:
spi: 0x62197B9E(1645837214)
transform: esp-3des ,
in use settings ={Tunnel, }
conn id: 2004, flow_id: SW:4, crypto map: mymap
sa timing: remaining key lifetime (k/sec): (4422230/3189)
IV size: 8 bytes
replay detection support: N
Status: ACTIVE (表示输入流量的安全关联建立成功)inbound ah sas:
inbound pcp sas:
outbound esp sas:
spi: 0xE52E393E(3845011774)
transform: esp-3des ,
in use settings ={Tunnel, }
conn id: 2003, flow_id: SW:3, crypto map: mymap
sa timing: remaining key lifetime (k/sec): (4422230/3184)
IV size: 8 bytes
replay detection support: N
Status: ACTIVE(表示输出流量的安全关联建立成功)
1.2动态地址
实际应用中,建立VPN联接的中心站点通常有固定的公网IP地址。

而分支站点经常采用ADSL技术接入到Internet,通常没有固定公网地址,每次拨号获得的公网地址都不相同。

这时需要用到TED技术(隧道端点发现技术)来建立站点间的VPN联接。

拓朴结构如下
A D S L接入动
In tern et
R2
分支站点中心站点
VP N隧道联
目前企业常见应用是Internet接入采用ADSL拨号上网,所获得的公网是动态变化的。

中心站点采用100M专线接入Internet,是静态公网地址。

.
IPSec VPN的配置通常必须静态配置IPSec对等体。

为了建立动态地址的IPSec VPN连接,可以采用TED(隧道端点发现)技术使得IPSec对等体能够动态发现相应的IPSec对等体,从而建立基于动态地址的IPSec VPN。

同时为了实现内部用户上网的需求,在边界路由器上做PA T.
具体配置步骤如下:
1基本接口,路由配置,NAT配置及定义VPN感兴趣的流量
R1与R3分别是中心站点与分支站点的Internet接入路由器,在接入路由器上通常配置默认路由。

1.接口及路由配置
R1配置:
interface Ethernet0/1
ip address 10.1.1.1 255.255.255.0
interface Serial1/0
ip address 201.1.1.1 255.255.255.0
ip route 0.0.0.0 0.0.0.0 Serial1/0
R2配置
interface Serial1/0
ip address 201.1.1.2 255.255.255.0
!
interface Serial1/1
ip address 202.1.1.1 255.255.255.0
R3配置
interface Ethernet0/1
ip address 172.16.1.1 255.255.255.0
interface Serial1/1
ip address 202.1.1.2 255.255.255.0
ip route 0.0.0.0 0.0.0.0 Serial1/1
2.NAT配置
在R1和R3上分别做PA T地址转换,定义需要做NA T的访问列表。

R1配置:
R1(config)#int e0/1
R1(config-if)#ip nat inside
R1(config-if)#int s1/0
R1(config-if)#ip nat outside
ip nat inside source list 102 interface Serial1/0 overload
定义了访问列表102所指定的流量进行NAT转换,overload选项进行端口复用(PAT)R1(config)#access-list 102 deny ip 10.1.1.0 0.0.0.255 172.16.1.0 0.0.0.255
将10.1.1.0访问172.16.1.0的流量不进行NAT转换。

R1(config)#access-list 102 permit ip 10.1.1.0 0.0.0.255 any
对去往Internet的流量进行NAT转换
R3配置:
R3(config)#int e0/1
R3(config-if)#ip nat inside
R3(config)#int s1/1
R3(config-if)#ip nat outside
ip nat inside source list 102 interface Serial1/1 overload
R3(config)#access-list 102 deny ip 172.16.1.0 0.0.0.255 10.1.1.0 0.0.0.255
R3(config)#access-list 102 permit ip 172.16.1.0 0.0.0.255 any
3.定义触发Ipsec保护的感兴趣的流量
R1
access-list 101 permit ip 10.1.1.0 0.0.0.255 172.16.1.0 0.0.0.255
R3
access-list 101 permit ip 172.16.1.0 0.0.0.255 10.1.1.0 0.0.0.255
2定义IKE参数
1定义IKE加密策略:IKE用来创建使用共享密钥的安全关联(SA)
R1
R1(config)#crypto isakmp policy 1
R1(config-isakmp)#?
ISAKMP commands:
authentication Set authentication method for protection suite 定义验证的方法
default Set a command to its defaults
encryption Set encryption algorithm for protection suite 定义加密的方法
exit Exit from ISAKMP protection suite configuration mode
group Set the Diffie-Hellman group Diffie-Hellman算法用于密钥的安全交换。

hash Set hash algorithm for protection suite 哈希算法用来验证数据的完整性
lifetime Set lifetime for ISAKMP security association
no Negate a command or set its defaults
R1(config-isakmp)#authentication pre-share 定义双方身份验证采用预共享密钥交换方式
R1(config)#crypto isakmp key 0 cisco (验证密钥)address 202.1.1.2 (中心对等体是静态地址)其它没有配置的参数有一个默认配置,加密算法默认为des,哈希算法为SHA-1, Diffie-Hellman采用组一的密钥交换方法,安全关联的生命周期为86400秒。

R3
R3(config)#crypto isakmp policy 1(1为策略编号,可以为不同站点配置不同策略号)
R3(config-isakmp)#authentication pre-share
R3(config)#crypto isakmp key 0 cisco address 0.0.0.0 (注意这里对等体地址不确定,用0.0.0.0,使用动态TED探测)
3.定义Ipsec参数(IKE第二阶段安全关联的建立)
1.定义要保护数据的加密和验证转换集方法(T ransform设置)
R1:
R1(config)#crypto ipsec transform-set mytrans esp-3des
R3
R3(config)#crypto ipsec transform-set mytrans(设置的转换集命名)?
ah-md5-hmac AH-HMAC-MD5 transform
ah-sha-hmac AH-HMAC-SHA transform
comp-lzs IP Compression using the LZS compression algorithm
esp-3des ESP transform using 3DES(EDE) cipher (168 bits)
esp-aes ESP transform using AES cipher
esp-des ESP transform using DES cipher (56 bits)
esp-md5-hmac ESP transform using HMAC-MD5 auth
esp-null ESP transform w/o cipher
esp-seal ESP transform using SEAL cipher (160 bits)
esp-sha-hmac ESP transform using HMAC-SHA auth
这些都是对数据进行加密和完整性验证的方法集。

可以任选使用,但站点两端设置必须相同。

AH只能用于对数据包包头进行完整性检验,而ESP用于对数据的加密和完整性检验。

R3(config)#crypto ipsec transform-set mytrans esp-3des
注意:这里所定义的mytrans转换集要在后面的crypto map中调用。

R3(cfg-crypto-trans)#mode ?
transport transport (payload encapsulation) mode
tunnel tunnel (datagram encapsulation) mode
在这里可以定义IPSEC工作在传输模式或隧道模式,传输模式通常用于主机与主机终端之间进行加密传输,而隧道模式则用于网络设备间建立VPN联接。

默认情况下,工作在tunnel模式。

2.定义加密映射:加密映射把远程对等体,T ransform定义的对流量的保护方法及感兴趣的流量关联在一起,
R1:
R1(config)#crypto map mymap 1 ipsec-isakmp
R1(config-crypto-map)#set peer 203.1.1.2 (设置对等体地址)
R1(config-crypto-map)#set transform-set mytrans(将前面的Transform设置关联起来)
R1(config-crypto-map)#match address 101 (与第一步所定义的感兴趣的流量关联)
R3
R3(config)#crypto dynamic-map mydyna 1 (这里用dynamic-map,动态映射)
R3(config-crypto-map)# set transform-set mytrans
R3(config-crypto-map)# match address 101
R3(config)#crypto map mymap 1 ipsec-isakmp dynamic mydyna discover
(dynamic mydyna与前面创建的动态映射关联,discover用于配置TED隧道终点探测)
4.将加密映射应用至接口
R1:
interface Serial1/0
crypto map mymap
!
R3
interface Serial1/1
crypto map mymap
!
5.检验配置
R1#ping 172.16.1.1 source 10.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.1.1, timeout is 2 seconds:
Packet sent with a source address of 10.1.1.1
!!!!!
R3#debug crypto isakmp
Crypto ISAKMP debugging is on
R3#
*Mar 1 01:47:32.203: ISAKMP (0:0): received packet from 201.1.1.1 dport 500 sport 500 Global (N) NEW SA
*Mar 1 01:47:32.207: ISAKMP: Created a peer struct for 201.1.1.1, peer port 500
*Mar 1 01:47:32.211: ISAKMP: New peer created peer = 0x65E33CB8 peer_handle = 0x80000004
*Mar 1 01:47:32.215: ISAKMP: Locking peer struct 0x65E33CB8, IKE refcount 1 for crypto_isakmp_process_block
*Mar 1 01:47:32.219: ISAKMP: local port 500, remote port 500
*Mar 1 01:47:32.219: insert sa successfully sa = 64E6BCE4
*Mar 1 01:47:32.223: ISAKMP:(0:0:N/A:0):Input = IKE_MESG_FROM_PEER, IKE_MM_EXCH
*Mar 1 01:47:32.227: ISAKMP:(0:0:N/A:0):Old State = IKE_READY New State = IKE_R_MM1
*Mar 1 01:47:32.235: ISAKMP:(0:0:N/A:0): processing SA payload. message ID = 0
*Mar 1 01:47:32.239: ISAKMP:(0:0:N/A:0): processing vendor id payload
*Mar 1 01:47:32.243: ISAKMP:(0:0:N/A:0): vendor ID seems Unity/DPD but major 245 mismatch
*Mar 1 01:47:32.243: ISAKMP (0:0): vendor ID is NA T-T v7
*Mar 1 01:47:32.247: ISAKMP:(0:0:N/A:0): processing vendor id payload
*Mar 1 01:47:32.247: ISAKMP:(0:0:N/A:0): vendor ID seems Unity/DPD but major 157 mismatch
*Mar 1 01:47:32.251: ISAKMP:(0:0:N/A:0): vendor ID is NA T-T v3
*Mar 1 01:47:32.255: ISAKMP:(0:0:N/A:0): processing vendor id payload
*Mar 1 01:47:32.255: ISAKMP:(0:0:N/A:0): vendor ID seems Unity/DPD but major 123 mismatch
*Mar 1 01:47:32.259: ISAKMP:(0:0:N/A:0): vendor ID is NA T-T v2
*Mar 1 01:47:32.263: ISAKMP:(0:0:N/A:0):found peer pre-shared key matching 201.1.1.1(发现对等体)
*Mar 1 01:47:32.267: ISAKMP:(0:0:N/A:0): local preshared key found
*Mar 1 01:47:32.267: ISAKMP : Scanning profiles for xauth ...
*Mar 1 01:47:32.271: ISAKMP:(0:0:N/A:0):Checking ISAKMP transform 1 against priority 1 policy
*Mar 1 01:47:33.855: ISAKMP:(0:1:SW:1):SA authentication status:
authenticated
2.检验对等体安全关联状态:
R1#show crypto isakmp sa
dst src state conn-id slot status
202.1.1.2 201.1.1.1 QM_IDLE 1 0 ACTIVE
R3#show crypto isakmp sa
dst src state conn-id slot status
202.1.1.2 201.1.1.1 QM_IDLE 1 0 ACTIVE
可见两边站点的VPN建立成功.
6模拟动态地址变化,将R1的Internet 出口地址改变,看能否动态建立VPN.
R1(config)#int s1/0
R1(config-if)#ip addr 201.1.1.8 255.255.255.0 R3不需要做配置变化.
再做测试:
R1#ping 172.16.1.1 source 10.1.1.1 Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.1.1, timeout is 2 seconds: Packet sent with a source address of 10.1.1.1
..!!!
Success rate is 60 percent (3/5), round-trip min/avg/max = 316/386/448 ms
R3#show crypto isakmp sa
dst src state conn-id slot status 202.1.1.2 201.1.1.1 QM_IDLE 1 0 ACTIVE 202.1.1.2 201.1.1.8 QM_IDLE 2 0 ACTIVE
这时可看到建立了两个安全关联,有一个是以前地址建立残存的,因为老化时间未到. 我们可以用下面指令清除 R3#clear crypto isakmp 1 show crypto isakmp sa
dst src state conn-id slot status
202.1.1.2 201.1.1.1 MM_NO_STATE 1 0 ACTIVE (deleted)正在删除 202.1.1.2 201.1.1.8 QM_IDLE 2 0 ACTIVE
1.3IPSec VPN 在NAT 环境下的应用
如图所示:
R 1
S 1/0
S 1/1
201.1.1.0/24
R 3
分支站点
中心站点
10.1.1.0/24
R 4In tern et
202.1.1.0/24
VP N 隧道联接
R 2
N A T 设备
10.2.1.0/24
V P N 路由器
中心端V P N 路由器
分支站点为了增强网络边界的安全性,在Internet 出口增加了防火墙设备.为了充分利用Internet 接入带宽,
中心站点与分支站点之间网络互联决定采用IPSec VPN的解决方案.
中心站点采用100Minternet专线联网,而分支站点采用ADSL拨号上网,并且由于分支站点的VPN设备必须处于防火墙的保护之下,因此VPN设备的接口地址可能为一私网地址.这时如果要实现与中心站点VPN 的IPSec隧道联接,必须使IPSec VPN的流量穿越NA T设备(防火墙)..
由于在NA T设备进行地址转换的时候会在原IP包头外加新的UDP封装,而VPN设备如果采用AH协议,将对接收到的数据包包头进行数据完整性检查,因此造成VPN建立故障.
可以通过VPN NA T透传及NA T穿越技术来解决
1.NAT Traversal (NA T-T)
在这种模式下,VPN设备双方检查并协商如何使用UDP封装来处理NA T
进行数据验证时,先从分组中删除UDP报头,然后进行验证和加密.从而解决NA T新插入包头的问题.
由于NA T的转换表在老化时间到后将被清除,因此为避免这种情况发生,对等体间必须发送NA T存活消息.(crypto isakmp nat keepalive 60时间值).
配置
R1:
企业分支站点VPN路由器
crypto isakmp policy 1
authentication pre-share
crypto isakmp key cisco address 202.1.1.2
crypto isakmp nat keepalive 60 (配置NAT存活信息)
!
crypto ipsec transform-set mytrans esp-3des
!
crypto map mymap 1 ipsec-isakmp
set peer 202.1.1.2
set transform-set mytrans
match address 102
!
interface Loopback0
ip address 10.1.1.1 255.255.255.0
!
interface Serial1/0
ip address 10.2.2.1 255.255.255.0
serial restart-delay 0
no dce-terminal-timing-enable
crypto map mymap
!
ip route 0.0.0.0 0.0.0.0 Serial1/0
!
access-list 102 permit ip 10.1.1.0 0.0.0.255 172.16.1.0 0.0.0.255
!
!
R2
作为Internet ADSL拨号接入设备,NAT设备,只需作基本路由和NAT配置.但它所获得的公网地址为动态IP
!
interface Serial1/0
ip address 10.2.2.2 255.255.255.0
ip nat inside
ip virtual-reassembly
serial restart-delay 0
no dce-terminal-timing-enable
!
interface Serial1/1
ip address 201.1.1.1 255.255.255.0
ip nat outside
ip virtual-reassembly
serial restart-delay 0
no dce-terminal-timing-enable
!
ip route 0.0.0.0 0.0.0.0 Serial1/1
ip route 10.1.1.0 255.255.255.0 Serial1/0
!
!
ip nat inside source list 101 interface Serial1/1 overload
!
access-list 101 permit ip any any
R3
作为模拟Internet路由器,实验环境中可以省略.只作基本配置
!
interface Serial1/1
ip address 201.1.1.2 255.255.255.0
serial restart-delay 0
!
interface Serial1/2
ip address 202.1.1.1 255.255.255.0
serial restart-delay 0
R4
作为中心端接入路由器,由于采用专线接入Internet,所分配的是静态公网地址.同时由于分支机构的地址是动态变化的,因此采用TED(隧道端点发现技术)来实现与分支机构的VPN互联.
!
!
!
crypto isakmp policy 1
authentication pre-share
crypto isakmp key cisco address 0.0.0.0 0.0.0.0
crypto isakmp nat keepalive 60(发送NAT存活信息,使得NAT表不被老化)
!
!
crypto ipsec transform-set mytrans esp-3des
!
crypto dynamic-map mydyna 1
set transform-set mytrans
match address 102
!
!
crypto map mymap 1 ipsec-isakmp dynamic mydyna discover
!
!
interface Loopback0
ip address 172.16.1.1 255.255.255.0
ip nat inside
ip virtual-reassembly
!
!
interface Serial1/2
ip address 202.1.1.2 255.255.255.0
ip nat outside
ip virtual-reassembly
serial restart-delay 0
no dce-terminal-timing-enable
crypto map mymap
!
ip route 0.0.0.0 0.0.0.0 Serial1/2
!
!
ip nat inside source list 101 interface Serial1/2 overload
!
access-list 101 deny ip 172.16.1.0 0.0.0.255 10.1.1.0 0.0.0.255
access-list 101 permit ip 172.16.1.0 0.0.0.255 any
access-list 102 permit ip 172.16.1.0 0.0.0.255 10.1.1.0 0.0.0.255
!
!
!
测试
1.Ping 测试
R1#ping 172.16.1.1 source 10.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.1.1, timeout is 2 seconds:
Packet sent with a source address of 10.1.1.1
!!!!!
2.show crypto ipsec sa
R1#show crypto ipsec sa
interface: Serial1/0
Crypto map tag: mymap, local addr 10.2.2.1
protected vrf: (none)
local ident (addr/mask/prot/port): (10.1.1.0/255.255.255.0/0/0)
remote ident (addr/mask/prot/port): (172.16.1.0/255.255.255.0/0/0)
current_peer 202.1.1.2 port 4500
PERMIT, flags={origin_is_acl,}
#pkts encaps: 8, #pkts encrypt: 8, #pkts digest: 8
#pkts decaps: 8, #pkts decrypt: 8, #pkts verify: 8
#pkts compressed: 0, #pkts decompressed: 0
#pkts not compressed: 0, #pkts compr. failed: 0
#pkts not decompressed: 0, #pkts decompress failed: 0
#send errors 2, #recv errors 0
local crypto endpt.: 10.2.2.1, remote crypto endpt.: 202.1.1.2
path mtu 1500, ip mtu 1500
current outbound spi: 0x6D62EC41(1835199553)
inbound esp sas:
spi: 0x86731BE5(2255690725)
transform: esp-3des ,
in use settings ={Tunnel UDP-Encaps, }
conn id: 2004, flow_id: SW:4, crypto map: mymap
sa timing: remaining key lifetime (k/sec): (4406090/2584)
IV size: 8 bytes
replay detection support: N
Status: ACTIVE
inbound ah sas:
inbound pcp sas:
outbound esp sas:
spi: 0x6D62EC41(1835199553)
transform: esp-3des ,
in use settings ={Tunnel UDP-Encaps, }
conn id: 2003, flow_id: SW:3, crypto map: mymap
sa timing: remaining key lifetime (k/sec): (4406090/2581)
IV size: 8 bytes
replay detection support: N
Status: ACTIVE
*Mar 1 02:35:31.987: ISAKMP: sending nat keepalive packet to 202.1.1.2(4500)
R4#show crypto ipsec sa
interface: Serial1/2
Crypto map tag: mymap, local addr 202.1.1.2
protected vrf: (none)
local ident (addr/mask/prot/port): (172.16.1.0/255.255.255.0/0/0)
remote ident (addr/mask/prot/port): (10.1.1.0/255.255.255.0/0/0)
current_peer 201.1.1.1 port 4500
PERMIT, flags={}
#pkts encaps: 8, #pkts encrypt: 8, #pkts digest: 8
#pkts decaps: 8, #pkts decrypt: 8, #pkts verify: 8
#pkts compressed: 0, #pkts decompressed: 0
#pkts not compressed: 0, #pkts compr. failed: 0
#pkts not decompressed: 0, #pkts decompress failed: 0
#send errors 0, #recv errors 0
local crypto endpt.: 202.1.1.2, remote crypto endpt.: 201.1.1.1
注意在R4上建立对等体关联的地址是R1经过NAT转换后的公网地址201.1.1 path mtu 1500, ip mtu 1500
current outbound spi: 0x86731BE5(2255690725)
inbound esp sas:
spi: 0x6D62EC41(1835199553)
transform: esp-3des ,
in use settings ={Tunnel UDP-Encaps, }
conn id: 2001, flow_id: SW:1, crypto map: mymap
sa timing: remaining key lifetime (k/sec): (4519708/2441)
IV size: 8 bytes
replay detection support: N
Status: ACTIVE
inbound ah sas:
inbound pcp sas:
outbound esp sas:
spi: 0x86731BE5(2255690725)
transform: esp-3des ,
in use settings ={Tunnel UDP-Encaps, }
conn id: 2002, flow_id: SW:2, crypto map: mymap
sa timing: remaining key lifetime (k/sec): (4519708/2439)
IV size: 8 bytes
replay detection support: N
Status: ACTIVE
outbound ah sas:
outbound pcp sas:
3.地址变化测试
R2(config)#int s1/1
R2(config-if)#ip addr 201.1.1.8 255.255.255.0
R1#clear crypto session
R4#clear crypto session
R1#ping 172.16.1.1 source 10.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.1.1, timeout is 2 seconds: Packet sent with a source address of 10.1.1.1
!!!!!
VPN联接成功
2.NA T 穿越
这种方法只适用于基于ESP 加密验证的IPSec 数据流. 不能用于AH 包头验证. 具体只需要在NA T 路由器上作相应配置. 配置: R2:
R2(config)#ip nat service list 101 IKE preserve-port R2(config)#ip nat service list 101 ESP spi-match
1.4GRE over Ipsec VPN
由于IPSec VPN 不能支组播和广播,因此不能运行动态路由协议,如果我们需要把一条VPN 链路作为一条专线使用,还必须建立 GRE tunnel 隧道,以支持动态路由协议.
如图所示:
R 1
S 1/0
S 1/1
201.1.1.0/24
R 2点
中心R 3
In tern et
202.1.1.0/24
G RE tunnel1
G RE tunnel1
VP N 隧道联接O S P F Area 0
192.168.1.0/24
192.168.1.0/24
基本配置步骤如下:
1. 配置基本路由和需保护流量的感兴趣访问列表(注意这里感兴趣的流量设为GRE 隧道流量), 2. 配置GRE Tunnel 隧道. 3. 配置IPSec VPN 4. 配置动态路由协议.
配置如下:
R1
! !
crypto isakmp policy 10 authentication pre-share
crypto isakmp key cisco address 202.1.1.2 ! !
crypto ipsec transform-set mytrans esp-3des !
crypto map mymap 1 ipsec-isakmp
set peer 202.1.1.2
set transform-set mytrans
match address 101
!
!
interface Tunnel0
ip address 192.168.1.1 255.255.255.0
tunnel source Serial1/0
tunnel destination 202.1.1.2
!这里为GRE配置
interface Loopback0
ip address 10.1.1.1 255.255.255.0
!
!
interface Serial1/0
ip address 201.1.1.1 255.255.255.0
serial restart-delay 0
no dce-terminal-timing-enable
crypto map mymap
!
!
router ospf 1
log-adjacency-changes
network 10.1.1.0 0.0.0.255 area 0
network 192.168.1.0 0.0.0.255 area 0
ip route 0.0.0.0 0.0.0.0 Serial1/0
!
access-list 101 permit gre host 201.1.1.1 host 202.1.1.2
注意这里的访问列表定义的感兴趣流量为GRE隧道的流量. R2
为模拟Internet路由器.只需基本配置
!
interface Serial1/0
ip address 201.1.1.2 255.255.255.0
serial restart-delay 0
no dce-terminal-timing-enable
interface Serial1/1
ip address 202.1.1.1 255.255.255.0
serial restart-delay 0
no dce-terminal-timing-enable
!
R3
为中心端VPN接入设备.
!
!
crypto isakmp policy 10
authentication pre-share
crypto isakmp key cisco address 201.1.1.1
!
crypto ipsec transform-set mytrans esp-3des
!
crypto map mymap 10 ipsec-isakmp
set peer 201.1.1.1
set transform-set mytrans
match address 101
!
interface Tunnel1
ip address 192.168.1.2 255.255.255.0
tunnel source Serial1/1
tunnel destination 201.1.1.1
配置GRE隧道.
!
interface Loopback0
ip address 172.16.1.1 255.255.255.0
!
interface Serial1/1
ip address 202.1.1.2 255.255.255.0
serial restart-delay 0
no dce-terminal-timing-enable
crypto map mymap
! !
router ospf 1
log-adjacency-changes
network 172.16.1.0 0.0.0.255 area 0
network 192.168.1.0 0.0.0.255 area 0
!
ip route 0.0.0.0 0.0.0.0 Serial1/1
!
access-list 101 permit gre host 202.1.1.2 host 201.1.1.1 注意访问列表所定义的IPSec所保护的感兴趣流量为GRE流量
!
测试
R1#sh ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
172.16.1.1 0 FULL/ - 00:00:31 192.168.1.2 Tunnel0
R1#show ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route
Gateway of last resort is 0.0.0.0 to network 0.0.0.0
C 201.1.1.0/24 is directly connected, Serial1/0
172.16.0.0/32 is subnetted, 1 subnets
O 172.16.1.1 [110/11112] via 192.168.1.2, 02:42:29, Tunnel0
10.0.0.0/24 is subnetted, 1 subnets
C 10.1.1.0 is directly connected, Loopback0
C 192.168.1.0/24 is directly connected, Tunnel0
S* 0.0.0.0/0 is directly connected, Serial1/0
R1#show cry isa sa
dst src state conn-id slot status
201.1.1.1 202.1.1.2 QM_IDLE 1 0 ACTIVE
2.Easy VPN
在移动用户在外办公时,往往只有笔记本电脑,但他仍然需要与公司内部网络建立通信连接,以实现正常的OA办公应用.因为没有专门的VPN设备,只能通过笔记本与公司建立VPN联接,这种类型的VPN应用叫做Remote-VPN(远程访问VPN),又叫Easy VPN.
Easy VPN既可用计算机与中心建立VPN联接,也支持路由器设备作为VPN设备建立VPN联接.
如图所示:
R 1
S 1/2
1.1.1.0/24
R 2

中心站点
Internet
202.1.1.0/24
V P N 隧道联接E asy V P N S erver
E asy V P N C lient
E asy V P N C lient
2.1 客户端VPN
路由器基本路由配置
R1配置(R1作为客户端VPN 拨号路由器,采用私有地址) interface Ethernet0/0
ip address 10.1.1.2 255.255.255.0 interface Serial1/1
ip address 1.1.1.1 255.255.255.0 ip route 0.0.0.0 0.0.0.0 Serial1/1
R2配置(R2作为Internet 接入路由器,必须配置NAT) interface Serial1/1
ip address 1.1.1.2 255.255.255.0 ip nat inside
interface Serial1/2
ip address 202.1.1.1 255.255.255.0 ip nat outside
ip nat inside source list 101 interface Serial1/1 overload access-list 101 permit ip any any
R3配置(R3作为Ezvpn 服务器端) interface Ethernet0/0
ip address 172.16.1.2 255.255.255.0 interface Serial1/2
ip address 202.1.1.2 255.255.255.0 ip route 0.0.0.0 0.0.0.0 Serial1/2
VPN Server配置
1. 配置IKE参数
2. 配置XAUTH(扩展验证方法,组用户与组密码配置)
3. 定义IPSecc参数(数据通信加密和完整性检查方法)
4. 创建动态加密映射(因为客户端地址是动态变化的,因此必须建立动态加密映射)
5.配置AAA验证.
6.配置加密映射的验证方法,与AAA验证数据库相关联.
7.将加密映射应用至接口
1.配置IKE参数
R3(config)#crypto isakmp policy 1
R3(config-isakmp)#authentication pre-share 验证方式采用预共享密钥交换
R3(config-isakmp)#encryption 3des 采用3des加密方式进行通信数据加密
R3(config-isakmp)#group 2 Ezvpn客户端密钥验证方法默认只支持diff-hellman组2方法
R3(config-isakmp)#group ?
1 Diffie-Hellman group 1
2 Diffie-Hellman group 2
5 Diffie-Hellman group 5
2.配置XAUTH(扩展验证参数)
扩展验证用来主动发起对用户的验证.
R3(config)#crypto isakmp client configuration group ezvpngroup(这是扩展验证时的组名)
R3(config-isakmp-group)#key ezvpngroup(组验证密码)
R3(config-isakmp-group)# dns 172.16.1.1 (为拨入客户分配的DNS地址)
R3(config-isakmp-group)# wins 172.16.1.1(为拨入客户分配的WINS服务器地址)
R3(config-isakmp-group)# pool myvpnpool(为拨入客户分配的命名地址池)
R3(config-isakmp-group)# save-password (为拨入客户保存密码,否则,客户端不能与Server自动建立VPN联接) R3(config)#ip local pool myvpnpool 172.16.0.1 172.16.0.10 (配置为客户分配的地址池)
3定义IPSec参数
R3(config)#crypto ipsec transform-set mytrans(转换集名称) esp-3des esp-sha-hmac
设置对数据传输加密和完整性检查的方法。

相关文档
最新文档