1、基础知识
1、基础知识
一、什么是防火墙
转发:路由器、交换机的本质
控制:防火墙的本质
all in one:防火墙与路由器的形态相似,功能相近;有合一趋势
二、防火墙的发展历史
最早的防火墙可以追溯到20世纪80年代末期,可分为如下3个时期
1、第一时期
第一代防火墙:包过滤防火墙,能实现简单的访问控制
第二代防火墙:代理防火墙,在应用层代理内部和外部网络之间的通信
安全性较高,但处理速度慢;每一种应用都要开发一个对应的代理服务,因此只能对少量应用进行代理
第三代防火墙:基于状态检测技术的防火墙;通过动态分析报文的状态来决定对报文采取的动作,不需要对每个应用都进行代理,处理速度快而且安全性高
2、第二时期
状态检测防火墙成为趋势,并增加了部分功能,如VPN
WAF(Web Application Firewall, Web应用防护墙)
2004年提出了UTM(United Threat Management,统一威胁管理)的概念,将传统防火墙、入侵检测、防病毒、URL过滤、应用程序控制、邮件过滤等功能融合到一台防火墙上,实现全面的安全防护。
3、第三时期
DPI(Deep Packet Inspection,深度报文检测)技术得到广泛应用
下一代防火墙(Next-Generation Firewall),解决了多个功能同时运行时性能下降的问题;同时,下一代防火墙还可以基于用户、应用和内容来进行管控。
Gratner公司2009年对下一代防护墙进行了定义,明确下一代防火墙应具备的功能特性。
三、华为防火墙产品一览
四大系列:USG2000、USG5000、USG6000、USG9000
UTM:USG2000、USG5000
下一代防火墙:USG6000
高端防火墙:USG9000
四、安全区域
1、接口、网络和安全区域的关系
安全区域(Security Zone)简称为区域(Zone),是一个或多个接口的集合。
防火墙通过安全区域来划分网络、标识报文流动的“路线”。
一般来说,当报文在不同的安全区域之间流动时才受到到控制;也可以通过策略来实现报文在同一个区域内流动受到控制。
一个接口只能加入到一个安全区域中。
单臂路由的物理接口不能添加到安全域中,子接口需要添加到安全域中。
Trust:受信任程度高的网络,通常用来定义内部网络
DMZ:受信任程度中等,通常用来定义内部服务器所在的网络
Untrust:不受信任的网络,通常用来定义Internet等不安全的网络。
Local:代表防火墙自身;凡是由防火墙主动发出的报文都认为是重Local区域中发出,凡是需要防火墙响应并处理(而不是转发)的报文都认为是由Local区域接收。
Local区域不能添加任何接口,但防火墙上所有接口都隐含属于Local区域。
2、报文在安全区域之间流动的方向
安全级别:唯一的,用数字1--100来表示;数字越大,代表网络越可信
Local:100
Trust:85
DMZ:50
Untrust:5
Inbound:报文从低级别的安全区域向高级别的安全区域流动时为入方向。
Outbound:报文从高级别的安全区域向低级别的安全区域流动时为出方向。
3、安全区域的配置
新创建的安全域没有安全级别
同一安全级别只能有一个安全域
加入安全域的接口可以是二层模式,也可以是三层模式
firewall zone name test // 创建安全域并给安全域命名
set priority 10 // 设置安全与的级别
add interface gigabitethernet 0/0/1 // 向安全域中添加端口
五、状态检测和会话机制
1、状态检测
当报文到达防火墙后,防火墙允许报文通过,同时会根据报文中的信息(如源目IP地址端口号等)建立会话,返回时的报文根据建立的会话信息进行转发,不用在防火墙上创建允许返回流量的规则进行匹配。
状态检测防火墙使用基于状态的检测机制,将通信双方之间交互的属于同一连接的所有报文都作为整体的数据流来对待。
为数据流内的第一个报文撞见会话后,数据流内的后续报文就会直接匹配会话进行转发,不需要在进行规则的检查,提高了转发效率。
2、会话
通信双方建立的连接在防火墙上的具体体现,作为两者的连接状态,一条会话就表示通信双方的一个连接。多条会话的集合就叫做会话表(Session Table)
会话表象内容:
应用层协议--源IP地址--源端口--目的IP地址--目的端口(五元组)
当报文中没有端口信息时,防火墙会把报文中的ID字段作为会话的源端口进行添加,
3、组网验证
display firewall session Table
六、状态检测和会话机制补遗
1、再谈会话
1.1、查看会话表象的详细信息
display firewall session table verbose
1.2、会话的老化时间
不同协议所对应的会话时间可能不相同
调整会话协议的默认时间:
firewall session aging-time dns 10 // 将DNS协议的会话时间修改为10S
长连接:通过ACL规则来识别报文,匹配规则的特定报文的会话时间会被延长(默认:168 h),也可以手动修改。
配置:
acl 3000
rule permit tcp source 192.168.1.1 0 destination 172.16.1.1 0 desination-port eq sqlnet
quit
firewall interzone trust untrust
long-link 3000 outbound
2、状态检测与会话创建
display firewall statistic system discard // 查看防火墙爱国丢包情况
undo firewall session link-state check // 关闭状态检测功能
开启状态检测功能:
当业务流量的来回路径不一致时,有请求/应答(ICMP)或握手协议建立(TCP)的业务会因防火墙收到的第一个报文非协议会话中预期内的第一个报文而丢弃。
关闭状态检测功能:
当业务流量的来回路径不一致时,防火墙会根据业务流量的第一个报文创建会话并转发,不会检测收到的第一个报文是否为协议预期内的第一个报文。
七、配置注意事项和故障排除指导
1、安全区域
创建安全区域和名称---设置全局没有的安全级别--将接口加入安全域
当出现异常时,可以通过查看丢包信息来定位故障
display firewall statistic system discard
2、装填检测和会话机制
display firewall session table 查看防火墙上是否创建了对应的会话表项
2.1、未创建会话表项的原因:
1、报文未到达防火墙
2、报文到达防火墙后被丢弃
3、防火墙因为缺少ARP而丢包
4、防火墙上缺少路由信息而丢包
5、防火墙未收到协议预期内的第一个报文而丢包
6、防火墙上会话数量到达阈值,创建会话失败而丢包