防火墙背景

防火墙的主要功能是过滤数据、更改数据的流向以及抵御网络攻击。

防火墙应当满足以下三种需求:
1、两个不同信任区域之间的一切流量都应通过防火墙。不应该有后门存在。
2、仅允许安全策略授权许可的流量通过防火墙。
3、防火墙本身应该对渗透攻击有较高的免疫力。这意味着它的操作系统必须是高度安全的。

防火墙策略

防火墙能否有效地保护网络取决于防火墙的规则设置。
规则通常用于提供下面几种网络流量控制:
1、用户控制:基于用户角色来控制访问,通常应用于防火墙内的用户。
2、服务控制:基于服务类型来控制访问,这种控制的实现主要基于网络地址、端口号和连接协议。
3、方向控制:基于方向来控制访问,即数据是从外部流入还是内部流向外部。

防火墙动作

1、accepted: 允许数据包通过
2、denied: 不允许通过
3、rejected: 和denied类似,但防火墙会用ICMP包告知数据源数据包被拒的原因

双向过滤

防火墙可以进行双向网络流量检查。
入口过滤(ingress filtering):保护内部网络用,检查的是进入内网的流量。
出口过滤(egress filtering):避免内网用户访问某个外网地址或发送某种类型的数据。

防火墙种类

基于操作模式,防火墙可分为三类:数据包过滤器、状态防火墙和应用防火墙。

数据包过滤器

通过数据包的头部信息来判断是接受还是拒绝数据包。它不查看数据包载荷中的应用数据,最大优点是高效。
因为它无须维持数据包的状态,也称为无状态防火墙。

状态防火墙

这种防火墙会通过对流经的数据包的分析来判断是否让数据包通行。数据流提供了数据包的上下文,可以对一些已有的数据流 做一些规则。

应用防火墙

对特定的应用或服务采取控制。应用防火墙可以检查应用层的数据,而前两种只能检查传输层及其下层的通信。
应用防火墙的一种典型的实现方式是通过代理,因此也称为应用代理防火墙。这类防火墙的一种应用是防止敏感信息泄露。

应用防火墙的局限性在于,为处理不同的网络协议需要建立不同的代理。应用防火墙的优点之一是能够直接基于用户身份进行验证, 而不光依靠设备的网络地址,这就减少了IP伪造攻击的风险。
由于需要分析整个数据包,应用防火墙的处理速度明显慢于其他类型的防火墙。