防火墙并不适用于所有网络场景

 常见问题     |      2020-11-26 11:03

不是任何场合都适合部署防火墙。

谁都知道安全性和方便性有时候会有那么一些冲突。防火墙作为一种网络安全设备,部署在网络中会对穿过防火墙的数据包进行拦截,然后确定它符合策略要求以后才会放行。这会对网络传输效率造成一定影响。

所以防火墙一般用于数据中心,大型企业总部,国有企业省级、地区级办公机构,带有服务器区域的网络环境或机密性较高的单位。

五、防火墙的分类

防火墙按照功能和级别的不同,一般分类这么三类:包过滤型防火墙、状态检测型防火墙、代理型防火墙。

1、包过滤型防火墙

这种防火墙只能实现最基础的包过滤功能,按照既定的访问控制列表对数据包的三、四层信息进行控制,详细一点就是:

三层信息:源IP地址,目标IP地址

四层信息:源端口,目标端口

这种情况其实用一个路由器或者三层交换机,配置ACL就能实现

只有符合了条件的数据包才能被放行,不符合条件的数据包无论如何都不会被放行。但是包过滤型防火墙的性质就是那么“教条”与“顽固不化”!

2、状态检测型防火墙

状态检测型防火墙就是为了解决的包过滤型防火墙的不足而存在的。它比包过滤型防火墙还多了一层“状态检测”功能。

状态化检测型防火墙可以识别出主动流量和被动流量,如果主动流量是被允许的,那么被动流量也是被允许的。

例如TCP的三次握手中,第一次流量是主动流量,从内到外,第二次流量就是从外到内的被动流量,这可以被状态监测型防火墙识别出并且放行。

状态监测型防火墙会有一张“连接表”,里面记录合法流量的信息。当被动流量弹回时,防火墙就会检查“连接表”,只要在“连接表”中查到匹配的记录,就会放行这个流量。

第一次握手,内部主机10.112.100.101使用随机端口10025访问外部的WebServer

200.100.1.2的TCP 80

三层信息

源IP地址:10.112.100.101 目标IP地址:200.100.1.2

源端口:TCP 10025 目标端口:TCP 80

由于内部接口放行所有流量,所以这个第一次握手的流量被放行了

但此时,防火墙在连接表中生成了如下内容:

第二次握手时,是外部主机被动弹回的流量

源地址(外部):200.100.1.2 源端口(外部):TCP 80

目标地址(内部):10.112.100.101 目标端口(内部):TCP 10025

此时,防火墙会暂时拦截流量,然后检查连接表,看看内部主机的IP和端口,外部主机的IP和端口是否与连接表中记录的相同,如果相同,它就会放行这个流量。

如果是外部主动发起的流量,而防火墙又没有允许它访问内部,由于是外部主动发起的流量,所以防火墙的连接表里没有相应的信息,这就会遭到防火墙的拒绝。

从而达到既保证了内部到外部的正常通信,又使得内部主机不受到外部的侵犯,这就是状态检测型防火墙的魅力所在。

目前主流的硬件防火墙几乎都支持状态监测功能。

3、代理型防火墙

代理型防火墙一般是一个安装在多网卡服务器上的软件,拥有状态监测的功能,但是多了一项功能就是代理服务器功能。一般有正向代理和反向代理两种功能:

正向代理用于内部主机访问Internet服务器的时候,特别是Web服务的时候很管用。当内部主机第一次访问外部的Web服务器时,代理服务器会将访问后的内容放在自己的“高速缓存”中。

当内部主机再次访问该Web服务器的时候,如果有相同的内容,代理服务器就会将这个访问定位到自己的高速缓存,从而提升内部主机的访问速度。

反向代理和正向代理有点类似,只不过访问的方向是外部到内部。

当外部主机要访问内部发布的某个服务器的时候,不会让它把访问目标定位到内部服务器上,而是反向代理设备上。

反向代理设备会从真实的服务器上抽取数据到自己的缓存中,起到保护真实服务器的功能。