Hillstone 防火墙系统架构的一点总结

Hillstone 防火墙系统架构的一点总结

1、组成StoneOS应用负载网关系统架构的基本元素包括:
Hillstone 防火墙系统架构的一点总结安全

安全域:``
域是一个逻辑实体,将网络划分为不一样部分,应用了安全策略的域称为“安全域”。例如,trust安全域一般为内网等可信任网络,untrust安全域一般为互联网等存在安全威胁的不可信任网络。网络

接口:`
接口是流量进出安全域的通道,接口必须绑定到某个安全域才能工做。默认状况下,接口都不能互相访问,只有经过策略规则,才能容许流量在接口之间传输。架构

虚拟交换机(VSwitch):
具备交换机功能。VSwitch工做在二层,将二层安全域绑定到VSwitch上后,绑定到安全域的接口也被绑定到该VSwitch上。一个VSwitch就是一个二层转发域,每一个VSwitch都有本身独立的MAC地址表,所以设备的二层转发在VSwitch中实现。而且,流量能够经过VSwitch接口,实现二层与三层之间的转发。ide

虚拟路由器(VRouter):简称为VR。
VRouter具备路由器功能,不一样VR拥有各自独立的路由表。
系统中有一个默认VR,名为trust-vr,默认状况下,全部三层安全域都将会自动绑定到trust-vr上。系统支持多VR功能且不一样硬件平台支持的最大VR数不一样。多VR将设备划分红多个虚拟路由器,每一个虚拟路由器使用和维护各自彻底独立的路由表,此时一台设备能够充当多台路由器使用。多VR使设备可以实现不一样路由域的地址隔离与不一样VR间的地址重叠,同时可以在必定程度上避免路由泄露,增长网络的路由安全。学习

策略接口

策略是设备的基本功能,控制安全域间/不一样地址段间的流量转发。默认状况下,设备会拒绝设备上全部安全域/接口/地址段之间的信息传输。策略规则(Policy Rule)决定从安全域到另外一个安全域,或从一个地址段到另外一个地址段的哪些流量该被容许,哪些流量该被拒绝。路由

绑定关系:it

StoneOS系统的架构中,安全域、接口、虚拟路由器和虚拟交换机之间具备从属关系,也称为“绑定关系”。 接口绑定到安全域,安全域绑定到VSwitch或VRouter,进而,接口也就绑定到了某个VSwitch或VRouter。一个接口只能绑定到一个安全域上,一个安全域能够绑定多个接口。二层安全域只能绑定到VSwitch上,三层安全域只能绑定到VRouter上。系统架构

安全策略规则class

默认状况下,全部的接口之间的流量都是拒绝的。不一样的安全域之间、相同的安全域以内的接口流量均不能互访。要实现接口的互访,只有经过建立策略规则,才能将流量放行。 若是既有从源到目的的访问,又有反方向的主动访问,那么就要建立两条策略规则,容许双方向的流量经过;若是只有单方向的主动访问,而反方向只回包便可,那么只须要建立源到目的的一条单方向的策略。

根据接口所属的安全域、VSwtich或VRouter的不一样,要建立不一样的策略才能容许接口互访,具体的规则以下:

一、属于同一个安全域的两个接口实现互访:
须要建立一条源和目的均为该安全域的策略。
例如,要实现上图中的eth0/0与eth0/1的互访,须要建立从L3-zone1到L3-zone1的容许流量经过的策略;或者,要实现eth0/3与eth0/4的互访,要建立源和目的均为L2-zone2的策略。

二、两个二层接口所在的安全域属于同一VSwitch,实现接口互访:
须要建立两条策略,第一条策略容许从一个安全域到另外一个安全域流量放行,第二条策略容许反方向的流量经过。
例如,要实现上图中的eth0/2与eth0/3的互访,须要建立从L2-zone1到L2-zone2的策略和L2-zone2到L2-zone1这两条策略。

三、两个二层接口所在的安全域属于不一样的VSwtich的,实现接口互访:
每一个VSwtich都具备惟一的一个VSwtich接口(VSwitchIF),该VSwtichIF与某个三层安全域绑定。要实现互访,须要建立放行策略,源是一个VswichIF所属的三层安全域,目的是另外一个VSwtichIF所属的三层安全域。同时,还须要建立反方向的策略。

四、两个三层接口所在的安全域属于同一VRouter,实现接口互访:
须要建立策略容许从一个安全域到另外一个安全域的流量放行。例如,要实现eth0/0和eth0/5的互访,要建立从L3-zone1到L3-zone2的容许流量经过的策略,而后再建立反方向的策略。

五、两个三层接口所在的安全域从属于不一样的VRouter的,实现接口互访:
若要实现接口互访,须要建立策略规则,容许从一个VRouter到另外一个VRouter之间的流量放行。

六、同一VRouter下的二层接口和三层接口,实现互访
建立容许流量经过的策略,策略的源是二层接口的VSwtichIF所绑定的三层安全域,策略的目的是三层接口所属的三层安全域。而后,再建立反向策略。
例如,要实现eth0/0与eth0/2的互访,须要建立从L3-zone1到L2-zone1的策略,以及反向策略。

2、数据包处理流程

Hillstone 防火墙系统架构的一点总结

一、二层转发域中的转发规则

在一个VSwitch,即一个二层转发域中,应用负载网关StoneOS经过源地址学习创建MAC地址转发表。每一个VSwitch都有本身的MAC地址转发表。StoneOS根据数据包的类型(IP数据包、ARP包和非IP且非ARP包),分别进行不一样的处理。

二、对于IP数据包,StoneOS遵循如下转发规则:
1)收到数据包。
2)学习源地址,更新MAC地址转发表。
3)若是目的MAC地址是单播地址,则根据目的MAC地址查找出接口。这时又有如下两种状况:
a)若是目的MAC地址为VSwitch接口的MAC地址,而且VSwitch接口有IP地址,则按照路由转发规则进行转发;
b)若VSwitch接口没有IP地址,则丢弃。
4)根据目的MAC地址找到出接口。若是找到的出接口是数据包的源接口,则丢弃该数据报,不然从出接口继续转发数据包。
5)若是在MAC地址表中没有找到出接口(未知单播),直接跳到第6步。
6)根据入接口和出接口肯定源域和目的安全域。
7)查找策略规则。若是策略规则容许则转发数据包;若是策略规则不容许,则丢弃数据包。
8)若是在MAC地址转发表中没有找到出接口(未知单播),StoneOS则尝试将数据包发给VSwitch中的全部其它二层接口,此时的操做流程为:把其它的每个二层接口作为出接口,二层接口所在的二层安全域做为目的域,查询策略规则,若是策略容许,则在该二层接口转发数据包,若是策略不容许,则丢弃数据包。归纳地说,对未知单播的转发即为策略限制下的广播。对于广播和多播IP包的处理相似于对未知单播的处理,不一样的是广播和多播IP包会被同时拷贝一份进行三层处理。
9)对于ARP包,广播包和未知单播包转发到VSwitch中的其它全部接口,同时,复制一份由ARP模块进行处理。

三、三层转发域的转发规则

1)识别数据包的逻辑入接口,多是通常无标签接口,也多是子接口。从而肯定数据包的源安全域。
2)StoneOS对数据包进行合法性检查。若是源安全域配置了防御功能,系统会在这一步同时进行防御功能检查。
3)会话查询。若是该数据包属于某个已创建会话,则跳过4到10,直接进行第11步。
4)目的NAT(DNAT)操做。若是可以查找到相匹配的DNAT规则,则为包作DNAT标记。由于路由查询须要DNAT转换的IP地址,因此先进行DNAT操做。
说明:若是系统配置静态一对一BNAT规则,那么先查找匹配的BNAT规则。数据包匹配了BNAT规则以后,按照BNAT的设定进行处理,再也不查找普通的DNAT规则。
5)路由查询。系统的路由查询顺序从前到后依次为:策略路由(PBR)> 源接口路由(SIBR)> 源路由(SBR)> 目的路由(DBR)> ISP路由。此时,系统获得了数据包的逻辑出接口和目的安全域。
6)源NAT(SNAT)操做。若是可以查找到相匹配的SNAT规则,则为包作SNAT标记。
说明:若是系统配置静态一对一BNAT规则,那么先查找匹配的BNAT规则。数据包匹配了BNAT规则以后,按照BNAT的设定进行处理,再也不查找普通的DNAT规则。
7)下一跳VR查询。若是下一跳为VR,则继续查看指定的下一跳VR是否超出最大VR数限制(当前版本系统仅容许数据包最多经过3个VR),若是超过则丢弃数据包,若是未超过,返回4;若是下一跳不是VR,则继续进行下一步策略查询。
8)策略查询。系统根据数据包的源安全域、目的安全域、源IP地址和端口号、目的IP地址和端口号以及协议,查找策略规则。若是找不到匹配的策略规则,则丢弃数据包;若是找到匹配的策略规则,则根据规则指定的行为进行处理,分别是:

容许(Permit):容许数据包经过。拒绝(Deny):拒绝数据包经过。隧道(Tunnel):将数据包转发到指定的隧道。是否来自隧道(Fromtunnel):检查数据包是否来自指定的隧道,若是是,则容许经过,若是不是,则丢弃。Web认证(WebAuth):对符合条件的流量进行Web认证。9)第一次应用类型识别。系统根据策略规则中配置的端口号和服务,尝试识别应用类型。10)会话创建。若是须要,进行第二次应用类型识别。根据数据包的内容和流量行为再次对应用类型进行精确识别。11)应用层行为(ALG)控制。为特定的复杂协议实施自适应处理。12)根据会话中记录的信息,例如NAT标记等,执行相应的处理操做。13)将数据包转发到出接口。

相关文章
相关标签/搜索