为了提高网络可靠性,企业分支一般通过两条或者多条链路与企业总部建立IPSec连接。本节主要考虑如何感知IPSec链路状态并实现流量在多条IPSec之间按需切换,以保证业务的正常运行。
ipsec高可靠性涉及可以分为两类,一种是链路冗余,另一种是主备网关备份。其中链路冗余又有多种不同的实现方法。
主备链路备份
2:2模式
场景
FW1、FW2均有两个出口接入ISP,要求其中一个出口链路故障不会影响业务。
实现原理
FW1的两个物理接口分别应用不同的ipsec策略,FW2的两个物理接口也分别应用不同的ipsec策略。现网中比较少见,因为分支机构很少有两条链路接入公网,如果采用这种方法,配置上没有特别需要注意的。
2:1模式
场景
FWB有两个出口接入ISP,FWA只有一个出口接入ISP,要求FWB的一个出口链路故障不会影响业务。
实现原理
FWB的两个物理接口分别应用不同的ipsec策略,FWA的物理接口上创建两个tunnel,分别在两个tunnel上创建不同的ipsec策略。最常见的组网方式。注意不能使用子接口,子接口无法配置ipsec
实验一:两个网关之间配置IPSec VPN主备链路备份(双链路)
fw1的两个物理口分别应用不同的ipsec策略,fw2的物理口上创建两个tunnel,分别在两个tunnel上创建ipsec策略。
fw1的g0/0/2接口故障,业务切换到g0/0/3,相应 的fw2也要将业务从tunnel1切换到tunnel2,可以通过ip-link来检测链路,实现同步切换。
1、防火墙基本配置
#fw1
interface GigabitEthernet0/0/1
ip address 10.1.1.10 255.255.255.0
interface GigabitEthernet0/0/2
ip address 202.100.1.10 255.255.255.0
interface GigabitEthernet0/0/3
ip address 192.168.1.10 255.255.255.0
interface GigabitEthernet0/0/4
ip address 202.100.2.10 255.255.255.0
#fw2
interface GigabitEthernet0/0/1
ip address 10.1.2.11 255.255.255.0
interface GigabitEthernet0/0/2
ip address 10.1.21.10 255.255.255.0
interface GigabitEthernet0/0/3
ip address 192.168.1.11 255.255.255.0
2、安全策略配置
security-policy
rule name ike
source-zone local
source-zone untrust
destination-zone local
destination-zone untrust
source-address 10.1.21.10 mask 255.255.255.255
source-address 202.100.1.10 mask 255.255.255.255
source-address 202.100.2.10 mask 255.255.255.255
destination-address 10.1.21.10 mask 255.255.255.255
destination-address 202.100.1.10 mask 255.255.255.255
destination-address 202.100.2.10 mask 255.255.255.255
service esp
service isakmp
action permit
rule name pki
source-zone dmz
source-zone trust
destination-zone dmz
destination-zone trust
source-address 10.1.1.0 mask 255.255.255.0
source-address 192.168.1.1 mask 255.255.255.255
destination-address 10.1.1.0 mask 255.255.255.0
destination-address 192.168.1.1 mask 255.255.255.255
action permit
rule name ipsec
source-zone trust
source-zone untrust
destination-zone trust
destination-zone untrust
source-address 10.1.1.0 mask 255.255.255.0
source-address 10.1.2.0 mask 255.255.255.0
destination-address 10.1.1.0 mask 255.255.255.0
destination-address 10.1.2.0 mask 255.255.255.0
action permit
3、ip-link配置
ip-link check enable
ip-link name iplink1
destination 202.100.1.11 interface GigabitEthernet0/0/2 mode icmp
4、负载静态路由配置
ip route-static 0.0.0.0 0.0.0.0 202.100.1.11 track ip-link iplink1
ip route-static 0.0.0.0 0.0.0.0 202.100.2.11 preference 200
5、fw1 ipsec策略配置
6、FW2创建tunnel接口
interface Tunnel1
ip address unnumbered interface GigabitEthernet0/0/2# 借用公网接口地址
tunnel-protocol ipsec
interface Tunnel2
ip address unnumbered interface GigabitEthernet0/0/2# 借用公网接口地址
tunnel-protocol ipsec
#务必将接口加入安全区域
firewall zone untrust
add interface Tunnel1
add interface Tunnel2
7、fw2配置ip-link
[FW2]ip-link name iplink2
destination 202.100.1.11 interface GigabitEthernet0/0/2 mode icmp next-hop 10.1.21.254
ip-link check enable
8、fw2配置静态路由
ip route-static 0.0.0.0 0.0.0.0 202.100.1.10
ip route-static 0.0.0.0 0.0.0.0 10.1.21.254
ip route-static 10.1.1.0 255.255.255.0 Tunnel1 track ip-link iplink2
ip route-static 10.1.1.0 255.255.255.0 Tunnel2 preference 200
9、fw2 ipsec policy配置
10、连通性测试
11、检查fw2的路由表
实验二:两个网关之间配置IPSec VPN主备链路备份
需求和拓扑
FW_A通过主备两条链路接入Internet,主备接口使用固定的公网IP地址;FW_B通过一条链路接入Internet,出接口同样使用固定的公网IP地址。
要求实现如下需求:
- FW_A和FW_B之间通过IPSec方式建立安全通信隧道,实现总部与分支之间的互访。
- FW_A上的主链路发生故障时,业务可以自动切换到备链路;主链路恢复时,业务会自动回切到主链路。
操作和配置
1、配置防火墙接口IP地址和安全区域
1.1、fw1
interface GigabitEthernet1/0/0
ip address 10.1.1.1 255.255.255.0
interface GigabitEthernet1/0/1
ip address 1.1.3.1 255.255.255.0
service-manage ping permit
interface GigabitEthernet1/0/2
ip address 1.1.4.1 255.255.255.0
service-manage ping permit
firewall zone trust
add interface GigabitEthernet0/0/0
add interface GigabitEthernet1/0/0
firewall zone untrust
add interface GigabitEthernet1/0/1
add interface GigabitEthernet1/0/2
1.2、fw2
interface GigabitEthernet1/0/0
ip address 10.2.1.1 255.255.255.0
interface GigabitEthernet1/0/1
ip address 2.2.2.2 255.255.255.0
service-manage ping permit
firewall zone trust
add interface GigabitEthernet0/0/0
add interface GigabitEthernet1/0/0
firewall zone untrust
add interface GigabitEthernet1/0/1
add interface Tunnel1
add interface Tunnel2
1.3、配置FW2的tunnel接口
FW1需要和FW2建立两条隧道,而FW2只有一个物理接口,所以需要在FW2上配置两个tunnel接口,来分别与FW1的主备接口建立隧道。当FW1发生主备链路切换时,FW2也会切换Tunnel接口,双方重新进行IPSec隧道协商。
在FW2上配置Tunnel1(主接口)和Tunnel2(备接口)两个Tunnel接口,分别与FW1上的主备接口对应。当FW1发生主备链路切换时,FW2也会切换到对应的Tunnel接口。
interface Tunnel1
ip address unnumbered interface GigabitEthernet1/0/1
tunnel-protocol ipsec
interface Tunnel2
ip address unnumbered interface GigabitEthernet1/0/1
tunnel-protocol ipsec
firewall zone untrust
add interface Tunnel1
add interface Tunnel2
2、配置防火墙ip-link和路由
2.1、配置fw1的ip-link和路由
配置两条FW1到FW2的路由,两条路由的优先级不同,实现路由备份。同时,为主路由绑定ip-link,用于检测主路由上的链路状态。当主路由上的链路发生故障时,系统会自动切换到备用路由。
#FW1
ip-link check enable
ip-link name HA1
destination 2.2.2.2 interface GigabitEthernet1/0/1 mode icmp next-hop 1.1.3.2
ip route-static 2.2.2.2 255.255.255.255 1.1.3.2 track ip-link HA1
ip route-static 2.2.2.2 255.255.255.255 1.1.4.2 preference 200
ip route-static 10.2.1.0 255.255.255.0 1.1.3.2 track ip-link HA1
ip route-static 10.2.1.0 255.255.255.0 1.1.4.2 preference 200
2.1、配置fw2的ip-link和路由
在FW2上将需要保护的数据流通过路由引流到Tunnel接口。因为FW2上有两个Tunnel接口,所以需要配置两条到总部的路由,出接口为Tunnel1和Tunnel2,两条路由的优先级不同,实现路由备份。同时,为主路由绑定IP-Link,用于检测主路由上的链路状态。当主路由上的链路发生故障时,系统会自动切换到备用路由。
#FW2
ip-link check enable
ip-link name HA1
destination 1.1.3.1 interface GigabitEthernet1/0/1 mode icmp next-hop 2.2.2.1
ip route-static 1.1.3.1 255.255.255.255 2.2.2.1
ip route-static 1.1.4.1 255.255.255.255 2.2.2.1
ip route-static 10.1.1.0 255.255.255.0 Tunnel1 track ip-link HA1
ip route-static 10.1.1.0 255.255.255.0 Tunnel2 preference 200
3、配置ipsec
3.1、fw1配置ipsec
3.1.1、配置感兴趣流
acl number 3000
rule 5 permit ip source 10.1.1.0 0.0.0.255 destination 10.2.1.0 0.0.0.255
3.1.2、配置ike安全提议
ike proposal 1
encryption-algorithm aes-256
dh group14
authentication-algorithm sha2-256
authentication-method pre-share
integrity-algorithm hmac-sha2-256
prf hmac-sha2-256
3.1.3、配置ike对等体
ike peer FW2
undo version 2
pre-shared-key Huawei@123
ike-proposal 1
remote-address 2.2.2.2
3.1.4、配置ipsec安全提议
ipsec proposal FW1
esp authentication-algorithm sha2-256
esp encryption-algorithm aes-256
3.1.5、配置ipsec安全策略
ipsec policy FW1 10 isakmp
security acl 3000
ike-peer FW2
proposal FW1
ipsec policy FW1B 20 isakmp
security acl 3000
ike-peer FW2
proposal FW1
3.1.6、将ipsec安全策略绑定到接口上
FW1的GigabitEthernet 1/0/1、GigabitEthernet 1/0/2分别为主接口和备接口。需要在主备接口上应用相同的IPSec安全策略,当主接口发生故障时,系统自动将IPSec隧道切换至备接口。
interface GigabitEthernet1/0/1
ipsec policy FW1
interface GigabitEthernet1/0/2
ipsec policy FW1B
3.2、fw2配置ipsec
3.2.1、配置感兴趣流
acl number 3000
rule 5 permit ip source 10.2.1.0 0.0.0.255 destination 10.1.1.0 0.0.0.255
3.2.2、配置ike安全提议
ike proposal 1
encryption-algorithm aes-256
dh group14
authentication-algorithm sha2-256
authentication-method pre-share
integrity-algorithm hmac-sha2-256
prf hmac-sha2-256
3.2.3、配置ike对等体
ike peer FW1
undo version 2
pre-shared-key Huawei@123
ike-proposal 1
remote-address 1.1.3.1
ike peer FW1B
undo version 2
pre-shared-key Huawei@123
ike-proposal 1
remote-address 1.1.4.1
3.2.4、配置ipsec安全提议
ipsec proposal FW2
esp authentication-algorithm sha2-256
esp encryption-algorithm aes-256
3.2.5、配置ipsec安全策略
ipsec policy FW2 10 isakmp
security acl 3000
ike-peer FW1
proposal FW2
ipsec policy FW2B 20 isakmp
security acl 3000
ike-peer FW1B
proposal FW2
3.2.6、将ipsec安全策略绑定到接口上
在Tunnel1和Tunnel2上分别应用IPSec安全策略,当主接口发生故障时,系统自动将IPSec隧道切换至备接口。
interface Tunnel1
ip address unnumbered interface GigabitEthernet1/0/1
tunnel-protocol ipsec
ipsec policy FW2
interface Tunnel2
ip address unnumbered interface GigabitEthernet1/0/1
tunnel-protocol ipsec
ipsec policy FW2B
4、配置安全策略
#fw1&fw2
security-policy
rule name ike
source-zone local
source-zone untrust
destination-zone local
destination-zone untrust
source-address 1.1.3.1 mask 255.255.255.255
source-address 1.1.4.1 mask 255.255.255.255
source-address 2.2.2.2 mask 255.255.255.255
destination-address 1.1.3.1 mask 255.255.255.255
destination-address 1.1.4.1 mask 255.255.255.255
destination-address 2.2.2.2 mask 255.255.255.255
service esp
service protocol udp destination-port 500
action permit
rule name trust_untrust
source-zone trust
source-zone untrust
destination-zone trust
destination-zone untrust
source-address 10.1.1.0 mask 255.255.255.0
source-address 10.2.1.0 mask 255.255.255.0
destination-address 10.1.1.0 mask 255.255.255.0
destination-address 10.2.1.0 mask 255.255.255.0
action permit
<