网络拓扑如下
1、公司A端路由器配置
#
//定义需要保护的安全数据流
acl number 3000
rule 10 permit ip source 192.168.1.0 0.0.0.255 destination 192.168.2.0 0.0.0.255
#
//定义IKE对等体
ike peer to_rtb
//使用预设口令身份验证
pre-shared-key 123
//对等体的IP地址,注意是GRE Tunnel的地址
remote-address 10.0.0.2
#
//定义IPSec提议
ipsec proposal to_rtb (注:使用默认值:隧道模式、MD5认证、DES加密)
#
//定义IPSec策略,协商方式为isakmp,即使用IKE协商
ipsec policy to_rtb 1 isakmp
//定义需要加密传送的ACL
security acl 3000
//选择使用的IKE对等体
ike-peer to_rtb
//选择安全策略
proposal to_rtb
#
interface Ethernet0/0
port link-mode route
description WAN
ip address 12.12.12.1 255.255.255.0
#
interface Ethernet0/1
port link-mode route
description LAN
ip address 192.168.1.1 255.255.255.0
#
//定义GRE隧道
interface Tunnel0
//隧道口地址,用于IKE协商和GRE封装
ip address 10.0.0.1 255.255.255.252
//指定隧道的源
source 12.12.12.1
//指定隧道的目的
destination 23.23.23.3
//将IPSec策略绑定到GRE隧道上
ipsec policy to_rtb
#
//定义默认路由
ip route-static 0.0.0.0 0.0.0.0 12.12.12.2
//定义静态路由,可以使用动态路由代替
ip route-static 192.168.2.0 255.255.255.0 Tunnel0
2、公司B端路由器配置
#
//定义需要保护的安全数据流
acl number 3000
rule 10 permit ip source 192.168.2.0 0.0.0.255 destination 192.168.1.0 0.0.0.255
#
//定义IKE对等体
ike peer to_rta
//使用预设口令身份验证
pre-shared-key 123
//对等体的IP地址,注意是GRE Tunnel的地址
remote-address 10.0.0.2
#
//定义IPSec提议
ipsec proposal to_rta (注:使用默认值:隧道模式、MD5认证、DES加密)
#
//定义IPSec策略,协商方式为isakmp,即使用IKE协商
ipsec policy to_rta 1 isakmp
//定义需要加密传送的ACL
security acl 3000
//选择使用的IKE对等体
ike-peer to_rta
//选择安全策略
proposal to_rta
#
interface Ethernet0/0
port link-mode route
description WAN
ip address 23.23.23.3 255.255.255.0
#
interface Ethernet0/1
port link-mode route
description LAN
ip address 192.168.2.1 255.255.255.0
#
//定义GRE隧道
interface Tunnel0
//隧道口地址,用于IKE协商和GRE封装
ip address 10.0.0.2 255.255.255.252
//指定隧道的源
source 23.23.23.3
//指定隧道的目的
destination 12.12.12.1
//将IPSec策略绑定到GRE隧道上
ipsec policy to_rta
#
//定义默认路由
ip route-static 0.0.0.0 0.0.0.0 23.23.23.2
//定义静态路由,可以使用动态路由代替
ip route-static 192.168.1.0 255.255.255.0 Tunnel0
配置完成后先在两边的任意一台路由器上ping一下对端,假设在公司A上PING对端,使用命令
ping -a 192.168.1.1 192.168.2.1 ,然后通过display ike sa和display ipsec sa查看ike和ipsec的sa建立情况;另,可以通过debug ipsec和gre的数据报文查看一下数据封装的顺序,IPSEC OVER GRE方式是先IPSEC封装,然后再进行GRE封装的。
配置关键点:
1) IKE Peer的Remote address是对方的GRE隧道口IP地址,不是物理接口地址;
2) IPSec策略绑定到GRE隧道上;
3)定义静态路由或策略路由将需要加密的流量引入到GRE隧道上。