自从第一个最简单的包过滤路由器防火墙问世以来,在防火墙产品系列中已经出现了应用各种不同技术的不同类型的防火墙。这些技术之间的区分并不是非常明显,但就其处理的对象来说,基本上可以分为包过滤型应用网关型和代理服务型三大类:包过滤型防火墙、应用网关型防火墙和代理服务型防火墙。包过滤型防火墙的处理对象是IP包,其功能是处理通过网络的IP包的信息,实现进出网络的安全控制。应用网关型防火墙的处理对象是各种不同的应用服务,其功能是通过对网络服务的代理,检查进出网络的各种服务。因为网络通信是基于网络通信的层次参考模型来进行的,所以,不同类型的防火墙负责处理不同层次的通信数据。如IP包过滤型防火墙负责处理网络层数据,而应用代理型防火墙负责处理应用层数据。
1.包过滤型防火墙
在遵守TCP/IP协议的网络中,数据是分解为不同的IP包进行传输的。包过滤型防火墙是应用数据包过滤(Packet Filtering)技术在网络层对数据包进行选择,截获每个通过防火墙的IP包,并进行安全检查。如果IP包能通过检查,就将该IP包正常转发出去,否则,就阻止该IP包通过。在这里,进行选择的依据是系统内设置的过滤逻辑,称为访问控制表(Access Control Table)。包过滤防火墙通过检查数据流中每个数据包的源地址、目的地址、所用的端口号、协议状态等因素,或它们的组合来确定是否允许该数据包通过。由于在Internet中,提供某些特定服务的服务器一般都使用相对固定的端口,因此,包过滤器只需控制端口就控制了服务。例如,TCP端口23通常提供Telnet服务,所以在包过滤器中只要控制了这个端口,就可以控制Telnet的服务。大多数防火墙都有IP包过滤的功能,其中最常见的是包过滤路由器。它是基于一定的规则来对IP包进行安全检查,这些规则可以归纳为以下几个方面:协议类型、源地址、目的地址、源端口、目的端口。其具体的实现原理是:
(1)通过协议类型控制特定的协议。
(2)通过IP地址控制特定的源和目的主机。
(3)通过控制源和目的端口控制特定的网络服务。
(4)通过源/目的控制入网信息和出网信息,即控制信息方向。
更进一步,还可以通过制定IP地址和端口的组合规则,要求某些特定服务必须通过某一特定的IP地址进行细致的检查。由于包过滤型防火墙逻辑简单,价格便宜,易于安装和使用,网络性能和透明性好,所以通常安装在路由器上。路由器是内部网络与Internet连接必不可少的设备,因此在原有网络上增加这样的防火墙几乎不需要任何额外的费用,适合安全性要求较低的小型电子商务系统。但是,包过滤型防火墙也有其不足之处,主要表现在:
(1)为完成某一项特定任务,包过滤的规则可能比较复杂,且不易验证其正确性。(www.daowen.com)
(2)一般的包过滤路由器在审计功能方面显得较弱,因而安全性不足。
(3)数据包的源地址、目的地址以及IP的端口号都在数据包的头部,很有可能被窃听或假冒,这样就会形成各种安全漏洞。
2.应用网关型防火墙
应用级网关(Application Level Gateways)是在网络应用层上建立协议过滤和转发功能。它针对特定的网络应用服务协议使用指定的数据过滤逻辑,并在过滤的同时,对数据包进行必要的分析、登记和统计,形成报告。实际中的应用网关通常安装在专用工作站系统上。
包过滤型和应用网关型防火墙有一个共同的特点,就是它们仅仅依靠特定的逻辑来判定是否允许数据包通过。一旦满足逻辑,则防火墙内外的计算机系统就建立起直接联系,防火墙外部的用户便有可能直接了解防火墙内部的网络结构和运行状态,这就很有可能导致非法访问和攻击。
3.代理服务型防火墙
代理服务(Proxy Service)又称链路级网关或TCP通道,也有人将它归于应用级网关一类。代理服务型防火墙是针对数据包过滤和应用网关技术存在的缺点而引入的防火墙技术,其特点是将所有跨越防火墙的网络通信链路分为两段。防火墙内外的计算机系统间应用层的“链接”,由两个终止代理服务器上的“链接”来实现,外部计算机的网络链路只能到达代理服务器,从而起到了隔离防火墙内外计算机系统的作用。此外,代理也对过往的数据包进行分析、注册登记、形成报告,同时当发现被攻击迹象向网络管理员发出警报,并保留攻击痕迹。在一个网络中,对于由内向外的请求和由外向内的请求所进行的处理相同的,一般认为内部网络比较安全,所以需要控制外部网络向内部网络的请求。这时,就由代理程序将外部用户对内部网络的服务请求依据已制定全规则决定是否向内部真实服务器提交。代理服务代替外部用户与内部网的服务器进行连接。所以代理服务类似于应用服务和用户之间的转发器。当远程用户请求内部服务时,它首先与这个代理相连,经过认证后,再由代到目的主机,同时将服务器的响应传送给所代理的客户。
在这个过程中,代理既是客户程序又担任服务器的角色。对于真正的请求来说,它是服务器;而对于服务器来说,它是一个客户请求进程。所以在代理的实现中必须既有服务器的部分,又有客户的程序部分。应用级网关和代理服务方式的防火墙大多是基于主机的,性能较好,但比较贵,且安装和使用也比包过滤型防火墙复杂。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。