本帖最后由 nihongliang 于 2017-11-3 17:57 编辑
客户环境:
AF路由模式,eth6接口划分一个区域,eth6下接一个二层交换,二层交换下接一台物理服务器和一台超融合服务器。超融合里划了一个虚拟路由器,虚拟路由连接到服务器网段
客户要求: 客户想让两台服务器之间只放通ssh和ping,然后客户自己配置了一条应用控制策略
配置好以后发现只能单向ping通,然后我们这边登陆设备查看,配置上面如果放通所有icmp服务,两边即可互通,那为什么会导致这种情况,下面做一个分析。 首先当178.78.1.12服务器去ping 10.246.1.45服务器数据包走向是 此时,AF中只会看到178.78.1.12的icmp请求包,而我们服务中,ping的定义是type8,而type8对应就是icmp中的request包,所以此时的数据包会匹配上这条策略放通,即可以ping通。
然后第二种情况,当10.246.1.45去ping 178.78.1.12时,数据包的走向是 而此时,AF上面只会看到178.78.1.12的reply包,而reply包经过防火墙时,无法匹配上那条允许策略(策略里面只放通了ping,ping的服务里面只有type8,而reply是type0),随即匹配默认拒绝策略,则出现10.246.1.45无法ping通178.78.1.12的情况。
解决方案: 1.直接将icmp服务全部放通,不能单独只勾选ping服务,或者自定义一个服务
2.如果只开通ping服务,因为环境的特殊性,导致了数据包来回路径不一致,此时只需要在HCI的虚拟路由器上做一条地址转换,将源地址10.246.1.45去往目的178.78.1.12转换为178.78.1.247,此时178.78.1.12的relpy包不经过防火墙,所以可以直接交给虚拟路由器,关于应用控制亦可交给虚拟路由器来做设置。
———————————分割线
续:前面是ICMP协议,如果需求是10.246.1.45只能去访问178.78.1.12的http服务,此时策略该如何做?
分析:正常的环境下面策略控制即 源是10.246.1.45的任意端口,目的是178.78.1.12的80端口,但此环境下防火墙中数据包识别成源是178.78.1.12:80,目的是10.246.1.45:any,数据包对于1.45是正常的方向,但对于178.78.1.12是相反的方向,所以做策略时候,即源是178.78.1.12的80端口,目的是10.246.1.45的任意端口
|