圖解網絡:訪問控制列表ACL,功能堪比防火牆

2022.07.13
圖解網絡:訪問控制列表ACL,功能堪比防火牆

ACL是一組允許或拒絕訪問計算機網絡的規則,網絡設備,即路由器和交換機,將ACL 語句應用於入站和出站網絡流量,從而控制哪些流量可以通過網絡。​

​在計算機網絡世界中,ACL是最基本的安全組件之一,是一種監視傳入和傳出流量並將其與一組定義的語句進行比較的功能。

ACL 主要存在於具有包過濾功能的網絡設備中,包括路由器和交換機。

本文瑞哥將用圖解的形式帶大家揭開ACL的神秘面紗。

讓我們直接開始!

什麼是ACL?

  • 英文全稱:Access Control List
  • 中文名稱:訪問控制列表

ACL是一個規則列表,用於指定允許或拒絕哪些用戶或系統訪問特定對像或系統資源,訪問控制列表也安裝在路由器或交換機中,它們充當過濾器,管理哪些流量可以訪問網絡。

ACL類型

ACL一般有兩種類型:

圖解網絡:訪問控制列表ACL,功能堪比防火牆

ACL類型

  • 文件系統ACL:一般是過濾對文件和/或目錄的訪問。
  • 網絡ACL:過濾對網絡的訪問,一般用於網絡設備,比如路由器、交換機等。

本文會著重介紹網絡ACL。

ACL優點

ACL優點非常多,比如:

  • 通過限製網絡流量幫助提高網絡性能
  • 通過定義權限和訪問權限來提供安全性
  • 對進入網絡的流量提供精細控制

為什麼使用ACL?

ACL 起到維護網絡流量正常流動的作用,這種對網絡流量的監管是維護組織或網絡安全的主要方式,訪問控制列表有助於限制似乎不適合組織安全的流量,從而最終實現更好的網絡性能。

使用訪問控制列表的主要原因是維護網絡的安全並保護它免受易受攻擊和危險的嘗試,如果消息在未經過濾的情況下通過網絡傳輸,則將組織置於危險之中的機會就會增加。

通過使用訪問控制列表,為網絡授予特定的安全級別,來規範所有那些被授權和未被授權由用戶使用的服務器、網絡和服務,此外,ACL 有助於監控進入和離開系統的所有數據。

圖解網絡:訪問控制列表ACL,功能堪比防火牆

ACL控制

如圖,SW3和SW1由於ACL的控制,不允許訪問,SW4到SW2允許訪問。

ACL的組成

ACL 是一組規則或條目,每台設備可以設置一個包含單個或多個條目的ACL,其中每個條目可以設置不同的規則,允許或拒絕某種流量。

一般ACL有以下部分:

圖解網絡:訪問控制列表ACL,功能堪比防火牆

ACL的組成

ACL編號

標識ACL條目的代碼。

ACL名稱

ACL 名稱也可以用來標識ACL 條目。

備註

可以為ACl添加註釋或詳細描述

ACL語句 

就是寫一些拒絕或者允許流量的語句,這個很重要,後面會詳細講。

網絡協議

比如IP、TCP、UDP、IPX 等,可以根據這些網絡協議編寫規則。

源地址、目的地址

就是這些ACL規則針對的出入地址,比如你的電腦訪問公司服務器,那麼你的電腦就是源地址,公司的服務器就是目的地址。

圖解網絡:訪問控制列表ACL,功能堪比防火牆

源地址、目的地址

日誌

傳入和傳出的流量可以用ACL日誌功能去記錄,用來統計或者排查網絡問題。

ACL的分類

從大的方向講ACL分為四大類:

圖解網絡:訪問控制列表ACL,功能堪比防火牆

ACL的分類

标准 ACL

这是安全性最弱的基本 ACL,只查看源地址。

以下是编号是5号的ACL,是标准 ACL,允许172.16.1.0/24的网络:

access-list 5 permit 172.16.1.0 0.0.0.255
  • 1.

扩展 ACL

更高级的 ACL,能够根据其协议信息阻止整个网络和流量。

以下是编号为150号的ACl,如果目标将 HTTP 端口 80 作为主机端口,允许从172.16.1.0/24网络到任何IPv4网络的所有流量:

access-list 200 permit tcp 172.16.1.0 0.0.0.255 any eq www
  • 1.

动态 ACL

更安全的 ACL,它利用身份验证、扩展 ACL 和 Telnet,只允许用户在经过身份验证过程后访问网络。

自反 ACL

将会话过滤功能添加到其他 ACL 类型的数据包过滤功能中,也被称为IP 会话 ACL,使用上层会话详细信息来过滤流量。

自反 ACL 不能直接应用于接口,通常嵌套在扩展的命名访问列表中,不支持在会话期间更改端口号的应用程序,例如 FTP 客户端。

ACL 规则

  • ACL 规则按顺序匹配的,假如有多行,一定是从第一行开始,一直到最后一行。
  • 每个 ACL 的末尾都有一个隐式拒绝,如果没有条件或规则匹配,则数据包将被丢弃。
  • 一般会有出站和入站ACL,每个方向每个协议每个接口只能分配一个 ACL,即每个接口只允许一个入站和出站 ACL。
  • 尽可能使用备注和日志提供有关 ACL 的详细信息,以便于后期排查问题和记忆。

ACL使用场景

圖解網絡:訪問控制列表ACL,功能堪比防火牆

ACL使用场景

一般情况下就是这三种情况:

NAT

在地址转换的时候,内外网安全性考虑,会设置大量的ACL去控制网络流量。

防火墙

这个就不用说了,防火墙干的事情就是ACL的规则。

QoS

这个一般在流策略中比较常见,控制不同网段的用户对流量的访问权。

一般来说,ACL使用场景逃不过这三种情况,即使有其他的情况,肯定也是可以用这三种情况去概况联想的。

总结

ACL是一组允许或拒绝访问计算机网络的规则,网络设备,即路由器和交换机,将 ACL 语句应用于入站和出站网络流量,从而控制哪些流量可以通过网络。​