学习日志26-ACL基本概念和工作原理,基础配置和应用

  • Access Control List。访问控制列表。与网络安全和网络服务质量QoS(Quality of Service)问题紧密相关。
  • 本质:
    • 由若干条允许permit或拒绝deny语句组成的、有序规则的列表。每条语句是ACL的一条规则,每条语句中的permit或deny就是与则条规则相对应的处理动作。
    • 是一个匹配工具,能够对路由信息和报文进行匹配和区分。
    • 只是一份名单,不能具体操作,需要其他技术调用执行。
  • 作用:通过对网络中报文流的精确识别(流量或路由),与其他技术结合,达到控制网络访问行为、防止网络攻击和提高网络带宽利用率的目的,从而切实保障网络环境的安全性和网络服务质量的可靠性。
  • 应用:
    • 允许permit或拒绝deny特定流量;匹配IP流量(过滤流量);
    • 在Traffic-filter(流过滤)中被调用=ACL+允许/拒绝
    • 在NAT(Network Address Translation)中被调用;
    • 在路由策略中、防火墙的策略部署中、QoS中被调用。
  • 简单比喻:像是公司的门禁系统。(小区的保安室)
  • 一条ACL规则包含:
    • 规则编号 rule-id:可选,默认步长为5。
      • 一条ACL中的每一条规则都有一个相应的编号;匹配顺序按照规则编号从小到大匹配,规则最小的最先被匹配。
      • 步长Step:系统自动为ACL规则分配编号时,每个相邻规则编号之间的差值,缺省值为5. 步长的作用是为了方便后续在旧规则之间,插入新规则。
      • 分配规则:步长为=5,系统分配首条规则编号是5;为后续规则分配编号时,使用大于当前ACL内最大规则编号且时步长整数倍的最小整数作为规则编号。
    • 动作 action:permit或deny
    • 匹配条件(五元组中的一项也可):源IP/掩码;目的IP/掩码;协议:ip、tcp、udp、icmp等;源端口;目的端口;其他:dscp、precedence等
    • 生效时间(可选) rule 4294967294 deny --> 流量全部被拒绝 0.0.0.0 = 精确匹配;255.255.255.255 = 任意匹配 精确匹配192.168.1.1这个IP地址:192.168.1.1 0.0.0.0 = 192.168.1.1 0 匹配所有IP地址:0.0.0.0 255.255.255.255 = any
  • 匹配位置:入方向inbound;出方向outbound inbound 流经路径:[外部] -> 接口 -> ACL检查 -> 路由器处理。影响访问路由器自身的流量,接口收到时就过滤,节省资源。 outbound 流经路径:路由器处理-> ACL检查 -> 接口-> [外部]。不影响路由器自身流量,先路由再过滤,可能浪费资源。
  • 分类与标识:
    • 基于ACL标识方法的分类:
      • 数字型ACL:传统的ACL标识方法,创建ACL时,指定一个唯一的数字标识该ACL。
      • 命名型ACL:通过名称代替编号来标识ACL。
    • 分类

配置练习:

需求1:配置基本ACL,实现Client 1能访问server1,Client 2不能访问server 1:(匹配流量的时候,比较粗糙,流量匹配的不够精细,只能匹配源IP)

  • 客户端,服务器的IP,网关配置,每个接口的IP配置,交换机每个接口都要创建逻辑接口后再配IP
  • 交换机:
    • 创建vlan
    • 把交换机的接口划分到对应的vlan里:
    • 配置接口IP地址,交换机的接口属于二层口,不能配IP,需要创建逻辑接口(三层接口):
    • g3接口需要创建逻辑接口(三层接口):
  • 配置AR1的接口g0接口的IP,此时 LSW1和AR1之间形成直连链路,可以通信(同一个网段,同一个广播域)。
    • 如果把交换机的vlanif 1移除,重新创建vlan 2,然后创建虚拟接口并配IP,此时和直连路由器无法ping通。路由器属于vlan1的广播域,交换机属于vlan 2这个广播域,不属于同一个广播域了。(交换机的所有端口默认都属于 vlan 1)
    • 修改g0/0/3接口的PVID,使得g3接口划到vlan 2 的广播域,为什么不用trunk类型,trunk接口给通过的流量打上vlan标签,但是路由器的三层物理接口不识别标签,打标签的流量会被丢掉,需要把标签剥掉,使用access类型。
    • 交换机的三个接口都加入到ospf中:(AR1和AR2同样的操作,两个接口都加入到ospf的Area 0 中)
  • 测试:client1和client2和服务器都能ping通
  • 实现需求,在LSW1配置ACL,允许或拒绝某个流量,只需要交给LSW1处理流量,节省资源
    • 基本ACL:
    • 允许10.0.10.0这个网段,拒绝10.0.20.0这个网段
    • 此时acl规则还未有效,只是列好了名单,需要调用: 流量过滤,在交换机的g3接口过滤(出接口),尽量不在直连pc的接口过滤。
    • 删除第一条规则,client1还能访问服务器:
      • 先删g3接口的这条配置,因为已经调用了rule,所以不删掉这个,配置的规则删不掉:
      • 然后再进入到acl 2000中: 第一条规则写不写都可以,acl 2000做流量过滤的时候默认允许所有流量通过(华为,traffic-filter)

需求2:高级ACL,匹配五元组源目IP,协议,源目端口-client 1只能够访问server 1的http 服务,client 2只能够访问server 1的ftp服务

  • 打开server1的http服务和和htp服务;
  • 需求1中的配置没有删除的情况下,client 1可以访问server 1的所有服务;client 2不能访问server 1的所有服务。
  • 在模拟器上,在AR1上配置高级ACL,默认允许,需要访问的就不用写了,五元组信息: 源IP-10.0.10.0/24; 目的IP: 10.0.30.1;协议:ftp;源端口:随机生成;目的端口:21(ftp的端口号) vlan 10访问server 1的ftp流量匹配并拒绝放行: 协议-TCP(ftp是基于TCP协议工作,控制ftp,实际是在控制tcp流量),源IP网络段,目IP,通配符,目的端口号。
  • vlan 20 访问server 1的http流量匹配并拒绝放行:

出错的地方:

  • 路由器查看路由表,不使用brief命令:
  • 配置高级ACL,要先把基本ACL配置删掉

混淆的点:

  • "二层"和"三层"指的是设备接口的"工作模式",而不是设备本身的绝对属性。路由器接口默认是三层路由接口,可以配IP;交换机接口默认是二层交换口,不能配IP.
  • display port vlan是交换机的专用命令,用于查看端口与vlan的绑定关系,在路由器上没有这个命令。路由器的设计:每个vlan对应一个逻辑子接口;收到带vlan标签的帧后,剥掉标签进行三层处理。路由器上通常不需要创建vlan,直接配置子接口。
相关推荐
西岸行者7 天前
学习笔记:SKILLS 能帮助更好的vibe coding
笔记·学习
悠哉悠哉愿意7 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
别催小唐敲代码7 天前
嵌入式学习路线
学习
毛小茛7 天前
计算机系统概论——校验码
学习
babe小鑫7 天前
大专经济信息管理专业学习数据分析的必要性
学习·数据挖掘·数据分析
winfreedoms7 天前
ROS2知识大白话
笔记·学习·ros2
在这habit之下7 天前
Linux Virtual Server(LVS)学习总结
linux·学习·lvs
我想我不够好。7 天前
2026.2.25监控学习
学习
im_AMBER7 天前
Leetcode 127 删除有序数组中的重复项 | 删除有序数组中的重复项 II
数据结构·学习·算法·leetcode
CodeJourney_J7 天前
从“Hello World“ 开始 C++
c语言·c++·学习