【网络安全学习笔记1】防火墙分类以及各自优缺点

一、防火墙是什么?

防火墙(Firewall),也称防护墙,是由Check Point创立者Gil Shwed于1993年发明并引入国际互联网(US5606668(A)1993-12-15)。它是一种位于内部网络与外部网络之间的网络安全系统。一项信息安全的防护系统,依照特定的规则,允许或是限制传输的数据通过。——搜狗百科

通过防火墙还能够对信息数据的流量实施有效查看,并且还能够对数据信息的上传和下载速度进行掌握,便于用户对计算机使用的情况具有良好的控制判断,计算机的内部情况也可以通过这种防火墙进行查看,还具有启动与关闭程序的功能,而计算机系统的内部中具有的日志功能,其实也是防火墙对计算机的内部系统实时安全情况与每日流量情况进行的总结和整理。——百度百科

在这里插入图片描述

二、防火墙的分类

在这里插入图片描述

1.包过滤防火墙

定义:在Linux系统下,包过滤功能是内建于核心的(作为一个核心模块,或者直接内建),同时还有一些可以运用于数据包之上的技巧,不过最常用的依然是查看包头以决定包的命运。

工作机制包过滤防火墙将对每一个接收到的包做出允许或拒绝的决定。具体地讲,它针对每一个数据包的包头,按照包过滤规则进行判定,与规则相匹配的包依据路由信息继续转发,否则就丢弃。包过滤(IP层实现)根据数据包的源IP地址、目的IP地址、协议类型(TCP包、UDP包、ICMP包)、源端口、目的端口等包头信息及数据包传输方向等信息来判断是否允许数据包通过。其核心技术就是控制访问列表

优点:速度比较快,能够处理的并发连接比较多

缺点:①无法关联数据包之间的关系,需要设定额外的规则(导致路由器的过滤规则的设置和配置复杂繁琐)

②无法适应多通道协议,如果额外的连接都是固定端口,可以设定额外的规则

③通常不检查应用层数据(无法发现基于应用层的攻击)

④无法阻止ip欺骗

⑤实施的是静态的、固定的控制,不能跟踪TCP状态

⑥不支持用户认证

2.代理防火墙

定义:这种防火墙通过一种代理(Proxy)技术参与到一个TCP连接的全过程。从内部发出的数据包经过这样的防火墙处理后,就好像是源于防火墙外部网卡一样,从而可以达到隐藏内部网结构的作用。这种类型的防火墙被网络安全专家和媒体公认为是最安全的防火墙。

工作机制:代理服务器作为一个为用户保密或者突破访问限制的数据转发通道,在网络上应用广泛。我们都知道,一个完整的代理设备包含一个服务端和客户端,服务端接收来自用户的请求,调用自身的客户端模拟一个基于用户请求的连接到目标服务器,再把目标服务器返回的数据转发给用户,完成一次代理工作过程。那么,如果在一台代理设备的服务端和客户端之间连接一个过滤措施呢?这样的思想便造就了“应用代理”防火墙,这种防火墙实际上就是一台小型的带有数据检测过滤功能的透明代理服务器(Transparent Proxy),但是它并不是单纯的在一个代理设备中嵌入包过滤技术,而是一种被称为“应用协议分析”(Application Protocol Analysis)的新技术。

“应用协议分析”技术工作在OSI模型的最高层——应用层上,在这一层里能接触到的所有数据都是最终形式,也就是说,防火墙“看到”的数据和我们看到的是一样的,而不是一个个带着地址端口协议等原始内容的数据包,因而它可以实现更高级的数据检测过程。整个代理防火墙把自身映射为一条透明线路,在用户方面和外界线路看来,它们之间的连接并没有任何阻碍,但是这个连接的数据收发实际上是经过了代理防火墙转向的,当外界数据进入代理防火墙的客户端时,“应用协议分析”模块便根据应用层协议处理这个数据,通过预置的处理规则(没错,又是规则,防火墙离不开规则)查询这个数据是否带有危害,由于这一层面对的已经不再是组合有限的报文协议,甚至可以识别类似于“GET> /sql.asp?id=1 and> 1”的数据内容,所以防火墙不仅能根据数据层提供的信息判断数据,更能像管理员分析服务器日志那样“看”内容辨危害。而且由于工作在应用层,防火墙还可以实现双向限制,在过滤外部网络有害数据的同时也监控着内部网络的信息,管理员可以配置防火墙实现一个身份验证和连接时限的功能,进一步防止内部网络信息泄漏的隐患。最后,由于代理防火墙采取是代理机制进行工作,内外部网络之间的通信都需先经过代理服务器审核,通过后再由代理服务器连接,根本没有给分隔在内外部网络两边的计算机直接会话的机会,可以避免入侵者使用“数据驱动”攻击方式(一种能通过包过滤技术防火墙规则的数据报文,但是当它进入计算机处理后,却变成能够修改系统设置和用户数据的恶意代码)渗透内部网络,可以说,“应用代理”是比包过滤技术更完善的防火墙技术。

优点:采用代理机制工作,内外部通信需要经过代理服务器审核,可以实现更高级的数据检测过程。

缺点:①处理速度比较慢,能够处理的并发数比较少 ②升级困难

3.状态检测防火墙

定义状态检测防火墙在网络层有一个检查引擎截获数据包并抽取出与应用层状态有关的信息,并以此为依据决定对该连接是接受还是拒绝。这种技术具有较好的适应性和扩展性。状态检测防火墙克服了包过滤防火墙和应用代理服务器的局限性,不仅仅检测“to”和“from”的地址,而且不要求每个访问的应用都有代理。

工作机制这是第三代防火墙技术,能对网络通信的各层实行检测。同包过滤技术一样,它能够检测通过IP地址、端口号以及TCP标记,过滤进出的数据包。它允许受信任的客户机和不受信任的主机建立直接连接,不依靠与应用层有关的代理,而是依靠某种算法来识别进出的应用层数据,这些算法通过己知合法数据包的模式来比较进出数据包,这样从理论上就能比应用级代理在过滤数据包上更有效。状态监视器的监视模块支持多种协议和应用程序,可方便地实现应用和服务的扩充。此外,它还可监测RPC和UDP端口信息,而包过滤和代理都不支持此类端口。这样,通过对各层进行监测,状态监视器实现网络安全的目的。目前,多使用状态监测防火墙,它对用户透明,在OSI最高层上加密数据,而无需修改客户端程序,也无需对每个需在防火墙上运行的服务额外增加一个代理。

优点:
① 安全性好

状态检测防火墙工作在数据链路层和网络层之间,它从这里截取数据包,因为数据链路层是网卡工作的真正位置,网络层是协议栈的第一层,这样防火墙确保了截取和检查所有通过网络的原始数据包。防火墙截取到数据包就处理它们,首先根据安全策略从数据包中提取有用信息,保存在内存中;然后将相关信息组合起来,进行一些逻辑或数学运算,获得相应的结论,进行相应的操作,如允许数据包通过、拒绝数据包、认证连接、加密数据等。状态检测防火墙虽然工作在协议栈较低层,但它检测所有应用层的数据包,从中提取有用信息,如IP地址、端口号等,这样安全性得到很大提高。

②.性能高效

状态检测防火墙工作在协议栈的较低层,通过防火墙的所有的数据包都在低层处理,而不需要协议栈的上层处理任何数据包,这样减少了高层协议头的开销,执行效率提高很多;另外在这种防火墙中一旦一个连接建立起来,就不用再对这个连接做更多工作,系统可以去处理别的连接,执行效率明显提高。

③ 扩展性好

状态检测防火墙不像应用网关式防火墙那样,每一个应用对应一个服务程序,这样所能提供的服务是有限的,而且当增加一个新的服务时,必须为新的服务开发相应的服务程序,这样系统的可扩展性降低。状态检测防火墙不区分每个具体的应用,只是根据从数据包中提取出的信息、对应的安全策略及过滤规则处理数据包,当有一个新的应用时,它能动态产生新的应用的新的规则,而不用另外写代码,所以具有很好的伸缩性和扩展性。

④配置方便,应用范围广

状态检测防火墙不仅支持基于TCP的应用,而且支持基于无连接协议的应用,如RPC、基于UDP的应用(DNS 、WAIS、
Archie等)等。对于无连接的协议,连接请求和应答没有区别,包过滤防火墙和应用网关对此类应用要么不支持,要么开放一个大范围的UDP端口,这样暴露了内部网,降低了安全性。状态检测防火墙实现了基于UDP应用的安全,通过在UDP通信之上保持一个虚拟连接来实现。防火墙保存通过网关的每一个连接的状态信息,允许穿过防火墙的UDP请求包被记录,当UDP包在相反方向上通过时,依据连接状态表确定该UDP包是否被授权的,若已被授权,则通过,否则拒绝。如果在指定的一段时间内响应数据包没有到达,连接超时,则该连接被阻塞,这样所有的攻击都被阻塞.状态检测防火墙可以控制无效连接的连接时间,避免大量的无效连接占用过多的网络资源,可以很好的降低DOS和DDOS攻击的风险。

缺点:

①回程数据包可以直接放行,不需要设定额外的规则

② 流量只检测第一个报文,后续的报文命中会话直接转发,后续包处理速度快

4.常见的防火墙部署结构

在这里插入图片描述

5.防火墙的安全区域

防火墙分为4类区域,每一类区域会有各自的优先级,优先级越高,越安全。
1.Local区域,优先级100,防火墙自身所属区域
2.trust区域,优先级85,一般连接受信任网络
3.untrust区域,优先级5,一般连接不受信任的网络
4.dmz区域,优先级50,隔离区,必须公开的服务器(诸如web服务器、FTP服务器等)

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/suancaiyufei/article/details/109646083