学习日志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,直接配置子接口。
相关推荐
今天只学一颗糖16 小时前
1、《深入理解计算机系统》--计算机系统介绍
linux·笔记·学习·系统架构
testpassportcn16 小时前
AWS DOP-C02 認證完整解析|AWS DevOps Engineer Professional 考試
网络·学习·改行学it
游乐码19 小时前
c#变长关键字和参数默认值
学习·c#
饭碗、碗碗香20 小时前
【Python学习笔记】:Python的hashlib算法简明指南:选型、场景与示例
笔记·python·学习
魔力军21 小时前
Rust学习Day4: 所有权、引用和切片介绍
开发语言·学习·rust
wubba lubba dub dub75021 小时前
第三十六周 学习周报
学习
学编程的闹钟1 天前
PHP字符串表示方式全解析
学习
Lbs_gemini06031 天前
01-01-01 C++编程知识 C++入门 工具安装
c语言·开发语言·c++·学习·算法
饭碗、碗碗香1 天前
【Python学习笔记】:Python 加密算法全景指南:原理、对比与工程化选型
笔记·python·学习
麟听科技1 天前
HarmonyOS 6.0+ APP智能种植监测系统开发实战:农业传感器联动与AI种植指导落地
人工智能·分布式·学习·华为·harmonyos