防火墙分类及概念

1、定义:防火墙是由软件和硬件组成的系统,它处于安全的网络(通常是内部局域网)和不安全的网络之间,根据由系统管理员设置的访问控制规则,对数据流进行过滤。
2、防火墙对数据流有三种处理方式:1)允许数据流通过;2)拒绝数据流通过;3)将这些数据流丢弃。当数据流被拒绝时,防火墙要向发送者回复一条消息进行提示。当数据流被丢弃时,防火墙不会对这些数据包进行任何处理,也不会向发送者发送任何提示信息。
3、防火墙的要求:1)所有进出网络的数据流都必须经过防火墙;2)只允许经过授权的数据流通过防火墙;3)防火墙自身对入侵是免疫的。
4、根据防火墙在网络协议栈中的过滤层次不同,通常把防火墙分为3种:包过滤防火墙、电路级网关防火墙和应用级网关防火墙。
5、防火墙对开放系统互联模型(OSI)中各层协议所产生的数据流进行检查。要知道防火墙是哪种类型的结构,关键是要知道防火墙工作于OSI模型中的哪一层。防火墙工作于OSI模型的层次越高,其检查数据包中的信息就越多,因此防火墙所消耗的处理器工作周期就越长,所提供的安全保护等级就越好。
6、网络地址转换
1)静态网络地址转换:在进行网络映射时,内部网络地址与外部的Internet IP地址是一一对应的关系。在这种情况下,不需要NAT盒在地址转换时记录转换信息。
2)动态网络地址转换:可用的Internet IP地址限定在一个范围,而内部网络地址的范围大于Internet IP地址的范围。在进行地址转换时,如果Internet IP地址被占用,此时从内部网络地址发出的请求会因为无地址可分配而遭到拒绝。
3)PAT(端口地址转换):在进行网络地址转换时,不仅网络地址发生改变,而且协议端口也发生改变。简单说,PAT在以地址为唯一标识的动态网络地址转换基础上,又增加了源端口号或目的端口号作为标志的一部分。
7、动态网络地址转换和端口地址转换必须维护一个地址转换状态表,在中型网络中使用路由器做NAT转换的话一段时间之后路由器的资源会耗尽,通常的做法是在防火墙上实现NAT功能。
NAT转换表中有以下表项,用于区分内网中有多个内部主机同时与外网中的同一台主机通信以及内网中同一台主机中的多个进程与外网中的同一台主机进行通信的情形。
内部地址+内部端口(区分内部主机上的应用层进程)
外部地址+外部端口+NAT端口+传输协议
即内部地址+内部端口与NAT端口对应,当然,如果有多个外部地址可用的话,内部地址+内部端口与外部地址+外部端口对应。
外部端口用于标志目标主机中某一服务应用程序所使用的端口号。
8、静态包过滤防火墙:主要实现3个主要功能——1)接收每个到达的数据包;2)对数据包采用过滤规则,对数据包的IP头和传输字段内容进行检查。如果数据包的头信息与一组规则匹配,则根据该规则确定是转发还是丢弃该数据包。3)如果没有规则与数据包头信息匹配,则对数据包施加默认规则。默认规则可以丢弃或者接收所有数据包。默认丢弃数据包规则更加严格,而默认接收数据包规则更加开放。通常,防火墙首先默认丢弃所有数据包,然后再逐个执行过滤规则,以加强对数据包的过滤。
8_1、静态包过滤防火墙原理补充:对于静态包过滤防火墙来说,决定接收还是拒绝一个数据包,取决于对数据包中IP头和协议头等特定域的检查和判定,这些特定域包括:1)数据源地址;2)目的地址;3)应用或协议;4)源端口号; 5)目的端口号。
8_2、包过滤防火墙的配置分3步进行:第一,管理员必须明确企业网络的安全策略; 第二,必须用逻辑表达式清楚地表述数据包的类型;第三,必须用设备提供商可支持的语法重写这些表达式。
9、静态包过滤防火墙的安全性:无法区分真实的IP地址和伪造的IP地址,即无法防御IP地址欺骗攻击;由于静态包过滤防火墙仅检查那些特定的协议头信息:1)源/目的IP地址;2)源/目的端口号(服务类型),因此黑客可能将恶意的命令或数据隐藏在那些未经检查的头信息中,即“隐信道攻击”;缺少状态感知能力:一些需要动态分配端口的服务需要防火墙打开许多端口,即管理员必须为静态包过滤规则打开所有的端口,因此增大了网络的安全性风险。
10、动态包过滤防火墙直接对“连接”进行处理,而不是仅对数据包头信息进行检查。
11、电路级网关防火墙:
工作原理:电路级网关防火墙监视两主机建立连接时的握手信息,如SYN、ACK和序列号是否合乎逻辑,判定该会话请求是否合法。在有效会话建立后,电路级网关仅复制、传递数据,而不进行过滤。电路级网关仅用来中继TCP连接,为了增强安全性,电路级网关可以采取强认证措施。在整个过程中,IP数据包不会实现端到端的流动,这是因为中继主机工作在IP层以上。
12、状态检测防火墙:
什么是状态检测?状态检测技术采用一种基于连接的状态检测机制,将属于同一连接的所有数据包当作一个整体来看待,并建立状态表,通过规则表与状态表的共同配合,对表中的各个连接以及状态进行识别,从而达到对数据流进行控制的目的。
状态检测防火墙截取到数据包时,首先检查其是否属于某一有效的连接,若是,说明该包所属的数据流以通过安全规则检查,从而不需要再进行规则检查,而只需要检查其在数据流中的状态是否正确即可,只有当数据包不属于任何有效连接或状态不匹配时,才对其进行规则检查。这样避开了复杂的安全规则检查,可极大地提高防火墙的整体效率。
状态检测防火墙的实现是基于连接的,对于数据包自身包含有状态信息的TCP服务来说,其实现较为直观,然而对于无连接的UDP服务,通常采用为UDP服务建立虚拟连接的方法达到上述目的。
FTP的工作方式:主动模式和被动模式
PORT模式FTP客户端首先和FTP服务器的TCP21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。PORT命令包含了客户端用什么端口接收数据。在传送数据的时候,服务器端通过自己的TCP20端口连接至客户端的指定端口发送数据。(可以看到在这种方式下是客户端和服务端建立控制连接,其中,客户端的控制连接和数据连接的端口号是大于1024的两个端口号,而FTP服务器的数据端口是20,控制端口是21)
PASSIVE模式在建立控制通道的时候和STANDARD模式类似,但建立连接之后发送的不是PORT命令,而是PASV命令。FTP服务器收到PASV命令后,随机打开一个临时端口(也叫自由端口)并且通知客户端在这个端口上传送数据,客户端链接到这个端口,然后FTP服务器将通过这个端口进行数据的传送。
13、应用级网关防火墙上运行的代理程序对数据包进行逐个检查和过滤,而不是简单的复制数据让数据包轻易通过网关。特定的应用代理检查通过网关的数据包,在OSI的应用层上验证数据包内容。这些代理可以对应用协议中的特定信息或命令进行过滤,这就是所谓的关键词过滤或者命令字过滤。例如,FTP应用代理能够过滤许多命令字,以便对特定用户实现更加精细的控制,以保护FTP服务器免遭非法入侵。

猜你喜欢

转载自blog.csdn.net/hbhgyu/article/details/80420387