一、基本定义
所谓“防火墙”是指一种将内部网和公众访问网(如Internet)分开的方法,它实际上是一种建立在现代通信网络技术和信息安全技术基础上的应用性安全技术,隔离技术。越来越多地应用于专用网络与公用网络的互联环境之中,尤其以接入Internet网络为最甚。
防火墙主要是借助硬件和软件的作用于内部和外部网络的环境间产生一种保护的屏障,从而实现对计算机不安全网络因素的阻断。只有在防火墙同意情况下,用户才能够进入计算机内,如果不同意就会被阻挡于外,防火墙技术的警报功能十分强大,在外部的用户要进入到计算机内时,防火墙就会迅速的发出相应的警报,并提醒用户的行为,并进行自我的判断来决定是否允许外部的用户进入到内部,只要是在网络环境内的用户,这种防火墙都能够进行有效的查询,同时把查到信息朝用户进行显示,然后用户需要按照自身需要对防火墙实施相应设置,对不允许的用户行为进行阻断。通过防火墙还能够对信息数据的流量实施有效查看,并且还能够对数据信息的上传和下载速度进行掌握,便于用户对计算机使用的情况具有良好的控制判断,计算机的内部情况也可以通过这种防火墙进行查看,还具有启动与关闭程序的功能,而计算机系统的内部中具有的日志功能,其实也是防火墙对计算机的内部系统实时安全情况与每日流量情况进行的总结和整理。
防火墙是在两个网络通讯时执行的一种访问控制尺度,能最大限度阻止网络中的黑客访问你的网络。是指设置在不同网络(如可信任的企业内部网和不可信的公共网)或网络安全域之间的一系列部件的组合。它是不同网络或网络安全域之间信息的唯一出入口,能根据企业的安全政策控制(允许、拒绝、监测)出入网络的信息流,且本身具有较强的抗攻击能力。它是提供信息安全服务,实现网络和信息安全的基础设施。在逻辑上,防火墙是一个分离器,一个限制器,也是一个分析器,有效地监控了内部网和Internet之间的任何活动,保证了内部网络的安全。
二、防火墙发展
防火墙自上世纪80年代末期开始发展,至今已有近30年的历史,在这段时间内,防火墙的发展大致可分为三个重要阶段。
阶段一:1989-1994年
1、1989年,第一款基于访问控制列表(包过滤)的防火墙被开发,被称为第一代防火墙
2、之后,出现了基于ALG的第二代防火墙:令防火墙拦截从客户端向服务器发起的所有请求报文,由防火墙代理访问服务器,在将服务器的相应报文回传至客户端;安全级别较高,但处理速度较慢;同时,ALG很难针对网络中的每种应用单独开发独立的代理服务程序,因此仅仅只能够代理某些访问请求。
3、1994年,出现了基于状态化检测的第三代防火墙:通过分析报文的当前状态来执行不同的拦截操作。
阶段二:1995-2004年
1、在这一时期,状态化检测防火墙得到了长足的发展与进步,同时人们针对状态化检测防火墙增加了许多增值性功能:VPN、NAT等
2、一些专业设备也在这一时期出现了雏形,例如专门保护web服务器安全的WAF(web application firewall)设备
阶段三:2005-至今
业界提出了UTM(united threat managemetn)统一威胁管理概念,将传统防火墙、入侵检测、防病毒、URL过滤、应用程序控制、邮件过滤等功能融合到一台防火墙上,实现全面的安全防护
三、防火墙的分类
四、防火墙的控制
带内管理 : 通过网络环境对设备进行控制 --- telnet,ssh,web --- 登录设备和被登
录设备之间网络需要联通
带外管理 : console线,mini usb线
五、防火墙的认证
本地认证 --- 用户信息存储在防火墙上,登录时,防火墙根据输入的用户名和密码进行
判断,如果通过验证,则成功登录。
服务器认证 --- 和第三方的认证服务器对接,登录时,防火墙将登录信息发送给第三方
服务器,之后由第三方服务器来进行验证,通过则反馈给防火墙,防火墙放行。
一般适用于企业本身使用第三方服务器来存储用户信息,则用户信息不需要重复创
建。
服务器/本地认证 --- 优先使用服务器认证,如果服务器认证失败,则也不进行本地认
证。只有在服务器对接不上的时候,采用本地认证。
六、防火墙的安全区域
Trust --- 一般企业内网会被规划在trust区域中
Untrust --- 一般公网区域被规划在untrust区域中
我们将一个接口规划到某一个区域,则代表该接口所连接的所有网络都被规划到该区
域。
Local --- 指设备本身。凡是由设备构造并主动发出的报文均可以认为是从local区域发出的,
凡是需要设备响应并处理的报文均可以认为是由Local区接受。我们无法修改local区的配置,
并且我们无法将接口划入该区域。接口本身属于该区域。
Dmz --- 非军事化管理区域 --- 这个区域主要是为内网的服务器所设定的区域。这些服务器本
身在内网,但是需要对外提供服务。他们相当于处于内网和外网之间的区域。所以,这个区域就代表是严格管理和松散管理区域之间的部分管理区域。
优先级 --- 1 - 100 --- 越大越优 --- 流量从优先级高的区域到优先级低的区域 --- 出方向(outbound)
流量从优先级低的区域到高的区域 --- 入方向(inbound)
七、防火墙的安全策略
传统的包过滤防火墙 :其本质为ACL列表,根据 数据报中的特征 进行过滤,之后对比规制,
执行动作。
五元组 :源IP,目标IP,源端口,目标端口,协议
安全策略 :相较于ACL的改进之处在于,首先,可以在更细的颗粒度下匹配流量,另一方面
是可以完成 内容安全 的检测。
安全策略 :1.访问控制(允许和拒绝)
2.内容检测 --- 如果允许通过,则可以进行内容检测
八、防火墙的状态检测和会话表
基于流的流量检测 --- 即设备仅对流量的第一个数据包进行过滤,并将结果作为这一条数据流
的“特征”记录下来(记录在本地的 “会话表” ),之后,该数据流后续的报文都将基于这个
特征来进行转发,而不再去匹配安全策略。这样做的目的是为了提高转发效率。
状态检测防火墙访问过程
当web服务器给PC进行回报时,来到防火墙上,防火墙会将报文中的信息和会话表的信
息进行性比对,如果,发现报文中的信息与会话表中的信息相匹配,并且, 符合协议规
范对后续报文的定义 ,则认为该数据包属于PC,可以允许该数据包通过。
会话表和状态检测
1,会话表 --- 会话表本身也是基于5元组来区分流量,会话表在比对时,会通过计算
HASH来比较五元组。因为HASH定长,所以,可以基于硬件进行处理,提高转发效
率。
因为会话表中的记录只有在流量经过触发时才有意义,所以,如果记录长时间不被触
发,则应该删除掉。即会话表中的记录应该存在 老化时间 。如果会话表中的记录被删除
掉之后,相同五元组的流量再通过防火墙,则应该由其首包重新匹配安全策略,创建会
话表, 如果无法创建会话表,则将丢弃该数据流的数据 。
如果会话表的老化时间过长:会造成系统资源的浪费,同时,有可能导致新的会话表项
无法正常建立
如果会话表的老化时间过短:会导致一些需要长时间首发一次的报文连接被系统强行中
断,影响业务的转发。
不同协议的会话表老化时间是不同
2.状态检测主要检测协议逻辑上的后续报文,以及仅允许逻辑上的第一个报文通过后创建
会话表。可以选择开启或者关闭该功能。
数据通过防火墙的流程
九、ASPF
FTP : 文件传输协议
FTP协议是一个典型的C/S架构的协议
Tftp :简单文件传输协议
1.FTP相较于Tftp存在认证动作
2.FTP相较于Tftp拥有一套完整的命令集
FTP工作过程中存在两个进程,一个是控制进程,另一个是数据的传输进程,所以,需要使用 两个端口号20,21 ,并且,FTP还存在两种不同的工作模式 --- 主动模式,被动模式
1.主动模式
2.被动模式
ASPF --- 针对应用层的包过滤 --- 用来抓取多通道协议中协商端口的关键数据包,之后,将端 口算出,将结果记录在sever-map表中,相当于开辟了一条隐形的通道
十、防火墙的nat
静态NAT : 一对一
动态NAT : 多对多
NAPT :一对多的NAPT: easy ip :多对多的NAPT
服务器映射
源NAT --- 基于源IP地址进行转换。我们之前接触过的静态NAT,动态NAT,NAPT都属于源
NAT,都是针对源IP地址进行转换的。源NAT主要目的是为了保证内网用户可以访问公网
目标NAT --- 基于目标IP地址进行转换。我们之前接触过的服务器映射就属于目标NAT。是为
了保证公网用户可以访问内部的服务器
双向NAT --- 同时转换源IP和目标IP地址
十一、VRRP技术
虚拟路由器冗余协议
Initialize --- 在VRRP中,如果一个接口出现故障之后,则这个接口将进入到该过渡状态
分区 20240121防御保护寒假班 的第 9 页
VRRP备份组之间是相互独立的,当一台设备上出现多个VRRP组时,他们之间的状态无法
同步。
VGMP ---- VRRP Group Management Protocol
华为私有协议 --- 这个协议就是将一台设备上的多个VRRP组看成一个组,之后统一进行
管理,统一切换的协议。以此来保证VRRP组状态的一致性。
接口故障切换场景
在防火墙的双机热备中,我们不论时VRRP组还是VGMP组,主备的叫法发生了变化,主
统一被称为Active,备被称为Standby
1,假设主设备的下联口发生故障,则这个接口的vrrp状态将由原来的Active状态切换为
initialize状态。(这种情况下,按照VRRP自己的机制,主设备将无法发送周期保活报文,
则备设备在超过超时时间后将切换为主的状态。但是,因为这里启用VGMP在,则VRRP
切换状态将由VGMP接管,VRRP的机制名存实亡。)
2,VGMP组发现VRRP组出现变化,将降低自身的优先级。(说明,在VGMP组中,也
存在优先级的概念。一开始,每台设备中都会存在两个VGMP组,一个叫做Active组,
另一个叫做Standby组。Active组初始的默认优先级为65001,Standby组初始的默认
优先级为65000(不同版本的防火墙,这个优先级的定义不同)。一开始,我们FW1将
两个VRRP组都拉入VGMP_ACTIVE组中,因为ACTIVE组的状态时active,所以,里面
两个vrrp组的状态也是active(VGMP组的状态决定了VRRP组的状态),FW2同理。当
一个VRRP组的状态变为initialize,则VGMP则的优先级-2。)之后,原主设备会发送一
个VGMP请求报文给对端,里面包含了自己当前变化后的优先级。
3,当原备设备接收到请求报文后,看到里面的优先级时64999,而低于自身的65000, 则会将自己的VGMP_STANDBY组的状态由原来的standby切换为active。同时,发送一个同意请求报文给原主设备。
4,原主设备接收到对方的应答报文之后,将会把自身VGMP_ACTIVE组的状态由原来的
ACTIVE切换为STANDBY。
5,在原备设备发送应答报文的同时,因为其VGMP组的状态切换,所以,其内部的
VRRP组状态也将由原来的standby转换为avtive。原主设备在接受到对方的应答报文之
后,因为将其VGMP组状态切换,所以,同时将其内部的VRRP组状态由原来的active状
态切换为standby状态(注意,故障接口依旧保持init的状态。)
6,原备设备会通过接口向上下联链路发送免费ARP报文,切换交换机的MAC地址表。
流量将被切换到原被设备上。
HRP --- Huawei Redundancy Protocol --- 华为冗余协议
这是一款华为的私有协议 --- 备份配置信息和状态信息。
HRP备份有一个前提,就是两台设备之间必须专门连一根用于备份的线路,这跟线路我
们称为心跳线(广义上,任何两台设备之间的链路都可以叫做心跳线)
心跳线的接口必须是一个三层接口,需要配置对应的IP地址。这条备份数据的链路不受
路由策略限制(直连场景。非直连场景依然需要配置安全策略。)
HRP协议本身算是VGMP协议的一部分
HRP的心跳线也会传递心跳报文,用于检测对端是否处于工作状态。这个周期时间默认
1s,逻辑和vrrp一样,只有主设备会周期发送,备设备仅监听即可,如果在三个周期
内,都没有收到HRP的心跳报文,则将认定原主设备故障,则将进行失效判断,认定自
身为主。
VGMP的报文也是通过这条心跳线发送的。
配置信息 --- 策略,对象,网络里面的一些配置都属于配置信息。(接口IP地址,路由
之类的不同步,因为这些是需要在双机组建之前配置的)
第一种备份方式 :自动备份
默认开启自动备份,可以实时备份配置信息。但是,自动备份不能立即同步状态信息。
一般是在主设备上状态生成后一段时间(10s左右)同步到备设备上。
Hrp standby config enable --- 这个命令可以让备设备上的配置同步到主设备上。
第二种备份方式 :手工备份
由管理员手工触发,可以立即同步配置信息以及状态信息。
第三种备份方式 :快速备份
该模式仅使用在 负载分担 的工作方式下。
因为负载分担的场景下,两台设备都需要处于工作状态,为了避免因为状态信息同步不
及时,导致业务流量中断,所以,该场景下,默认开启快速备份。
快速备份可以实时同步状态信息。但是,该方式不同步配置信息。