浅析防火墙技术原理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
浅析防火墙技术原理
数据包过滤技术工作在OSI网络参考模型的网络层和传输层,它是个人防火墙技术的第二道
防护屏障。数据包过滤技术在网络的入口,根据数据包头源地址,目的地址、端口号和协议
类型等标志确定是否允许通过。只有满足过滤条件的数据包才被转发到相应的目的地,其余
数据包则被从数据流中丢弃。
所谓的数据包过滤技术。又称“报文过滤”技术,它是防火墙最传统、最基本的过滤技术。防
火墙的产生也是从这一技术开始的,最早是于1989所提出的。防火墙的包过滤技术就是对
通信过程中数据进行过滤(又称筛选),使符合事先规定的安全规则(或称“安全策略”)的数据包
通过,而使那些不符合安全规则的数据包丢弃。这个安全规则就是防火墙技术的根本,它是
通过对各种网络应用、通信类型和端口的使用来规定的。
包过滤方式是一种通用、廉价和有效的安全手段。它的优点是它对于用户来说是透明的,处
理速度快而且易于维护,通常被做为一道基本防线。不用改动客户机和主机上的应用程序,
因为它工作在网络层和传输层,与应用层无关。之所以通用,是因为它不是针对各个具体的
网络服务采取特殊的处理方式,适用于所有网络服务;之所以廉价,是因为大多数路由器都提
供数据包过滤功能,所以这类防火墙多数是由路由器集成的;之所以有效,是因为它能很大程
度上满足了绝大多数企业安全要求。
防火墙对数据的过滤,首先是根据数据包中包头部分所包含的源IP地址、目的IP地址、协
议类型(TCP包、UDP包、ICMP包)、源端口、目的端口及数据包传递方向等信息,判断是否
符合安全规则,以此来确定该数据包是否允许通过。
在这个网络结构中防火墙位于内、外部网络的边界,内部网络可能包括各种交换机、路由器
等网络设备。而外部网络通常是直接通过防火墙与内部网络连接,中间不会有其它网络设备。防火墙作为内、外部网络的唯一通道,所以进、出的数据都必须通过防火墙来传输的。这就
有效地保证了外部网络的所有通信请求,当然包括黑客所发出的非法请求都能在防火墙中进
行过滤。
包过滤技术最先使用的是在路由器上进行的,它也是最原始的防火墙方案。实现起来非常容易,只需要在原有的路由器上进行适当的配置即可实现防火墙方案。在整个防火墙技术的发
展过程中,包过滤技术出现了两种不同版本,称为“第一代静态包过滤”和“第二代动态包过滤”。
①第一代静态包过滤类型防火墙
这类防火墙几乎是与路由器同时产生的,它是根据定义好的过滤规则审查每个数据包,以便
确定其是否与某一条包过滤规则匹配。过滤规则基于数据包的报头信息进行制订。报头信息
中包括IP源地址、IP目标地址、传输协议(TCP, UDP,ICMP等等)、TCP/UDP目标端口、ICMP
消息类型等。
②第二代动态包过滤类型防火墙
这类防火墙采用动态设置包过滤规则的方法,避免了静态包过滤所具有的问题。这种技术后
来发展成为包状态监测技术。采用这种技术的防火墙对通过其建立的每一个连接都进行跟踪,并且根据需要可动态地在过滤规则中增加或更新条目。
2应用网关技术
应用级网关可以工作在OSI七层模型的任一层上,能够检查进出的数据包,通过网关复制传
递数据,防止在受信任服务器和客户机与不受信任的主机间直接建立联系。应用级网关能够
理解应用层上的协议,能够做复杂一些的访问控制,并做精细的注册。通常是在特殊的服务
器上安装软件来实现的。
电路级网关也是一种代理。电路级网关用来监控受信任的客户或服务器与不受信任的主机间
的TCP握手信息,这样来决定该会话是否合法,电路级网关是在OS工模型中会话层上来过
滤数据包,这样比包过滤防火墙要高两层。另外,电路级网关还提供一个重要的安全功能,
即网络地址转移(NAT)将所有公司内部的IP地址映射到一个“安全”的IP地址,这个地址是由
防火墙使用的。有两种方法来实现这种类型的网关,一种是由一台主机充当筛选路由器而另
一台充当应用级防火墙。另一种是在第一个防火墙主机和第二个之间建立安全的连接。这种
结构的好处是当一次攻击发生时能提供容错功能。
3地址翻译技术
地址翻译技术NAT是将一个IP地址用另一个IP地址代替。
地址翻译技术主要模式有以下几种。
(1)静态翻译。按照固定的翻译表,将主机的内部地址翻译成防火墙的外网接口地址。
(2)动态翻译。为隐藏内部主机或扩展的内部网络地址之间,一个大的用户群共享一个或一组小的Internet IP地址。
(3)负载平衡翻译。一个IP地址和端口被翻译为同等配置的多个服务器。当请求到达时,防
火墙按照一个算法平衡所有连接到内部的服务器。这样,向一个合法的IP地址请求,实际上
有多台服务器在提供服务。
(4)网络冗余翻译。多个连续被附结在一个NAT防火墙上,防火墙根据负载和可用性对连接
进行选择和使用。
4状态检测技术
状态检测防火墙采用基于连接的状态检测机制,将属于同一连接的所有包作为一个整体的数
据流看待,构成连接状态表,通过规则表与状态表的共同配合,对表中的各个连接因素加以
识别。
当一个状态检测防火墙收到一个初始化TCP连接的SYN包该包被防火墙规则库检查,如果检查了所有规则后,该包都没有被接受,那么拒绝该次连接。如该包被接受,那么本次会话被
记录到状态监测表里。并设置一个合适的时间溢出值,当防火墙收到返回的含有SYN/ACK标
志的确认连接数据包,防火墙调整时间溢出值到合适大小,否则拒绝服务攻击马上就会将防
火墙陷入瘫痪。随后的数据包就和该状态监测表的内容进行比较,通过比较源地址、目的地
址和端口号来区分是否是同一个会话。如果该数据包是状态表内的会话的一部分,该包被接受,如果不知则该包被丢弃。这种方式提高了系统性能,因为每个数据包不是和规则库比较,而是和状态表比较,只有在SYN数据包到来时才和规则库比较。
参考文献:
[1]阎慧.防火墙原理与技术[M].北京:机械工业出版社.
[2]朱树人.防火墙HTTP代理用户认证的实现技术[J].计算机工程与应用, 2011.
[3]杨璐.网络安全理论与技术[M].北京:人民邮电出版社,2013,160-166.