防火墙基础-工作原理

基础原理:

防火墙安全区域:

安全区域是一个或多个接口的集合,是防护墙区别于路由器的主要特征

防火墙通过安全区域来划分网络、标识报文流动的路线,当报文在不同的的安全区域之间流动时,才会触发安全检查

默认安全区域

Trust区域

网络的受信任程度高

通常用来定义内部用户所在的网络

DMZ区域

网络的受信任程度中等

一般用来定义内部服务器所在的网络

Unturst区域

网络的受信任程度低

通常用来定义Internet等不安全的网络

Local安全区域

防火墙上提供的Local区域,代表防火墙本身

防火墙自己主动发出的报文均可以认为是Local区域中发出的,凡是需要防火墙处理的报文都是由Local区域来接收

该区域不能添加任何接口,但防火墙上所有的业务接口本身都属于Local区域

很多情况下,需要开放对端所在安全区域于Local区域之间的安全策略,比如Telnet、网页登陆、接入SNMP网管等等

受信任程度和优先级

优先级数值范围是1-100

在默认安全区域,受信任程度:Local (100) > Trust(85) > DMZ (50)> Untrust(5)

安全策略

防火墙的基本作用:对进出网络的的访问行为进行控制

在保护特定网络免受不信任域网络的攻击的同时,也要允许两个网络之间可以进行合法的通信,就需要安全策略

安全策略是由匹配条件(流量属性:比如五元组、用户、时间段)和动作(允许或者禁止)组成的控制规则

防火墙收到流量后,对流量的属性进行识别,并将流量的属性与匹配条件进行匹配。所有条件都匹配,则成功匹配安全策略

成功匹配安全策略之后,根据安全策略的动作来判断是否允许放行(更ACL是很相似的)

安全策略的匹配过程

防火墙的基本设计原则:默认禁止没有明确允许的流量,确保防火墙一旦接入就能保护网络的安全

如果想要允许流量通过,可以创建安全策略

对于缺省的安全策略流量控制:

不同区域间的流量:受控制

同一安全区域内的流量:默认不受控制

状态检测和会话机制

状态检测防火墙使用基于连接状态的检测机制

状态检测机制开启状态下,只有首包通过设备才能建立会话表项,后续包直接匹配会话表项进行转发

会话机制

防火墙将属于同一连接的所有报文作为一个整体的数据流(会话)来对待

会话表:记录TCP、UDP、ICMP等协议连接状态的表项

五元组信息

协议,源地址,源端口,目的地址,目的端口

display firewall session table 查看会话表项其他信息

ASPF技术

背景:

在TCP/IP模型中,应用层提供常见的网络应用服务,如Telent HTTP FTP等协议

应用层协议根据占用的端口数量可以分为单通道应用层协议与多通道应用层协议

单通道应用层协议:占用一个端口的协议,比如Telnet-23,HTTP-80

双通道应用层协议:占用两个或两个以上端口的协议,比如FTP被动模式-23和一个随机端口

多通道协议的应用需要先在控制通道中协商后续数据通道的地址和端口,然后根据协商结果建立数据通道连接。由于数据通道的地址和端口是动态协商的,管理员无法预知,因此无法制定完善精确的安全策略。为了保证数据通道的顺利建立,只能放开所有端口,这样显然会给服务器或客户端带来被攻击的风险。因此ASPF出现了

ASPF在多通道应用协议的应用

ASPF是针对应用层的包过滤

1, 检测协商报文的应用层携带的地址和端口信息,生成对应的server-map表

2, 数据包首包经过时,防火墙根据sever-map生成session ,用于放行后续报文

Server-map表与会话表的关系:

server-map表记录了应用层数据中的关键信息,报文命中该表后,不再受到安全策略的控制

会话表时通信双方连接状态的具体体现

server-map表不是当前的连接信息,时防火墙对当前的连接状态分析后得到的即将到来的报文的预测

防火墙接收报文的处理过程:

1, 收到报文先检查是否命中会话表

2, 如果没有命中,就检查是否命中Server-map表

3, 命中server-map表的报文不受安全策略的控制

4, 防火墙为命中的Server-map表的数据创建会话表

以上均为个人笔记,总结于华为技术有限公司学习资料和网络平台资源

如有问题,谢谢指正

相关推荐
AI_零食15 分钟前
鸿蒙PC Electron跨平台应用开发:24时区时间表应用详解
前端·华为·electron·开源·harmonyos·鸿蒙
liulilittle3 小时前
过冲:拥塞控制的呼吸与盲行
linux·网络·c++·tcp/ip·计算机网络·tcp·通信
提子拌饭1334 小时前
爆发效果技术——基于鸿蒙PC Electron框架实现
华为·架构·electron·开源·harmonyos·鸿蒙·鸿蒙系统
坚果派·白晓明4 小时前
鸿蒙PC三方库使用:使用 AtomCode + Skills 自动完成鸿蒙化三方库spdlog集成
c++·华为·ai编程·harmonyos·skills·atomcode·c/c++三方库
再见6585 小时前
【鸿蒙实战】从零开发「随机决策器」——选择困难症终结者
华为·harmonyos
liulilittle5 小时前
拥塞控制:公平性的不可能三角
网络·c++·网络协议·tcp/ip·计算机网络·tcp·通信
子安柠7 小时前
从边缘应用到核心交换:计算机网络架构全景解析
计算机网络·架构
再见6589 小时前
鸿蒙Next实战开发(四):个人中心与系统设置页面开发
华为·harmonyos
坚果派·白晓明10 小时前
[鸿蒙PC三方库移植适配] 使用 AtomCode + Skills 自动完成spdlog鸿蒙化适配
c++·华为·ai编程·harmonyos·skills·atomcode
不爱学英文的码字机器10 小时前
[鸿蒙PC命令行移植适配]移植rust三方库sd到鸿蒙PC的完整实践
华为·rust·harmonyos