ACL(访问控制列表)

文章目录

首先可以看下思维导图,以便更好的理解接下来的内容。

一、ACL

定义

ACL,也称为访问控制列表,是一种网络安全工具,用于在网络设备上对数据流进行匹配和筛选。它可以控制数据包的流向,允许或拒绝数据包通过网络接口,以实现网络安全和资源管理。

常见功能

ACL 主要用于以下常见功能:

访问控制:通过ACL和数据包过滤结合使用,限制特定源或目标的网络访问。

路由控制:与路由策略结合,ACL 可以用于决定数据包的路由路径。

流量控制:结合QoS(Quality of Service)策略,ACL 可以帮助管理流量的优先级和带宽分配。

二、基于ACL的包过滤

定义

基于 ACL 的包过滤是一种网络安全措施,它对每个进出网络接口的数据包逐个进行检查,并根据ACL规则决定是否允许或丢弃数据包。这些规则必须配置在特定接口的某个方向上才能生效,每个接口的一个方向只能配置一个包过滤策略。

包过滤的方向

ACL 包过滤可以配置在以下两个方向上:

入方向:只对从外部进入网络的数据包进行过滤。

出方向:只对从内部发出的数据包进行过滤。

包过滤的工作流程

ACL 包过滤的工作流程包括以下步骤:

  1. 当数据包到达接口时,系统检查是否应用了ACL规则。如果有ACL规则,系统将开始匹配,否则数据包将被允许通过。
  2. 数据包将按照ACL编号匹配第一条规则。如果匹配成功,系统将继续检查该规则的动作。
    如果规则动作是允许,系统将允许数据包通过。
    如果规则动作是拒绝,系统将丢弃数据包。
  3. 如果第一条规则未匹配,系统将继续匹配下一条规则,以此类推。
  4. 如果没有规则匹配,系统将检查默认动作。
    如果默认动作是允许,系统将允许数据包通过。
    如果默认动作是拒绝,系统将丢弃数据包。

注意事项

  • 如果默认动作是允许,至少需要配置一条拒绝规则,以确保网络安全。
  • 如果默认动作是拒绝,至少需要配置一条允许规则,以确保合法数据的通过。
  • 在规则设置中,通常建议将最具体的规则配置在前面,以提高匹配效率。
  • 在不影响网络功能的前提下,尽量将包过滤配置在距离数据源最近的接口的入方向,以提高网络性能。

三、ACL分类

ACL 分为以下两种主要类型:

基本ACL:

只对数据包的源地址进行匹配。

通常使用编号范围为2000-2999的ACL规则。

高级ACL:

对数据包的五元组进行匹配,包括源IP、目标IP、源端口、目标端口和协议。

通常使用编号范围为3000-3999的ACL规则。

四、常用命令

c 复制代码
[h3c]acl basic 'acl-number'                                 # 创建基本ACL,进入ACL视图
[h3c]acl advanced 'acl-number'                              # 创建高级ACL,进入ACL视图
[h3c-acl-basic-2000]rule 'rule id' 'permit/deny' source 'ip address' 'wild-mask'          # 创建基本ACL规则 如不写rule-id,则系统自动从0开始以5的倍数增加序号
[h3c-acl-basic-3000]rule 'rule id' 'protocol' source 'ip address' 'wild-mask' source-port 'port' destination 'ip address' 'wild-mask' destination-port 'port'        # 创建高级ACL规则
[h3c-GigabitEthernet 0/0]packet-filter 'acl number' 'inbound/outbound'     # 配置包过滤
[h3c]packet-filter default deny                             # 更改默认动作为拒绝

如有不详或错误,敬请指出。

相关推荐
yyuuuzz7 小时前
跨境站点日志时区混乱的排查记录
运维·服务器·网络·云计算·aws·1024程序员节
GlobalInfo8 小时前
全球及中国风电叶片检测机器人行业研究报告(2026版):市场现状、行业前景与占有率分析
运维·网络·人工智能·机器人
运维行者_10 小时前
网络监控工具怎么选?从设备监控到智能运维的能力清单
运维·服务器·开发语言·网络·人工智能·支持向量机·php
2401_8685347810 小时前
陈冲2026年上海纽约大学全英文毕业演讲
服务器·网络
FPGA小迷弟12 小时前
FPGA开发Vivado Block Design/Vitis/SDK/xlinx/开发教程,保姆级别,一看就会!
网络协议·tcp/ip·fpga开发·verilog·fpga
FPGA小迷弟12 小时前
基于FPGA实现智能网卡的概念,什么是智能网卡
网络协议·tcp/ip·fpga开发·verilog·fpga
DYWorker00113 小时前
第1课:基于正点原子RK3568开发板读懂Linux内核
linux·运维·网络
Lzg_na15 小时前
数据链路层差错控制使用的算法详解
网络
努力努力再努力wz16 小时前
【C++ 高阶系列】C++ 高性能网络编程:当 Reactor 遇见协程:从 epoll 回调到异步 MySQL,彻底打通任务挂起与恢复
网络·c++·mysql
loulanyue_16 小时前
当AI学会自主攻击与渗透破壁:Agent行为链失控与Mythos级攻防颠覆下的安全范式重构——读CNCC2026第六届网络生态治理论坛实录
网络·人工智能·安全