業務訪問控制-ACL與包過濾

業務訪問控制-ACL與包過濾

ACL的定義及應用場景

  • ACL(Access Control List,訪問控制列表)是用來實現數據包識別功能的;

  • ACL可以應用于諸多場景:

    • 包過濾功能:對數據包進行放通或過濾操作。
    • NAT(Network Address Translation,網絡地址轉換)
    • 按需撥號
    • Qos流分類ACL:只對數據包進行匹配,或者說對數據包進行流量分類。
    • 路由過濾ACL:對路由進行方向或過濾操作。
    • 路由策略ACL:只對路由進行匹配。

ACL包過濾的工作原理

網絡訪問控制需求

  • 網絡訪問控制需求
    • 要求192.168.1.192 - 255 不能訪問192.168.2.128 - 255.

在這里插入圖片描述

ACL包過濾基本原理

  • ACL包過濾
    • 第一步ACL:每條ACL都由若干條ACL規則條目組成。
      • ACL規則條目:由1個匹配條件和執行動詞(permit或deny)組成。
    • 第二步ACL包過濾:講ACL綁定到設備接口上,進行數據包過濾。
      • 匹配permit規則條目的允許放行。
      • 匹配deny規則條目的拒絕通過。

在這里插入圖片描述

  • 設備接口的入方向和出方向
    • 入方向(in):數據包進入設備的方向。
    • 出方向(out):數據包離開設備的方向。
    • 兩個方向都可以綁定ACL對數據包進行過濾。

在這里插入圖片描述

  • 包過濾ACL綁定:每個接口的每個方向只能綁定1條ACL

在這里插入圖片描述

一條ACL可以包含很多條規則條目,在Cisco設備,隱含規則條目會拒絕所有,即沒有配置任何ACL規則條目的情況下。在華為和華三的設備沒有限制。

思科ACL包過濾基本原理

  • 思科ACL包過濾原理

在這里插入圖片描述

  • 思科IP轉發流程
    • 入處理執行in方向ACL包過濾
    • 出處理執行out方向ACL包過濾

在這里插入圖片描述

入方向處理

在這里插入圖片描述

出方向處理

在這里插入圖片描述

華為/H3C ACL包過濾基本原理

  • 華為華三ACL包過濾基本原理

在這里插入圖片描述

  • 華為華三IP轉發流程
    • 入處理執行in方向ACL包過濾
    • 出處理執行out方向ACL包過濾

在這里插入圖片描述

ACL的分類及應用

ACL規則條目組成——序號/名字+字段匹配

  • 利用數字序號標識訪問控制列表

在這里插入圖片描述

  • 可以給訪問控制列表指定名稱,便于維護

ACL規則條目組成——序號/名字+執行動作+字段匹配

IP數據包字段匹配方法:

  • 數據包中的各個字段
    • 數據包中的各個字段都可以進行匹配
    • 常用匹配五元組:源IP、目標IP、協議、源端口、目標端口

在這里插入圖片描述

  • 數據包中的IP地址字段匹配

    • 匹配字段

      • 匹配源IP
      • 匹配目標IP
      • 同時匹配源IP和目標IP
    • 匹配方法

      • IP地址 通配符
        • 通配符32位,按位通配,位為0表示這位不能變,位為1表示這位可變。
    • 匹配案列1

      • 匹配:192.168.1.1 - 192.168.1.254
      • 答案:192.168.1.0 0.0.0.255
    • 匹配案列2

      • 匹配:192.168.2.128 - 192.168.2.254
      • 答案:192.168.2.128 0.0.0.127
    • 匹配案列3

      • 匹配:192.168.1.192
      • 答案:192.168.1.192 0.0.0.0
      • 可以簡寫為:host 192.168.1.192
    • 匹配案列4

      • 匹配:所有IP地址
      • 答案:0.0.0.0 255.255.255.255
      • 可以簡寫為:any
    • 匹配案列5

      • 匹配:所有偶數IP地址
      • 答案:192.168.1.1 0.0.0.254
    • 匹配案列6

      • 所有奇數IP地址
      • 答案:192.168.1.0 0.0.0.254
  • TCP/UDP包中的端口字段匹配

    • 匹配字段

      • 匹配源端口
      • 匹配目標端口
      • 同時匹配源端口和目標端口
    • 匹配方法

      • 端口范圍操作符、端口號

        操作符全稱含義示例作用
        eqequal匹配“等于”某個端口號eq 80:表示 HTTP 服務
        neqnot equal匹配“不等于”某個端口號neq 23:除 Telnet 以外的服務
        gtgreater匹配“大于”某個端口號gt 1023:過濾高位端口
        ltless匹配“小于”某個端口號lt 1024:匹配常用低端口(0-1023)
        range范圍匹配“在兩個端口之間”的端口range 20 21:FTP數據和控制端口
    • 匹配案例1

      • 匹配:DNS端口
      • 答案:eq 53
    • 匹配案列2

      • 匹配:DHCP服務器端口
      • 答案:eq 67
    • 匹配案例3

      • 匹配:DHCP客戶端端口
      • 答案:eq 68
    • 匹配案列4

      • 匹配:80 - 123端口
      • 答案:range 80 123
    • 匹配案例5

      • 匹配:1024及以上的端口
      • 答案:gt 1023
    • 匹配案例6

      • 匹配:1024及以下的端口
      • 答案:lt 1024

ACL分類

在這里插入圖片描述

命名ACL

  • 標準ACL與擴展ACL的缺陷(序號)
    • 對任意一條ACL規則條目的刪除、修改、插入都需要先刪除整個ACL,然后重新配置。

在這里插入圖片描述

  • 命名ACL

    • 按序號順序匹配,可按序號增加、刪除、修改、插入規則條目。

    • Cisco設備,如果省略序號,默認開始序號10,默認步長為10。

    • 標準命名ACL

      在這里插入圖片描述

    • 擴展命名ACL

      在這里插入圖片描述

  • 命名ACL應用案例

    • 可按序號增加、刪除、修改、插入規則條目。

在這里插入圖片描述

ACL高級應用

基于時間ACL配置案例

  • 需求:上班時間(9:00 - 18:00)不允許員工的主機(172.16.1.0/24)訪問Internet,下班時間可以訪問Internet上的Web服務。

在這里插入圖片描述

自反ACL

  • 單向訪問控制需求
    • 只允許內網訪問外網,不允許外網訪問內網

在這里插入圖片描述

  • 自反ACL

    • reeflect name1:
      • 根據流出的數據流動自動產生回程需要的源目反向的ACL規則條目
    • evaluate1 name1
      • 調用自動產生的ACL

在這里插入圖片描述

典型ACL包過濾案例

標準ACL

  • 標準ACL應用案例一
    • 只有192.168.1.0-254、192.168.2.0-191能訪問192.168.3.0網段。
    • 不允許10.0.0.0/8訪問本路由器的網段

在這里插入圖片描述

  • 標準ACL應用案例二
    • 只有192.168.3.1-254才能Telnet到RT1。

在這里插入圖片描述

擴展ACL

  • 擴展ACL應用案例一
    • 要求192.168.1.192 - 255不能訪問192.168.2.128 - 255

在這里插入圖片描述

  • 擴展ACL應用案例二
    • 192.168.1.0網段自動獲取IP導致,且只能訪問192.168.x.x

在這里插入圖片描述

放置位總結:**標準靠目標,擴展靠源頭;ACL要綁接口,PC是無能手。**即標準ACL放在靠近目標PC的那邊的路由器上,因為標準ACL只能看源IP,放在太前面,容易誤封。擴展ACL要放在靠近源目標的那邊的路由器上,因為擴展ACL能精確的識別IP、各種協議等,放在前面可以節省寬帶資源。

交換機IP ACL

  • 思科交換機IP ACL

在這里插入圖片描述

? 一、ACL包過濾回顧(核心知識)

🔹 ACL(Access Control List)訪問控制列表

是一種**基于規則對數據包進行匹配與控制(放行/拒絕)**的技術,應用于:

  • 包過濾(最常見)
  • 路由策略、NAT、防火墻等
  • QoS分類、按需撥號等

🔹 ACL匹配原則

  1. 自上而下按順序匹配
  2. 一旦匹配成功就不再繼續往下匹配
  3. 若沒有匹配任何規則,則默認拒絕(Cisco)或看平臺默認策略(華為默認放行)

? 二、ACL匹配結構

每條ACL規則 = 執行動作 + 匹配條件

例如:

access-list 101 permit tcp any any eq 80

表示:允許任何人訪問目的端口為80(HTTP)的主機


? 三、ACL端口匹配方式(核心知識點)

ACL在過濾 TCP 或 UDP 協議 時,可以匹配源端口目的端口。這時就要用到你提到的端口范圍操作符

操作符含義示例作用
eq等于eq 80匹配特定端口(如HTTP)
neq不等于neq 23除了該端口之外的都匹配
gt大于gt 1023高端口匹配
lt小于lt 1024匹配常見系統端口(如FTP、DNS)
range范圍(含頭尾)range 20 21匹配一段連續的端口(如FTP)

? 四、常見端口匹配案例

場景命令
匹配 DNS 服務eq 53
匹配 DHCP 服務器端口eq 67
匹配 DHCP 客戶端端口eq 68
匹配 Web 服務eq 80
匹配 HTTPS 服務eq 443
匹配 FTP 控制端口eq 21
匹配 FTP 數據端口eq 20
匹配 80–123 之間的服務range 80 123
匹配 1024及以上端口gt 1023
匹配 1024以下端口lt 1024

? 五、完整ACL配置示例(Cisco)

🎯 示例1:允許訪問HTTP和HTTPS,禁止其他訪問

access-list 110 permit tcp any any eq 80
access-list 110 permit tcp any any eq 443
access-list 110 deny ip any any
interface f0/0
ip access-group 110 in

🎯 示例2:僅允許FTP服務端口范圍

access-list 120 permit tcp any any range 20 21
access-list 120 deny ip any any

? 六、補充注意事項

  1. ACL分類
    • 標準ACL:只過濾源IP
    • 擴展ACL:支持源IP + 目的IP + 協議 + 端口號(最常用于端口匹配)
  2. 接口方向綁定
    • in:進接口方向(數據進入設備時)
    • out:出接口方向(數據從設備出去時)
  3. 一個接口一個方向只能綁定一條ACL
  4. 端口匹配只能用于 TCP / UDP 協議,不能用于 ICMP、GRE 等非端口協議。

? 七、額外練習(你可以嘗試寫寫)

?問題1:

只允許 192.168.1.0/24 訪問 DNS 服務?

? 答案:

access-list 150 permit udp 192.168.1.0 0.0.0.255 any eq 53

?問題2:

禁止任意主機 telnet 到本設備(23端口)?

? 答案:

access-list 160 deny tcp any any eq 23

命令解釋:

? 示例1:允許訪問 HTTP 和 HTTPS,禁止其他訪問

access-list 110 permit tcp any any eq 80
access-list 110 permit tcp any any eq 443
access-list 110 deny ip any any
interface f0/0
ip access-group 110 in

🔍 第1行:

access-list 110 permit tcp any any eq 80
📖 解釋:
  • access-list 110:定義一條編號為110的 擴展ACL(擴展ACL編號是100–199或2000–2699)
  • permit:表示 允許 匹配的流量通過
  • tcp:只作用于 TCP協議
  • any any
    • 第一個 any:表示任何源IP地址
    • 第二個 any:表示任何目標IP地址
  • eq 80:表示 目標端口等于80(即 HTTP 服務)
? 結果:

允許所有主機訪問任意主機的 HTTP 服務


🔍 第2行:

access-list 110 permit tcp any any eq 443
📖 解釋:
  • 跟上面結構一樣,只是目標端口變為 eq 443,即 HTTPS(加密網頁服務)
? 結果:

允許所有主機訪問任意主機的 HTTPS 服務


🔍 第3行:

access-list 110 deny ip any any
📖 解釋:
  • deny:拒絕匹配的流量
  • ip:表示匹配所有 IP 協議(包含 TCP、UDP、ICMP 等)
  • any any:任意源IP → 任意目標IP
? 結果:

拒絕所有非 HTTP/HTTPS 的 IP 流量(如 FTP、Telnet、DNS 等)

?? 注意:這一條也起到了“兜底”的作用,攔截其它未明確放行的流量。


🔍 第4、5行:

interface f0/0
ip access-group 110 in
📖 解釋:
  • interface f0/0:進入接口配置模式,表示在 f0/0 接口上應用ACL
  • ip access-group 110 in
    • 表示將 ACL 編號 110 綁定到該接口
    • 方向是 in(表示進入接口的數據包要被檢查)

🧠 總體結果:

  • 接口 f0/0 接收到的數據包中:
    • 如果是 TCP 且目標端口是 80 或 443 → 放行
    • 否則(所有其它服務/協議)→ 拒絕

? 示例2:只允許FTP(控制+數據端口)

access-list 120 permit tcp any any range 20 21
access-list 120 deny ip any any

🔍 第1行:

access-list 120 permit tcp any any range 20 21
📖 解釋:
  • permit tcp:允許 TCP 協議流量
  • any any:任意源IP、任意目標IP
  • range 20 21:目的端口號在 20~21 范圍內(包含20和21)

📌 說明:

  • 端口20是 FTP 數據端口
  • 端口21是 FTP 控制端口
? 結果:

允許所有主機訪問 FTP 服務(僅 FTP)


🔍 第2行:

access-list 120 deny ip any any

拒絕除 FTP 以外的所有 IP 流量


? 示例3:只允許 192.168.1.0/24 使用 DNS 服務

access-list 150 permit udp 192.168.1.0 0.0.0.255 any eq 53

🔍 解釋:

  • permit udp:允許 UDP 協議流量
  • 192.168.1.0 0.0.0.255:源IP范圍是 192.168.1.0 ~ 192.168.1.255
  • any:目標IP可以是任意
  • eq 53:目標端口為 53(DNS服務)
? 結果:

只允許 192.168.1.X 的主機訪問 DNS 服務(UDP 53端口)


🧠 最后補充:ACL執行流程圖簡化版

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/914337.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/914337.shtml
英文地址,請注明出處:http://en.pswp.cn/news/914337.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

穿梭時空的智慧向導:Deepoc具身智能如何賦予導覽機器人“人情味”

穿梭時空的智慧向導:Deepoc具身智能如何賦予導覽機器人“人情味”清晨,當第一縷陽光透過高大的彩繪玻璃窗,灑在博物館光潔的地板上,一位特別的“館員”已悄然“蘇醒”。它沒有制服,卻有著清晰的指引;它無需…

PostgreSQL 查詢庫中所有表占用磁盤大小、表大小

SELECTn.nspname AS schema_name,c.relname AS table_name,-- 1?? 總大小(表 toast 索引)pg_size_pretty(pg_total_relation_size(c.oid)) AS total_size,-- 2?? 表不包含索引(含 TOAST)pg_size_pretty(pg_total_relation_s…

日記-生活隨想

最近鼠鼠也是來到上海打拼(實習)了,那么秉持著來都來了的原則,鼠鼠也是去bw逛了逛,雖說沒票只能在外場看看😭。可惜幾乎沒有多少我非常喜歡的ip,不由感慨現在的二次元圈已經變樣了。雖說我知道內…

串口A和S的含義以及RT的含義

A async 異步S sync 同步RT 收發U A RT 異步U SA RT 同步/異步

spring cloud負載均衡分析之FeignBlockingLoadBalancerClient、BlockingLoadBalancerClient

本文主要分析被 FeignClient 注解的接口類請求過程中負載均衡邏輯&#xff0c;流程分析使用的依賴版本信息如下&#xff1a;<spring-boot.version>3.2.1</spring-boot.version><spring-cloud.version>2023.0.0</spring-cloud.version><com.alibaba.…

ref 和 reactive

文章目錄ref 和 reactive一、差異二、能否替代的場景分析&#xff08;1&#xff09;基本類型數據&#xff08;2&#xff09;對象類型數據&#xff08;3&#xff09;數組類型數據&#xff08;4&#xff09; 需要整體替換的場景三、替代方案與兼容寫法1. 用 reactive 模擬 ref2. …

BatchNorm 與 LayerNorm:原理、實現與應用對比

BatchNorm 與 LayerNorm&#xff1a;原理、實現與應用對比 Batch Normalization (批歸一化) 和 Layer Normalization (層歸一化) 是深度學習中兩種核心的歸一化技術&#xff0c;它們解決了神經網絡訓練中的內部協變量偏移問題&#xff0c;大幅提升了模型訓練的穩定性和收斂速度…

OcsNG基于debian一鍵部署腳本

&#x1f914; 為什么有了GLPI還要部署OCS-NG&#xff1f; 核心問題&#xff1a;數據收集的風險 GLPI直接收集的問題&#xff1a; Agent直接向GLPI報告數據時&#xff0c;任何收集異常都會直接影響資產數據庫網絡問題、Agent故障可能導致重復資產、錯誤數據、資產丟失無法對收集…

001_Claude開發者指南介紹

Claude開發者指南介紹 目錄 Claude簡介Claude 4 模型開始使用核心功能支持資源 Claude簡介 Claude 是由 Anthropic 構建的高性能、可信賴和智能的 AI 平臺。Claude 具備出色的語言、推理、分析和編程能力&#xff0c;可以幫助您解決各種復雜任務。 想要與 Claude 聊天嗎&a…

004_Claude功能特性與API使用

Claude功能特性與API使用 目錄 API 基礎使用核心功能特性高級功能開發工具平臺支持 API 基礎使用 快速開始 通過 Anthropic Console 獲取 API 訪問權限&#xff1a; 在 console.anthropic.com/account/keys 生成 API 密鑰使用 Workbench 在瀏覽器中測試 API 認證方式 H…

ReAct論文解讀(1)—什么是ReAct?

什么是ReAct&#xff1f; 在大語言模型&#xff08;LLM&#xff09;領域中&#xff0c;ReAct 指的是一種結合了推理&#xff08;Reasoning&#xff09; 和行動&#xff08;Acting&#xff09; 的提示方法&#xff0c;全稱是 “ReAct: Synergizing Reasoning and Acting in Lan…

【云服務器安全相關】服務器防火墻常見系統日志信息說明

目錄? 一、防火墻日志是做什么的&#xff1f;&#x1f6e0;? 二、常見防火墻日志信息及說明&#x1f9ea; 三、典型日志示例解析1. 被阻斷的訪問&#xff08;DROP&#xff09;2. 被允許的訪問&#xff08;ACCEPT&#xff09;3. 被拒絕的端口訪問4. 可疑端口掃描行為&#x1f…

011_視覺能力與圖像處理

視覺能力與圖像處理 目錄 視覺能力概述支持的圖像格式圖像上傳方式使用限制最佳實踐應用場景API使用示例視覺能力概述 多模態交互 Claude 3 系列模型具備強大的視覺理解能力,可以分析和理解圖像內容,實現真正的多模態AI交互。這種能力使Claude能夠: 圖像內容分析:理解圖…

ansible自動化部署考試系統前后端分離項目

1. ?ansible編寫劇本步驟1??創建roles目錄結構2??在group_vars/all/main.yml中定義變量列表3??在tasks目錄下編寫tasks任務4??在files目錄下準備部署文件5??在templates目錄下創建j2模板文件6??在handlers目錄下編寫handlers7??在roles目錄下編寫主playbook8??…

【AI論文】GLM-4.1V-Thinking:邁向具備可擴展強化學習的通用多模態推理

摘要&#xff1a;我們推出GLM-4.1V-Thinking&#xff0c;這是一款旨在推動通用多模態推理發展的視覺語言模型&#xff08;VLM&#xff09;。在本報告中&#xff0c;我們分享了在以推理為核心的訓練框架開發過程中的關鍵發現。我們首先通過大規模預訓練開發了一個具備顯著潛力的…

Linux進程通信——匿名管道

目錄 1、進程間通信基礎概念 2、管道的工作原理 2.1 什么是管道文件 3、匿名管道的創建與使用 3.1、pipe 系統調用 3.2 父進程調用 fork() 創建子進程 3.3. 父子進程的文件描述符共享 3.4. 關閉不必要的文件描述符 3.5 父子進程通過管道進行通信 父子進程通信的具體例…

sql:sql在office中的應用有哪些?

在Office軟件套件中&#xff0c;主要是Access和Excel會用到SQL&#xff08;結構化查詢語言&#xff09;&#xff0c;以下是它們在這兩款軟件中的具體應用&#xff1a; 在Access中的應用 創建和管理數據庫對象&#xff1a; 創建表&#xff1a;使用CREATE TABLE語句可以創建新的數…

零基礎完全理解視覺語言模型(VLM):從理論到代碼實踐

本文是《從LLM到VLM&#xff1a;視覺語言模型的核心技術與Python實現》的姊妹篇&#xff0c;主要面向零基礎的讀者&#xff0c;希望用更通俗易懂的語言帶領大家入門VLM。本教程的完整代碼可以在GitHub上找到&#xff0c;如果你有任何問題或建議&#xff0c;歡迎交流討論。 寫在…

數據結構 Map和Set

文章目錄&#x1f4d5;1. 二叉搜索樹??1.1 查找操作??1.2 插入操作??1.3 刪除操作&#x1f4d5;2. Map的使用??2.1 Map的常用方法??2.2 TreeMap和HashMap的區別??2.3 HashMap的底層實現&#x1f4d5;3. Set的使用??3.1 Set的常用方法??3.2 TreeSet和HashSet的區…

樹莓派5-系統 Debian 12 開啟VNC遠程訪問踩坑記錄

簡單記錄一下踩坑&#xff0c;安裝vnc遠程訪問服務并設置開機自啟1.查看系統版本&#xff0c;我這里的系統版本是 12cat /etc/os-release2.安裝VNC服務sudo apt install realvnc-vnc-server realvnc-vnc-viewer -y3.創建服務單元文件&#xff1a;sudo nano /etc/systemd/system…