1、什么是ACL?
访问控制列表ACL(Access Control List)是由一条或多条规则组成的集合。所谓规则,是指描述报文匹配条件的判断语句,这些条件可以是报文的源地址、目的地址、端口号等。
ACL本质上是一种报文过滤器,规则是过滤器的滤芯。设备基于这些规则进行报文匹配,可以过滤出特定的报文,并根据应用ACL的业务模块的处理策略来允许或阻止该报文通过。
2、ACL可以做什么?
借助ACL,可以实现以下功能:
- 提供安全访问:企业重要服务器资源被随意访问,企业机密信息容易泄露,造成安全隐患。使用ACL可以指定用户访问特定的服务器、网络与服务,从而避免随意访问的情况。
- 防止网络攻击:Internet病毒肆意侵略企业内网,内网环境的安全性堪忧。使用ACL可以封堵高危端口,从而达成为外网流量的阻塞。
- 提高网络带宽利用率:网络带宽被各类业务随意挤占,服务质量要求最高的语音、视频业务的带宽得不到保障,造成用户体验差。使用ACL实现对网络流量的精确识别和控制,限制部分网络流量从而保障主要业务的质量。
基本ACL
ACL编号:2000~2999。基本ACL规则只包含源IP地址,对设备的CPU消耗较少,可用于简单的部署,但是使用场景有限,不能提供强大的安全保障。
基本 ACL 接口调用方向的建议
基本 ACL 尽量调用在离目标最近的出站方向
需求描述:
- 禁止PC1访问服务器Server1
- 允许其他所有的访问流量
主机 | IP | 子网掩码 | 网关 |
PC1 | 192.168.10.1 | 255.255.255.0 | 192.168.10.254 |
PC2 | 192.168.20.1 | 255.255.255.0 | 192.168.20.254 |
SERVER1 | 10.0.0.1 | 255.255.255.0 | 10.0.0.254 |
3、R1 路由器
[HUAWEI]sys
[HUAWEI]un in en
[R1]sys R1
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip addr 10.0.0.254 24
[R1-GigabitEthernet0/0/0]int g0/0/1
[R1-GigabitEthernet0/0/1]ip addr 192.168.10.254 24
[R1-GigabitEthernet0/0/1]int g0/0/2
[R1-GigabitEthernet0/0/2]ip addr 192.168.20.254 24
4、ACl 配置
# 创建 ACL
[R1]acl 2000
# 拒绝来源地址 192.168.10.0/24
[R1-acl-basic-2000]rule 5 deny source 192.168.10.0 0.0.0.255
# 允许其它全部流量
[R1-acl-basic-2000]rule 10 permit source any
[R1-acl-basic-2000]quit
# g0/0/0接口 出站流量绑定 acl 2000
[R1]int g0/0/0
[R1-GigabitEthernet0/0/1]traffic-filter outbound acl 2000
5、测试
(1)PC1 可以访问 PC2
PC1>ping 192.168.20.1
Ping 192.168.20.1: 32 data bytes, Press Ctrl_C to break
From 192.168.20.1: bytes=32 seq=1 ttl=127 time=16 ms
From 192.168.20.1: bytes=32 seq=2 ttl=127 time<1 ms
From 192.168.20.1: bytes=32 seq=3 ttl=127 time<1 ms
From 192.168.20.1: bytes=32 seq=4 ttl=127 time=15 ms
From 192.168.20.1: bytes=32 seq=5 ttl=127 time=16 ms
--- 192.168.20.1 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 0/9/16 ms
(2)PC1 不能访问 SERVER1
PC1>ping 10.0.0.1
Ping 10.0.0.1: 32 data bytes, Press Ctrl_C to break
Request timeout!
Request timeout!
Request timeout!
Request timeout!
Request timeout!
--- 10.0.0.1 ping statistics ---
5 packet(s) transmitted
0 packet(s) received
100.00% packet loss
(3)PC2 可以访问 SERVER1
PC2>ping 10.0.0.1
Ping 10.0.0.1: 32 data bytes, Press Ctrl_C to break
From 10.0.0.1: bytes=32 seq=1 ttl=254 time=16 ms
From 10.0.0.1: bytes=32 seq=2 ttl=254 time<1 ms
From 10.0.0.1: bytes=32 seq=3 ttl=254 time=16 ms
From 10.0.0.1: bytes=32 seq=4 ttl=254 time=15 ms
From 10.0.0.1: bytes=32 seq=5 ttl=254 time=16 ms
--- 10.0.0.1 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 0/12/16 ms
6、ACL 命令
# 删除整个 ACL
[R1]undo acl 2000
# 删除某个规则
[R1]acl 2000
[R1]undo rule 5
# 查看 ACL
[R1]dis acl 2000