访问控制列表(ACL,Access Control List)是一种基于包过滤的安全技术,用于在网络设备上定义规则,决定哪些数据包可以通过、哪些需要被拒绝。它广泛应用于路由器、交换机、防火墙等设备,实现流量控制和安全隔离。

1. 基本概念

  • 定义:ACL 是由一组规则组成的集合,每条规则描述报文匹配条件(如源/目的 IP、端口号、协议类型)。设备根据这些规则对流量进行过滤。
  • 作用:通过 ACL 可以控制用户对网络资源的访问,防止非法访问,提升网络安全性和服务质量。
  • 本质:ACL 就像一个“报文过滤器”,规则是过滤器的滤芯,决定哪些流量被允许或阻止。

2. ACL 的分类

  • 标准 ACL

    • 仅基于源 IP 地址进行过滤。
    • 常用于简单的访问控制。
    • 编号范围:2000–2999。
  • 扩展 ACL

    • 可基于源/目的 IP、协议类型、端口号进行更精细的过滤。
    • 编号范围:3000–3999。
  • 二层 ACL

    • 基于 MAC 地址、VLAN 等二层信息进行过滤。
    • 编号范围:4000–4999。

3. 工作原理

  • 方向选择

    • Inbound(入方向):流量进入接口时过滤,节省设备资源。
    • Outbound(出方向):流量离开接口时过滤,更灵活。
  • 匹配顺序

    • ACL 按规则编号顺序匹配,从上到下。
    • 一旦匹配成功,不再继续匹配后续规则。
  • 隐式规则

    • 默认存在隐式 deny any,即未匹配的流量会被拒绝

4. ACL 应用场景与接口类型

  • 路由器接口

    • 物理接口:WAN 入方向阻止非法外部访问;LAN 出方向限制内部访问外部资源。
    • 逻辑接口:子接口/VLAN 接口用于部门隔离。
  • 三层交换机接口

    • SVI(VLAN 接口):跨 VLAN 流量控制。
    • 三层物理端口:直接应用 ACL。
  • 防火墙接口

    • 安全区域边界:定义不同安全级别流量规则。
    • DMZ 接口:限制外部访问特定服务。
  • 无线网络接口

    • WLC 虚拟接口:控制无线用户访问有线网络。
  • 虚拟化与云环境

    • vSwitch 端口:限制 VM 间流量。
    • 云平台安全组/ACL:控制虚拟网络接口。
  • 特殊接口

    • VPN/GRE 隧道:控制隧道内协议。
    • Loopback 接口:保护设备管理流量。

5. 配置步骤(H3C为例)

步骤 1:创建 ACL

acl basic 2000
 rule 5 deny source 192.168.1.0 0.0.0.255
 rule 10 permit

acl advanced 3000
 rule 5 deny tcp destination-port eq 80
 rule 10 permit ip

步骤 2:绑定到接口

interface GigabitEthernet1/0/1
 packet-filter 2000 inbound
 packet-filter 3000 outbound

步骤 3:验证

display acl 2000
display packet-filter interface GigabitEthernet1/0/1

6. 典型场景

  • 禁止特定 IP 出网
acl basic 2000
 rule deny source 192.168.1.100 0
 rule permit

interface GigabitEthernet1/0/1
 packet-filter 2000 outbound
  • 限制访问内部服务器
acl advanced 3000
 rule deny tcp destination 10.1.1.10 0 destination-port eq 22
 rule permit ip

interface GigabitEthernet1/0/2
 packet-filter 3000 inbound
  • 跨 VLAN 控制
acl advanced 3000
 rule deny ip source 192.168.10.0 0.0.0.255 destination 192.168.20.100 0
 rule permit ip

interface Vlan-interface 10
 packet-filter 3000 inbound

7. 验证与排查

  • 查看绑定状态:
display packet-filter interface Vlan-interface 10
  • 查看匹配统计:
display packet-filter statistics interface Vlan-interface 10 inbound
  • 常见问题:

    • 未生效:检查绑定方向、规则匹配。
    • 误封锁:确认末尾是否有 permit ip
    • 性能下降:优化规则顺序,减少复杂匹配。

8. 实践清单

  • [ ] 在 ACL 末尾显式添加 permit ip
  • [ ] 使用编号间隔(如 5、10、15)便于后续插入规则。
  • [ ] 高频规则置顶,减少处理延迟。
  • [ ] 入方向优先,节省设备资源。
  • [ ] 出方向用于灵活控制返回流量。
  • [ ] 定期检查 display packet-filter statistics,确认规则命中情况。

9. 跨厂商 ACL/接口绑定对比表

厂商/设备类型 ACL 类型范围 接口绑定命令 方向支持 默认行为 特殊注意事项
H3C 基本 ACL (2000–2999) 高级 ACL (3000–3999) 二层 ACL (4000–4999) packet-filter ACL号> inbound/outbound 支持 inbound/outbound 未匹配流量默认拒绝 (隐式 deny any) 规则按配置顺序匹配,需显式 permit ip 放行;编号需手动规划
华为 (VRP) 基本 ACL (2000–2999) 高级 ACL (3000–3999) 二层 ACL (4000–4999) traffic-filter acl ACL号> inbound/outbound 支持 inbound/outbound 未匹配流量默认拒绝 ACL 可直接应用在接口或安全策略;规则按编号升序匹配
Juniper (Junos) Firewall filter (类似 ACL) 基于 term 定义匹配条件 set interfaces unit 0 family inet filter input/output filter名> 支持 input/output 未匹配流量默认允许 (需显式 deny any) term 顺序严格,最后需加 then acceptthen discard;filter 可复用
FortiGate (FortiOS) Policy (基于源/目的/服务/动作) 无独立 ACL 概念 在策略中定义源接口/目的接口/服务/动作 方向通过策略定义 (src → dst) 未匹配流量默认拒绝 策略优先级按顺序匹配;支持 zone/对象化管理;更偏向防火墙策略模型

差异总结

  • H3C/华为:命令行风格接近,ACL号段相同,接口绑定方式类似(packet-filter vs traffic-filter)。
  • Juniper:采用 firewall filter,逻辑更接近策略集,默认允许,需显式 deny。
  • FortiGate:无传统 ACL,完全基于策略 (policy),方向通过源/目的接口定义,默认拒绝。
Copyright © https://yan-jian.com 2023 all right reserved更新时间: 2025-12-30 11:47:48

results matching ""

    No results matching ""