ACL访问控制列表入门
导语:网络通了不代表该通——ACL 就是企业网里的"门禁名单",本文带你从零搞懂它怎么写、怎么生效。
一、为什么要关注(背景与痛点)
某园区把服务器区和办公区划开了网段,但没做任何访问控制,结果任何办公电脑都能直连数据库端口;访客 Wi-Fi 居然能扫到内部存储管理地址。划分网段只是"隔开房间",ACL 才是"锁上门、发门禁卡"。没有 ACL,隔离形同虚设。
二、核心原理 / 关键概念
ACL(访问控制列表)是一组按序匹配的规则,每条规则定义"匹配什么条件、允许还是拒绝"。路由器/交换机/防火墙逐条比对,命中即执行动作,未命中走默认(多数设备默认放行或拒绝,需看清)。
要点:
- 基本 ACL(标准):只匹配源 IP,编号一般 2000–2999(华为)/ 1–99(思科),适合粗粒度管控。
- 高级 ACL(扩展):可匹配源/目的 IP、协议、源/目的端口,编号 3000–3999(华为)/ 100–199(思科),适合精准管控。
- 通配符掩码(反掩码):0 表示精确匹配,1 表示忽略;
0.0.0.255对应 /24 网段。思科用通配符,华为高级 ACL 用正常掩码。 - 生效位置(traffic-filter / ip access-group):应用在接口入向或出向,方向决定规则写在哪台设备的哪个口。
三、落地做法 / 操作步骤
场景:仅允许备份服务器 10.0.20.10 访问存储区 10.0.30.0/24,其余一律拒绝。
配置通用思路(各厂商命令语法略有差异):
- 华为(高级 ACL + 流策略/接口调用):
acl 3000 rule 5 permit ip source 10.0.20.10 0 destination 10.0.30.0 0.0.0.255 rule 10 deny ip destination 10.0.30.0 0.0.0.255 interface Vlanif30 traffic-filter inbound acl 3000 - 新华三(H3C):
acl advanced 3000写法类似,接口用packet-filter 3000 inbound。 - 思科:
access-list 100 permit ip host 10.0.20.10 10.0.30.0 0.0.0.255+ip access-group 100 in。 - 锐捷/迈普/信创国产:概念一致,关键字(access-group / packet-filter)与编号段略有差异。
落地步骤:先列"谁该访问谁"的清单 → 写 permit 明细 → 末尾补 deny 兜底 → 在正确的接口方向调用 → 用 ping/telnet 源地址验证。
四、网络如何为数据存储/备份提供安全底座
ACL 是存储安全底座最直接的"守门员":把存储管理口、备份区的访问来源收敛到少数几台授权服务器,等于在逻辑上把保险柜只向指定人开放;远程分支要通过 VPN 回传备份时,可在 VPN 网关上用 ACL 限制其只能访问存储网段、不能访问办公网;对外发布服务(如信创云盘)放在 DMZ 后,再用 ACL 限制其只能回连后端存储的特定端口。层层 ACL 叠加,勒索软件横向移动的成本被显著抬高。
五、常见误区 / 避坑提醒
- 忘记默认动作:以为写了 permit 就安全,结果设备默认放行,deny 没补上。
- 规则顺序错:ACL 是"首次匹配即停",把 deny 放最前面会把所有流量都拦掉。
- 方向搞反:inbound/outbound 选错,规则写了却不生效。
- 通配符算错:把反掩码当子网掩码用,匹配范围跑偏。
六、小结与行动建议
ACL 不难,难在"先想清楚策略再下笔"。建议为存储区、服务器区、访客区各写一份访问控制清单,遵循"最小授权"原则:只放行必须的源和端口,其余默认拒绝。上线前在测试环境验证,上线后保留配置备份,变更走审批。
——企业数据管家 · 诚鑫致达科技