一、什么是ACL
访问控制列表ACL(Access Control List)是一种基于报文过滤的访问控制技术,它可以根据设定的条件对接口上的数据包进行过滤,允许其通过或丢弃。这些条件可以是报文的源地址、目的地址、端口号等。
访问控制列表被广泛地应用于防火墙、路由器和三层交换机,借助于访问控制列表,可以有效地控制用户对网络的访问,从而最大程度地保障网络安全。
借助ACL,可以快捷而规范的落地如下访问控制功能:
二、ACL的组成、分类以及典型应用场景
2.1 ACL的组成
(1)ACL标识:使用数字或者名称来标识ACL
使用数字标识ACL:不同的类型的ACL使用不同的数字进行标识。
使用名称标识ACL:可以使用字符来标识ACL,就像用域名代替IP地址一样,更加方便记忆。
(2)规则:即描述匹配条件的判断语句
规则编号:用于标识ACL规则,所有规则均按照规则编号从小到大进行排序。
动作:包括permit/deny两种动作,表示设备对所匹配的数据包接受或者丢弃。
(3)匹配项:包括生效时间段、IP协议(ICMP、TCP、UDP等)、源/目的地址以及相应的端口号(21、23、80等)。
2.2 ACL的分类
基本ACL:基本ACL规则只包含源IP地址,对设备的CPU消耗较少,可用于简单的部署,但是使用场景有限,不能提供强大的安全保障。
高级ACL:相较于基本ACL,高级ACL提供更高的扩展性,可以对流量进行更精细的匹配。通过配置高级ACL,可以阻止特定主机或者整个网段的源或者目标。除此之外,还可以使用协议信息(IP、ICMP、TCP、UDP)去过滤相应的流量。
二层ACL:使用二层ACL,可以根据源MAC地址、目的MAC地址、802.1p优先级、二层协议类型等二层信息对流量进行管控。
用户ACL:用户ACL在高级ACL的基础上增加了用户组的配置项,可以实现对不同用户组的流量管控。
不同类型的ACL的具体应用场景如下所示:
2.3 典型应用场景
2.3.1在路由中使用ACL
通过NAT的端口映射可使得外网访问内部网络。考虑到内部的网络安全,不可能允许所有的外部用户访问内部网络,这时可以设置ACL规则并应用在企业路由器上,使得特定的外网用户可以访问内部网络。
如上图所示,当公网主机想建立与内网主机的通信时,其发向内部网络主机的流量经过NAT设备时,设备利用ACL对流量进行过滤,阻断了PC4对PC2的访问,同时允许PC3对PC1的访问。
2.3.2在防火墙中使用ACL
防火墙用在内外网络边缘处,防止外部网络对内部网络的入侵,也可以用来保护网络内部大型服务器和重要的资源(如数据)。由于ACL直接在设备的转发硬件中配置,在防火墙中配置ACL在保护网络安全的同时不会影响服务器的性能。
如上图所示,在防火墙上配置ACL只允许外部特定主机PC A访问内部网络中的数据中心,并禁止其他外部主机的访问。
2.3.3在交换机上使用ACL限制用户互访
利用ACL可以实现不同网段用户之间访问权限的限制,从而避免用户之间随意访问形成安全隐患。
如上图所示,某公司为财务部和市场部规划了两个网段的IP地址。为了避免两个部门之间相互访问造成公司机密的泄露,可以在两个部门连接三层交换的接口的入方向上应用绑定了ACL的流策略,从而禁止两个部门的互访。
三、ACL的匹配机制
设备将报文与ACL规则进行匹配时,遵循“一旦命中即停止匹配”的机制。
ACL匹配流程图描述:
(1)首先系统会查找设备上是否配置了ACL。
(2)如果ACL不存在,则返回ACL匹配结果为:不匹配。
(3)如果ACL存在,则查找设备是否配置了ACL规则。
(4)如果规则不存在,则返回ACL匹配结果为:不匹配。
(5)如果规则存在,则系统会从ACL中编号最小的规则开始查找。
(6)如果匹配上了permit规则,则停止查找规则,并返回ACL匹配结果为:匹配(允许)。
(7)如果匹配上了deny规则,则停止查找规则,并返回ACL匹配结果为:匹配(拒绝)。
(8)如果未匹配上规则,则继续查找下一条规则,以此循环。如果一直查到最后一条规则,报文仍未匹配上,则返回ACL匹配结果为:不匹配。
从整个ACL匹配流程可以看出,报文与ACL规则匹配后,会产生两种匹配结果:“匹配”和“不匹配”。
不论匹配(命中规则)的动作是“permit”还是“deny”,都称为“匹配”,而不是只是匹配上permit规则才算“匹配”。不匹配(未命中规则)指不存在ACL,或ACL中符合规则。
四、配置示例 - 使用高级ACL限制不同网段的用户互访
4.1 组网需求
如下图所示,通过Switch实现各部门之间的互连。为方便管理网络,管理员为公司的研发部和市场部规划了两个网段的IP地址。同时为了隔离广播域,又将两个部门划分在不同VLAN之中。现要求Switch能够限制两个网段之间互访,防止公司机密泄露。
4.2 配置思路
(1)配置高级ACL和基于ACL的流分类,使设备可以对研发部与市场部互访的报文进行过滤。
(2)配置流行为,拒绝匹配上ACL的报文通过。
(3)配置并应用流策略,使ACL和流行为生效。
4.3 操作步骤
(1)配置接口所属的VLAN以及接口的IP地址
# 创建VLAN10和VLAN20
system-view
[HUAWEI] sysname Switch
[Switch] vlan batch 10 20
# 配置Switch的接口GE0/0/1和GE0/0/2为trunk类型接口,并分别加入VLAN10和VLAN20
[Switch] interface gigabitethernet 0/0/1
[Switch-GigabitEthernet0/0/1] port link-type trunk
[Switch-GigabitEthernet0/0/1] port trunk allow-pass vlan 10
[Switch-GigabitEthernet0/0/1] quit
[Switch] interface gigabitethernet 0/0/2
[Switch-GigabitEthernet0/0/2] port link-type trunk
[Switch-GigabitEthernet0/0/2] port trunk allow-pass vlan 20
[Switch-GigabitEthernet0/0/2] quit
# 创建VLANIF10和VLANIF20,并配置各VLANIF接口的IP地址
[Switch] interface vlanif 10
[Switch-Vlanif10] ip address 10.1.1.1 24
[Switch-Vlanif10] quit
[Switch] interface vlanif 20
[Switch-Vlanif20] ip address 10.1.2.1 24
[Switch-Vlanif20] quit
(2)配置ACL
# 创建高级ACL 3001并配置ACL规则,拒绝研发部访问市场部的报文通过
[Switch] acl 3001
[Switch-acl-adv-3001] rule deny ip source 10.1.1.0 0.0.0.255 destination 10.1.2.0 0.0.0.255
[Switch-acl-adv-3001] quit
# 创建高级ACL 3002并配置ACL规则,拒绝市场部访问研发部的报文通过
[Switch] acl 3002
[Switch-acl-adv-3002] rule deny ip source 10.1.2.0 0.0.0.255 destination 10.1.1.0 0.0.0.255
[Switch-acl-adv-3002] quit
(3)配置基于高级ACL的流分类
# 配置流分类tc1,对匹配ACL 3001和ACL 3002的报文进行分类
[Switch] traffic classifier tc1
[Switch-classifier-tc1] if-match acl 3001
[Switch-classifier-tc1] if-match acl 3002
[Switch-classifier-tc1] quit
(4)配置流行为
# 配置流行为tb1,动作为拒绝报文通过
[Switch] traffic behavior tb1
[Switch-behavior-tb1] deny
[Switch-behavior-tb1] quit
(5)配置流策略
# 定义流策略,将流分类与流行为关联
[Switch] traffic policy tp1
[Switch-trafficpolicy-tp1] classifier tc1 behavior tb1
[Switch-trafficpolicy-tp1] quit
(6)在接口下应用流策略
# 由于研发部和市场部互访的流量分别从接口GE0/0/1和GE0/0/2进入Switch,所以在接口GE0/0/1和GE0/0/2的入方向应用流策略
[Switch] interface gigabitethernet 0/0/1
[Switch-GigabitEthernet0/0/1] traffic-policy tp1 inbound
[Switch-GigabitEthernet0/0/1] quit
[Switch] interface gigabitethernet 0/0/2
[Switch-GigabitEthernet0/0/2] traffic-policy tp1 inbound
[Switch-GigabitEthernet0/0/2] quit
(7)验证配置结果
# 查看ACL规则的配置信息
[Switch] display acl 3001
Advanced ACL 3001, 1 rule
Acl's step is 5
rule 5 deny ip source 10.1.1.0 0.0.0.255 destination 10.1.2.0 0.0.0.255
[Switch] display acl 3002
Advanced ACL 3002, 1 rule
Acl's step is 5
rule 5 deny ip source 10.1.2.0 0.0.0.255 destination 10.1.1.0 0.0.0.255
# 查看流分类的配置信息
[Switch] display traffic classifier user-defined
User Defined Classifier Information:
Classifier: tc1
Operator: OR
Rule(s) : if-match acl 3001
if-match acl 3002
Total classifier number is 1
# 查看流策略的配置信息
[Switch] display traffic policy user-defined tp1
User Defined Traffic Policy Information:
Policy: tp1
Classifier: tc1
Operator: OR
Behavior: tb1
Deny
页面更新:2024-05-05
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号