一.问题描述
1.安装IPSec策略后防火墙失联
CheckPoint防火墙与3rd party IPSec peer建立IPSec,管理平台通过公网管理CheckPoint防火墙,管理平台下发IPSec策略到CheckPoint防火墙之后,防火墙失联,管理平台上测试SIC不通。
2. 安装IPSec策略后防火墙公网接口不通
CheckPoint防火墙与3rd party IPSec peer建立IPSec,管理平台是内网管理防火墙,IPSec策略安装之后,到防火墙公网接口的流量不通。
二.原因描述
建立IPSec时,CheckPoint防火墙默认会把外部接口的IP地址包含在感兴趣流中,这就导致了IPSec建立成功之后,CheckPoint防火墙外部接口地址的“失联”状态。
三.解决方案
在管理平台的crypt.def($FWDIR/lib/crypt.def)文件中指定“NON_IPSec_TRAFFIC_RULES”参数,排除源是对端VPN网关的公网地址。
相关SK:sk108600 Scenario 3部分、sk25675、sk98241
1.步骤:
1.1.备份crypt.def文件
[Expert@HostName]#cp $FWDIR/lib/crypt.def $FWDIR/lib/crypt.def_BKP
1.2.修改crypt.def文件
vi打开crypt.def文件,GG切换到最后,找到如下行:
#ifndef NON_V P N_TRAFFIC_RULES
#define NON_V P N_TRAFFIC_RULES 0
#endif
将”#define NON_V P N_TRAFFIC_RULES 0”修改成如下几行:
#define NON_V P N_TRAFFIC_RULES (src=Destination_IPv4_address)
#else
#define NON_V P N_TRAFFIC_RULES 0
#endif
最终的结果应该显示如下:
#ifndef NON_V P N_TRAFFIC_RULES
#define NON_V P N_TRAFFIC_RULES (src=Destination_IPv4_address)
#else
#define NON_V P N_TRAFFIC_RULES 0
#endif
#endif
“Destination_IPv4_address”是对网关设备的公网地址,应该从 防火墙的加密域中排除。如果是多个Ipv4地址,语法如下:
#define NON_V P N_TRAFFIC_RULES (src=Destination_IPv4_address_1 or src= Destination_IPv4_address_2).
2.案例:
Site1为Fortinet防火墙,公网地址为1.1.1.1;Site2为CheckPoint防火墙,公网地址为2.2.2.2;CheckPoint的管理平台是通过公网管理Site2的CheckPoint防火墙。当管理平台将IPSec V P N配置下发给Site2的CheckPoint防火墙之后之后,管理平台显示Site2的墙为失联状态,测试SIC不通。
在管理平台上更改$FWDIR/lib/crypt.def文件如下:
#ifndef NON_V P N_TRAFFIC_RULES
#define NON_V P N_TRAFFIC_RULES (src=1.1.1.1)
#else
#define NON_V P N_TRAFFIC_RULES 0
#endif
#endif
3.文件修改注意事项
3.1.情况一
按照sk108600 Scenario 3部分修改文件,如下:
#ifndef NON_V P N_TRAFFIC_RULES
#define NON_V P N_TRAFFIC_RULES (dst=1.1.1.1)
#else
#define NON_V P N_TRAFFIC_RULES 0
#endif
#endif
修改后下发策略可能会遇到如下报错
后来尝试把dst=1.1.1.1改为src=1.1.1.1之后问题解决。
3.2.情况二
修改此配置文件时,如果按照sk来做,最后应该是一个#endif.但是实际修改过程中,需要有两个#endif结尾。所以容易忽略的一行是最后一个#endif。最后结果应该如下:
#ifndef NON_V P N_TRAFFIC_RULES
#define NON_V P N_TRAFFIC_RULES (dst=1.1.1.1)
#else
#define NON_V P N_TRAFFIC_RULES 0
#endif
#endif