由于Internet宽带接入的普及,它的带宽与价格非常的便宜(相对于专线而言).8M的ADSL价位不到两千元/年.越来越多的企业开始发掘基于宽带接入的增值应用.由于×××技术的成熟,如对数据的加密技术与××× Qos技术的发展,使得基于Internet接入的×××应用日趋增多.
  ×××技术可用于远程用户的接入(用于取代传统拨号接入技术)访问,用于对主线路的备份作为备份链路,甚至可以取代传统的专线地位用于企业各分支机构的专有网络互联.
  用于取代专线或备份线路接入的Site-to-Site ×××接入技术,用于远程终端用户接入访问的Remote-×××(也叫Easy ×××,取代传统拨号接入).
  基于WEB页面访问的WEB ×××技术.又叫SSL ×××.
  1.Site-to-site vpn(三种类型)
  站点间的×××技术.IKE使用UDP端口500,Ipsec ESP和AH使用协议号50和51.因此如果要实现×××穿越,必须在相应接口上配置访问列表以允许×××流量通过。
  Site-to-Site ×××的配置通常可分为四个步骤:
  1.传统路由及需互访的流量定义
  定义路由设置
  感兴趣的流量(即定义互访的内网主机流量以触发×××参数协商)
  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.站点间用于建立×××的两台设备都有静态公网地址.
  内部主机通过NAT地址转换后访问Internet.但内部主机之间的访问流量不通过NAT转换,而通过Ipsec加密进行访问。如图所示,在远程站点间,由于专线费用过高,因此考虑与中心站点间采用IPsec ×××技术来实现远程分支站点与中心站点间的私网互联。
  因为内网是私有地址,所以在上Internet时必须做NAT地址转换。而通过×××隧道在内网之间访问的时候,相当于两边私网通过专线互联,因此不需要做NAT。
  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上分别做PAT地址转换,定义需要做NAT的访问列表。
  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工作在传输模式或隧道模式,传输模式通常用于主机与主机终端之间进行加密传输,而隧道模式则用于网络设备间建立×××联接。默认情况下,工作在tunnel模式。
  2.定义加密映射:加密映射把远程对等体,Transform定义的对流量的保护方法及感兴趣的流量关联在一起,
  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-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(表示输出流量的安全关联建立成功)
  on 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(表示输出流量的安全关联建立成功)