第21节 ACL——控制路由器上接口大门的进出规则

编程知识 更新时间:2023-05-02 04:29:09

这里写目录标题

  • 1 ACL概述
  • 2 ACL分类及原理
    • 2.1 标准ACL
    • 2.2 扩展ACL
    • 2.3 原理
  • 3 ACL编辑
  • 4 命名ACL
  • 5 总结
  • 6 参考文献

1 ACL概述

  1. 定义:Access Control List 访问控制列表。访问控制列表(ACL)是一种基于包过滤的访问控制技术,它可以根据设定的条件对接口上的数据包进行过滤,允许其通过或丢弃。
  2. 作用:
    1. 访问控制列表被广泛地应用于路由器和三层交换机,借助于访问控制列表,可以有效地控制用户对网络的访问,从而最大程度地保障网络安全。
    2. 当ACL表应用在路由器接口上时,ACL中指令用来告诉路由器哪些数据包可以收、哪些数据包需要拒绝。
    3. 其他场合大多数起到条件匹配的功能。
  3. 检查对象:三层IP包头(源地址、目标地址等)、四层头部(TCP、UDP端口号)、[5层数据]。
  4. 应用场合:路由器和三层交换机、防火墙配置(一般称为策略)。本节内容主要介绍应用于路由器及三层交换机的ACL。

2 ACL分类及原理

2.1 标准ACL

  1. 表号范围:1~99。只要将表号设置在这个范围内,就是标准ACL表。
  2. 特点:只能基于数据包中的“源IP”对包进行过滤。
  3. 配置位置:流量流经的路由器上,由于标准ACL表只能检查源IP,因此需要尽可能配置在离目标近的路由器,以避免误杀。
  4. 应用于进口还是出口,取决于流量控制的总方向。
  5. 要应用到哪个路由器就在哪个路由器上配置命令:
'''创建标准ACL及新增条目'''
en
conf t
access-list 1										#创立标准ACL表1
access-list 1 permit/deny 源IP或源网段 反子网掩码	#每条命令均需要表明针对哪个表
#反子网掩码:将正子网掩码按位取反,例如正子网掩码255.255.255.0对应反子网掩码为0.0.0.255
#反子网掩码的作用:用来匹配,与0对应的需要严格匹配,与1对应的忽略。
access-list 1 deny 10.1.1.1 0.0.255.255				#表示拒绝所有源IP为10.1.x.x的数据包
access-list 1 deny 10.1.0.0 0.0.255.255				#含义与上一行,更方便理解
access-list 1 deny 10.1.1.1 255.255.255.255			#表示拒绝所有源IP为x.x.x.x的数据包
access-list 1 deny any								#含义与上一行,更方便理解
access-list 1 deny host 10.1.1.1					#表示拒绝源IP地址为10.1.1.1的数据包
access-list 1 permit any							#表示允许所有数据包通行

'''查看表'''
en
show ip access-list 1		#查看表1,如果不指定表号,则查看所有ACL表。

'''删除表'''
en
conf t
no access-list 1			#删除表,需要指定表号。

'''编辑完ACL表后,需要将ACL表应用于哪个接口哪个反向'''
en
conf t
int f0/0
ip access-group 1 in/out	#in或out二选一
exit

2.2 扩展ACL

  1. 表号范围:100~199。
  2. 特点:可以基于源IP、目标IP、端口号、协议等对数据包进行过滤。
  3. 配置位置:流量流经的路由器上,由于扩展ACL表条件丰富,因此尽可能配置在离源近的路由器,以减少路由器负担。
  4. 应用于进口还是出口,取决于流量控制的总方向。
  5. 要应用到哪个路由器就在哪个路由器上配置命令:
'''创建标准ACL及新增条目'''
en
conf t
acc 100 					#创立扩展ACL表1
#标准命令,要满足所有条件才执行动作。
#除了端口号其余的都要写,eq表示等于。
#协议一般写tcp/udp/ip/icmp,当有写端口号时,需要写对应的协议TCP或UDP。注意tcp/udp/icmp均需要流经ip。
acc 表号 permit/deny 协议 源IP或源网段 反子网掩码 目标IP或目标网段 反子网掩码 [eq 端口号] 
# 表示允许主机10.1.1.1访问主机20.1.1.3的TCP80端口
acc 100 permit tcp host 10.1.1.1 host 20.1.1.3 eq 80
# 表示禁止主机10.1.1.1的UDP53端口,该主机将无法请求DNS解析。
acc 100 deny udp host 10.1.1.1 any eq 53
#表示禁止主机10.1.1.1访问网段20.1.1.0
acc 100 deny ip host 10.1.1.1 20.1.1.0 0.0.0.255 
#表示禁止主机10.1.1.1所有流向网段20.1.1.0TCP服务的数据包
acc 100 deny tcp host 10.1.1.1 20.1.1.0 0.0.0.255 
#表示禁止主机10.1.1.1ping20.1.1.0网段
acc 100 deny icmp host 10.1.1.1 20.1.1.0 0.0.0.255 
# 表示允许所有通过
acc 100 permit ip any any

'''查看表'''
en
show ip access-list 1		#查看表1,如果不指定表号,则查看所有ACL表。

'''删除表'''
en
conf t
no access-list 1			#删除表,需要指定表号。

'''编辑完ACL表后,需要将ACL表应用于哪个接口哪个反向'''
en
conf t
int f0/0
ip access-group 1 in/out	#in或out二选一
exit

2.3 原理

  1. 进出(in/out)是针对路由器而言,在每个接口上都有两个方向。
  2. ACL表贴于哪个口,就控制哪个口的进出,贴于门外,则表示满足规则运行进入;贴于门内,则表示满足规则可以出去。
  3. 一个接口的一个方向(进和出)仅应用一张ACL表。
  4. ACL表严格自上而下逐条检查,因此条目顺序很重要。
  5. ACL表中自上而下有多个条目,每个条目由条件与动作构成。每当有流量来时,严格自上而下逐条检查条目,当条件完全满足时,执行动作;当条件不完全满足时,检查下一条;当所有条件都不满足时,则拒绝通过,这是隐藏在ACL表最后的。

3 ACL编辑

  1. ACL表编辑及应用应该在整个网络已经能做正常ping通后再考虑。
  2. ACL表用于过滤数据包,先根据流量的流经,判断应用在哪个路由器、哪个接口、哪个方向上。
  3. 考虑使用哪种ACL表。
  4. 开始编写时先判断大部分流量是拒绝通过还是允许通过,决定ACL表最后一行如何编写。
  5. 建议自下往上编写条目,越往上一般条件限制越严格。
  6. 一般情况下,标准或扩展ACL表一旦编写好,无法修改某一条、无法删除某一条、也无法修改顺序、也无法插入某一条,只能一直在最后添加新的条目。如果要修改/删除/调整顺序,只能删除整张表,重新写。

4 命名ACL

  1. 是对标准ACL和扩展ACL的功能完善,不是第三类ACL表。
  2. 作用:可以对标准或扩展ACL进行自定义命名。
  3. 优点:(1)自定义命名更容易辨认,也便于记忆。(2)可以任意修改/删除/插入某一条。
  4. 可以理解为进入ACL表配置模式才能修改/删除/插入条目,在全局配置模式就只能删除整个表。
  5. 相关命令:
en
conf t
acc 1 deny host 10.1.1.1							#创建标准ACL表1并编写规则
acc 1 permit any
acc 100 deny ip host 10.1.1.1 20.1.1.0 0.0.0.255 	#创建扩展ACL表100并编写规则
acc 100 permit ip any any
#希望内网的人都可以访问网站服务器、外网都不能访问网站服务器
#创建命名ACL表,其中ex表示扩展、stan表示标准。
#该命令会进入扩展ACL表配置模式,不用每一句均以 access+表号 开头
ip access-list extended/standard 自定义表名
ip access-list ex kongzhi-80-oa
#允许内网192.168网段访问主机10.1.1.1的tcp80端口。
permit tcp 192.168.0.0 0.0.255.255 host 10.1.1.1 eq 80
#允许内网172.16网段访问主机10.1.1.1的tcp80端口。
permit tcp 172.16.0.0 0.0.255.255 host 10.1.1.1 eq 80			
#禁止内网192.168网段访问主机10.1.1.1的ip协议
deny ip 192.168.0.0 0.0.255.255 host 10.1.1.0
exit
#查看所有表
do sh ip acc
#再次进入命名ACL表,进行条目调整
ip access-list ex kongzhi-80-oa
#删除该表中表号为20的条目
no 20
#插入条目,先写条目序号
15 permit tcp 172.16.0.0 0.0.255.255 host 10.1.1.1 eq 80
#查看所有表
do sh ip acc

#利用命名ACL的方式修改扩展ACL
ip access-list ex 100

5 总结

  1. NTFS权限列表也是ACL表,本节与之无关。
  2. 重点理解反子网掩码起到的作用。
  3. 重点理解ACL条目的执行规律。
  4. 理解ACL应配置在哪个路由器、哪个接口、哪个方向上。
  5. 掌握相关命令。

6 参考文献

  1. 《访问控制列表百科》

更多推荐

第21节 ACL——控制路由器上接口大门的进出规则

本文发布于:2023-04-25 22:12:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/c6ae672c0170746f033a0fad79ae005f.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:路由   大门   器上   接口   规则

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 103737文章数
  • 26189阅读数
  • 0评论数