愿浪飒精神伴你左右,网络安全之路任重而道远。

ACL的工作原理

网络技术 zhh 2年前 (2022-11-13) 351次浏览 0个评论
文章目录[隐藏]

一、ACL简介

1.定义

访问控制列表ACL(Access Control List)是由一条或多条规则组成的集合。所谓规则,是指描述报文匹配条件的判断语句,这些条件可以是报文的源地址、目的地址、端口号等。

ACL本质上是一种报文过滤器,设备基于这些规则进行报文匹配,可以过滤出特定的报文,并根据应用ACL的业务模块的处理策略来允许或阻止该报文通过。

ACL配置完成后,必须应用在业务模块中才能生效,其中最基本的ACL应用,就是在简化流策略/流策略中应用ACL,使设备能够基于全局、VLAN或接口下发ACL,实现对转发报文的过滤。

2.目的

ACL可以实现对网络中报文流的精确识别和控制,达到控制网络访问行为、防止网络攻击和提高网络带宽利用率的目的,从而切实保障网络环境的安全性和网络服务质量的可靠性。

二、ACL工作流程

1.访问控制列表的入口规则

当数据包进入到接口时,首先判断接口上是否存在访问控制列表,若接口不存在ACL,则直接转发数据;若接口上存在ACL,则比较ACL中的列表信息,若与ACL列表相符则根据规则处理数据信息,若与ACL列表不相符则根据规则丢弃数据信息。

2.访问控制列表的出口规则

当数据经过路由器的接口向外转发时,首先查看路由表的信息,是否有到达目的段的路由信息或默认路由信息,若无则丢弃数据,若有则检测接口上的ACL列表信息。首先判断接口上是否存在访问控制列表,若接口不存在ACL,则直接转发数据;若接口上存在ACL,则比较ACL中的列表信息,若与ACL列表相符则根据规则处理数据信息,若与ACL列表不相符则根据规则丢弃数据信息。

三、ACL匹配机制

设备将报文与ACL规则进行匹配时,遵循“一旦命中即停止匹配”的机制

image-20221113192517146

四、应用模块的ACL默认动作和处理机制(以华为设备为列)

在各类业务模块中应用ACL时,ACL的默认动作各有不同,所以各业务模块对命中/未命中ACL规则报文的处理机制也各不相同。

例如,流策略中的ACL默认动作是permit,在流策略中应用ACL时,如果ACL中存在规则但报文未匹配上,该报文仍可以正常通过。而Telnet中的ACL默认动作是deny,在Telnet中应用ACL时,如果遇到此种情况,该报文会被拒绝通过。

此外,黑名单模块中的ACL处理机制与其他模块有所不同。在黑名单中应用ACL时,无论ACL规则配置成permit还是deny,只要报文命中了规则,该报文都会被系统丢弃。

1.各业务模块的ACL默认动作及ACL处理机制

ACL默认动作及处理规则 Telnet STelnet HTTP FTP TFTP
ACL默认动作 deny deny deny deny deny
命中permit规则 permit(允许登录) permit(允许登录) permit(允许登录) permit(允许登录) permit(允许登录)
命中deny规则 deny(拒绝登录) deny(拒绝登录) deny(拒绝登录) deny(拒绝登录) deny(拒绝登录)
ACL中配置了规则,但未命中任何规则 deny(拒绝登录) deny(拒绝登录) deny(拒绝登录) deny(拒绝登录) deny(拒绝登录)
ACL中未配置规则 permit(允许登录) permit(允许登录) permit(允许登录) permit(允许登录) permit(允许登录)
ACL未创建 permit(允许登录) permit(允许登录) permit(允许登录) permit(允许登录) permit(允许登录)

2.各业务模块的ACL默认动作及ACL处理机制

ACL默认动作及处理规则 SFTP SNMP 流策略 简化流策略 本机防攻击策略(黑名单)
ACL默认动作 deny deny permit permit permit
命中permit规则 permit(允许登录) permit(允许登录) 流行为是permit时:permit(允许通过)流行为是deny时:deny(丢弃报文)流行为是其他动作时:permit(执行流策略动作) permit(执行简化流策略动作) deny(丢弃报文)
命中deny规则 deny(拒绝登录) deny(拒绝登录) deny(丢弃报文)说明:报文命中deny规则时,只有在流行为是流量统计、MAC地址不学习或流镜像的情况下,设备才会执行流行为动作,否则流行为动作不生效。 简化流策略动作为报文过滤(traffic-filter或traffic-secure)时:deny(丢弃报文)简化流策略动作为其他动作时:permit(执行简化流策略动作) deny(丢弃报文)
ACL中配置了规则,但未命中任何规则 deny(拒绝登录) deny(拒绝登录) permit(功能不生效,按照原转发方式进行转发) permit(功能不生效,按照原转发方式进行转发) permit(功能不生效,正常上送报文)
ACL中未配置规则 permit(允许登录) permit(允许登录) permit(功能不生效,按照原转发方式进行转发) permit(功能不生效,按照原转发方式进行转发) permit(功能不生效,正常上送报文)
ACL未创建 permit(允许登录) permit(允许登录) permit(功能不生效,按照原转发方式进行转发) permit(功能不生效,按照原转发方式进行转发) permit(功能不生效,正常上送报文)

3.各业务模块的ACL默认动作及ACL处理机制

ACL默认动作及处理规则 Route Policy Filter Policy igmp-snooping ssm-policy igmp-snooping group-policy
ACL默认动作 deny deny deny 配置了default-permit时:permit未配置default-permit时:deny
命中permit规则 匹配模式是permit时:permit(允许执行路由策略)匹配模式是deny时:deny(不允许执行路由策略) permit(允许发布或接收该路由) permit(允许加入SSM组播组范围) 配置了default-permit时:permit(允许加入组播组)未配置default-permit时:permit(允许加入组播组)
命中deny规则 deny(功能不生效,不允许执行路由策略) deny(不允许发布或接收该路由) deny(禁止加入SSM组地址范围) 配置了default-permit时:deny(禁止加入组播组)未配置default-permit时:deny(禁止加入组播组)
ACL中配置了规则,但未命中任何规则 deny(功能不生效,不允许执行路由策略) deny(不允许发布或接收该路由) deny(禁止加入SSM组地址范围) 配置了default-permit时:permit(允许加入组播组)未配置default-permit时:deny(禁止加入组播组)
ACL中未配置规则 permit(对经过的所有路由生效) deny(不允许发布或接收路由) deny(禁止加入SSM组地址范围,所有组都不在SSM组地址范围内) 配置了default-permit时:permit(允许加入组播组)未配置default-permit时:deny(禁止加入组播组)
ACL未创建 deny(功能不生效,不允许执行路由策略) permit(允许发布或接收路由) deny(禁止加入SSM组地址范围,只有临时组地址范围232.0.0.0~232.255.255.255在SSM组地址范围内) 配置了default-permit时:permit(允许加入组播组)未配置default-permit时:deny(禁止加入组播组)

五、ACL 故障处理流程

image-20221113162222280


本文标题:ACL的工作原理
本文链接:https://blog.langsasec.cn/index.php/2022/11/13/acl/
版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
喜欢 (2)
[]
分享 (0)
zhh
关于作者:
一个网络安全从业人员
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址