模块介绍
防火墙是部署在不同安全等级网络之间(如企业内网与互联网)的访问控制设备,也是企业纵深防御体系的第一道防线。它通过预设的安全策略,控制进出网络的流量,实现 “允许合法流量通过,阻断非法流量” 的核心目标,同时可隐藏内部网络结构、记录访问日志,是保障企业网络边界安全的核心组件。
本模块将从防火墙的基础分类、工作原理,到访问控制列表(ACL)、NAT 技术、下一代防火墙功能,带你系统掌握防火墙与访问控制技术的核心逻辑与落地实践。
一、防火墙基础概念与分类
1. 防火墙的核心作用
- 网络隔离:划分不同安全等级的网络区域(内网、外网、DMZ),限制跨区域访问。
- 流量控制:基于预设规则过滤进出流量,仅允许授权流量通过。
- 安全审计:记录所有访问日志,为安全事件溯源提供依据。
- 地址隐藏:通过 NAT 技术将私网 IP 转换为公网 IP,隐藏内部网络结构。
2. 防火墙按工作层级分类
表格
| 类型 | 工作层级 | 核心原理 | 特点 | 适用场景 |
|---|---|---|---|---|
| 包过滤防火墙 | 网络层 / 传输层 | 基于五元组(源 IP、目的 IP、源端口、目的端口、协议)过滤流量 | 速度快、开销小;无状态,易被 IP 欺骗绕过 | 早期边界防护、对性能要求高的场景 |
| 状态检测防火墙 | 传输层 | 维护 TCP 会话状态表,跟踪连接状态(SYN/ACK/FIN) | 仅允许响应内网发起的连接的流量通过,安全性高于包过滤 | 企业边界防护,当前传统防火墙的主流技术 |
| 应用层网关防火墙 | 应用层 | 代理客户端与服务器的连接,检查应用层数据 | 可过滤应用层攻击(如 SQL 注入),安全性高;速度慢、开销大 | 对应用层安全要求高的场景,如金融机构 |
3. 防火墙按技术架构分类
表格
| 类型 | 核心特性 | 典型功能 |
|---|---|---|
| 传统防火墙 | 基于五元组过滤,仅支持网络层 / 传输层控制 | ACL 访问控制、基础 NAT、简单 VPN |
| 下一代防火墙(NGFW) | 应用层识别、用户感知、一体化威胁防护 | 应用控制、用户认证、URL 过滤、入侵防御(IPS)、防病毒 |
二、防火墙核心工作原理
1. 包过滤防火墙工作流程
- 接收流量,提取 IP 头和传输层头信息(源 IP、目的 IP、协议、端口)。
- 按顺序匹配预设的 ACL 规则,找到第一条匹配的规则。
- 执行规则动作:允许(Permit)或拒绝(Deny)流量。
- 所有规则匹配完成后,隐含一条默认拒绝所有流量的规则。
2. 状态检测防火墙工作流程
- 内网主机发起连接请求,防火墙收到 SYN 报文,创建会话表项。
- 服务器返回 SYN+ACK 报文,防火墙校验会话表,确认是响应已建立的连接,允许通过。
- 客户端回复 ACK 报文,连接建立,后续数据流量通过会话表快速转发。
- 连接关闭后(收到 FIN/ACK 报文),防火墙删除会话表项。
- 外网主动发起的连接请求,因无匹配的会话表项,直接被拒绝。
3. 应用层网关(代理防火墙)工作流程
- 客户端请求连接服务器,首先与防火墙建立连接。
- 防火墙解析客户端请求,检查应用层数据(如 HTTP 请求头、URL)。
- 若请求合法,防火墙再与服务器建立连接,转发客户端请求。
- 服务器响应返回后,防火墙同样解析响应数据,再转发给客户端。
三、访问控制技术:ACL 访问控制列表
1. ACL 基础定义
ACL(Access Control List)是路由器 / 防火墙上的规则列表,用于过滤进出接口的流量,实现精细化的访问控制,是防火墙策略的基础。
2. ACL 分类与特点
表格
| 类型 | 过滤依据 | 编号范围 | 适用场景 |
|---|---|---|---|
| 标准 ACL | 仅源 IP 地址 | 1-99(标准)、1300-1999(扩展) | 限制特定网段的访问,需靠近目的端配置 |
| 扩展 ACL | 源 IP、目的 IP、源端口、目的端口、协议 | 100-199(标准)、2000-2699(扩展) | 精细化控制流量,可过滤特定应用,需靠近源端配置 |
3. ACL 配置原则
- 顺序匹配:规则按配置顺序依次匹配,匹配到即执行动作,不再向下匹配。
- 隐含拒绝:所有 ACL 末尾都隐含一条
deny any any规则,未匹配的流量将被拒绝。 - 就近原则:扩展 ACL 靠近源端配置,减少无效流量转发;标准 ACL 靠近目的端配置,避免误拦截。
4. 配置示例(Cisco 设备)
标准 ACL 配置
bash
运行
# 创建标准ACL,允许192.168.1.0/24网段访问,拒绝其他网段
Router(config)# access-list 1 permit 192.168.1.0 0.0.0.255
# 将ACL应用到接口的出方向(靠近目的端)
Router(config-if)# ip access-group 1 out
扩展 ACL 配置
bash
运行
# 创建扩展ACL,允许192.168.1.0/24访问外网HTTP服务,拒绝外网主动访问内网
Router(config)# access-list 100 permit tcp 192.168.1.0 0.0.0.255 any eq 80
Router(config)# access-list 100 deny ip any any
# 将ACL应用到接口的入方向(靠近源端)
Router(config-if)# ip access-group 100 in
四、NAT 技术(网络地址转换)
NAT(Network Address Translation)是将私网 IP 地址转换为公网 IP 地址的技术,可实现多个私网主机共享公网 IP 访问互联网,同时隐藏内部网络结构,是防火墙的核心功能之一。
1. NAT 分类与特点
表格
| 类型 | 映射方式 | 适用场景 |
|---|---|---|
| 静态 NAT | 私网 IP 与公网 IP 一对一映射 | 内网服务器对外提供服务(如 Web、邮件) |
| 动态 NAT | 私网 IP 从公网地址池动态分配 IP,多对多映射 | 企业内网主机访问互联网,IP 地址池充足场景 |
| NAPT(PAT) | 多个私网 IP 映射到同一个公网 IP 的不同端口,多对一映射 | 家庭 / 中小企业共享公网 IP 访问互联网,是当前主流方式 |
2. NAPT 工作流程
- 内网主机(192.168.1.10:1025)访问外网服务器,防火墙收到请求。
- 防火墙从公网 IP 地址池中选择一个 IP(202.100.10.10),分配一个临时端口(20001),建立 NAT 会话表。
- 防火墙将请求报文的源 IP / 端口转换为 202.100.10.10:20001,转发给外网服务器。
- 服务器响应报文返回时,防火墙根据 NAT 会话表,将目的 IP / 端口转换回 192.168.1.10:1025,转发给内网主机。
3. 配置示例(Cisco 路由器 NAPT)
bash
运行
# 定义内网接口
Router(config)# interface GigabitEthernet 0/0
Router(config-if)# ip address 192.168.1.1 255.255.255.0
Router(config-if)# ip nat inside # 标记为NAT内部接口
# 定义外网接口
Router(config)# interface GigabitEthernet 0/1
Router(config-if)# ip address 202.100.10.10 255.255.255.0
Router(config-if)# ip nat outside # 标记为NAT外部接口
# 定义需要转换的私网网段
Router(config)# access-list 1 permit 192.168.1.0 0.0.0.255
# 配置NAPT,将私网网段转换为外网接口IP的不同端口
Router(config)# ip nat inside source list 1 interface GigabitEthernet 0/1 overload
五、下一代防火墙(NGFW)核心功能
NGFW(Next-Generation Firewall)在传统防火墙基础上,增加了应用层识别、用户感知和一体化威胁防护功能,是当前企业边界防护的主流方案。
1. 核心特性
- 应用层识别与控制:可识别 HTTP、FTP、微信、QQ、视频会议等上百种应用,基于应用而非端口过滤流量。
- 用户感知:结合 AAA 认证,基于用户 / 用户组配置访问控制策略,实现精细化权限管理。
- 一体化威胁防护:集成入侵防御(IPS)、防病毒、URL 过滤、反垃圾邮件功能,无需额外部署设备。
- 深度包检测(DPI):解析应用层数据,识别 SQL 注入、XSS、恶意代码等应用层攻击。
2. 典型功能场景
- 应用控制:限制员工上班时间访问视频、游戏网站,保障办公带宽。
- URL 过滤:阻止用户访问恶意网站、钓鱼网站,防范网络威胁。
- 入侵防御:阻断针对 Web 服务器的 SQL 注入、暴力破解等攻击。
- 用户认证:通过账号密码、短信认证访问互联网,记录用户访问行为。
六、配置实践(以 Cisco ASA 防火墙为例)
1. 基础配置(接口与安全级别)
bash
运行
# 配置内网接口(安全级别100,最高)
ASA(config)# interface GigabitEthernet 0/0
ASA(config-if)# nameif inside
ASA(config-if)# ip address 192.168.1.1 255.255.255.0
ASA(config-if)# security-level 100
# 配置外网接口(安全级别0,最低)
ASA(config)# interface GigabitEthernet 0/1
ASA(config-if)# nameif outside
ASA(config-if)# ip address 202.100.10.10 255.255.255.0
ASA(config-if)# security-level 0
# 配置默认路由,指向外网网关
ASA(config)# route outside 0.0.0.0 0.0.0.0 202.100.10.1
2. 访问控制策略配置
bash
运行
# 创建扩展ACL,允许内网访问外网HTTP/HTTPS服务
ASA(config)# access-list IN-TO-OUT permit tcp 192.168.1.0 255.255.255.0 any eq 80
ASA(config)# access-list IN-TO-OUT permit tcp 192.168.1.0 255.255.255.0 any eq 443
# 应用ACL到内网接口的入方向
ASA(config)# access-group IN-TO-OUT in interface inside
3. 静态 NAT 配置(内网服务器对外提供服务)
bash
运行
# 配置静态NAT,将内网Web服务器映射为公网IP
ASA(config)# object network WEB-SERVER
ASA(config-network-object)# host 192.168.1.10
ASA(config-network-object)# nat (inside,outside) static 202.100.10.20
七、常见问题与故障排查
1. 内网主机无法访问互联网
排查步骤
- 接口状态检查:确认 inside/outside 接口已开启,IP 地址配置正确,安全级别设置合理(内网 > 外网)。
- NAT 配置检查:确认私网网段已被 NAT 转换规则覆盖,外网接口标记为
ip nat outside。 - 路由检查:确认防火墙配置了到公网的默认路由,下一跳指向运营商网关。
- ACL 策略检查:确认内网访问外网的流量未被 ACL 规则拒绝,默认策略允许内网访问外网。
2. 外网用户无法访问内网服务器
排查步骤
- 静态 NAT 检查:确认服务器私网 IP 与公网 IP 的映射配置正确,
nat (inside,outside) static配置无误。 - ACL 策略检查:创建允许外网访问服务器公网 IP 对应端口的 ACL 规则,并应用到外网接口入方向。
- 服务器本地防火墙检查:确认服务器的本地防火墙已开放对应端口,未拦截外网访问。
- 回包路由检查:确认服务器的默认网关指向防火墙内网接口,回包流量经过防火墙。
3. TCP 连接频繁被阻断
排查步骤
- 会话表检查:查看防火墙会话表,确认连接是否已建立,是否因超时被防火墙清除。
- 状态检测配置检查:确认状态检测功能已开启,响应流量能匹配会话表,不被误拦截。
- TCP 参数检查:检查防火墙的 TCP 会话超时时间配置,长时间无流量的连接可能被自动断开。
八、模块总结与学习指引
防火墙与访问控制技术是企业网络边界防护的核心,本模块我们掌握了:
- 防火墙的分类与工作原理,理解包过滤、状态检测、应用层网关的差异。
- ACL 访问控制列表的配置原则与应用,实现精细化流量过滤。
- NAT 技术的三种类型与工作流程,掌握企业内网共享公网 IP 的配置方法。
- 下一代防火墙(NGFW)的核心功能,理解应用层识别与一体化防护的优势。
- Cisco ASA 防火墙的基础配置与常见故障排查方法。
学习建议:在 EVE-NG/GNS3 模拟器中搭建防火墙拓扑,实践 ACL、NAT 和访问控制策略的配置;同时可结合抓包工具分析 NAT 转换和会话表建立的过程,加深对防火墙工作原理的理解。
No responses yet