ACL简介
- ACL即访问控制列表,可以通过ACL规则来过滤报文,实现允许或拒绝的动作
- ACL分为软件ACL和硬件ACL,软件ACL即通过软件来实现报文过滤,如通过FTP、TELNET、SNMT、HTTP、路由协议等引用的ACL。
- 硬件ACL指通过下发ACL资源到硬件来实现,如通过流策略中应用的ACL
ACL分类(本文只介绍基本ACL和高级ACL,其他不做概述)
- 基本ACL,只能使用源IP,分片信息和生效时间段来定义规则。编号范围:2000-2999
- 高级ACL,可以使用五元组(源目IP、源目端口、协议类型)和生效时间来定义规则。编号范围:3000-3999
ACL配置举例
注意:ACL在ensp中配置不生效,如果在生产环境中做实验,谨慎!谨慎!再谨慎!
拓扑

拓扑
需求
- Server2需要访问Server1的8443端口,Server1访问Server2不做限制,两台服务器需要能互相ping通
交换机配置(IP和VLAN配置此处不列出)
SW1交换机配置
- 新建ACL3001
[1F-jieru-99.2]acl 3001
Info: When the ACL that is referenced by SACL is modified, the SACL will be dynamically updated. During the update, these SACL will become invalid temporarily.
[1F-jieru-99.2-acl-adv-3001]dis this
#
acl number 3001
rule 5 permit tcp source 192.168.40.238 0 destination 10.0.99.21 0 destination-port eq 8443
###放通Server2到Server1的8443端口
rule 10 permit tcp source 192.168.40.238 0 destination 10.0.99.21 0 tcp-flag established
###放通Server2到Server1的ack和syn报文,即当Server1主动发起访问Server2时,不会因为rule100的deny规则导致无法回包
rule 15 permit icmp source 192.168.40.238 0 destination 10.0.99.21 0
###放通Server2到Server1的icmp报文
rule 100 deny ip source 192.168.40.238 0 destination 10.0.99.21 0
#
return
[1F-jieru-99.2-acl-adv-3001]
- 创建流分类和流动作
#
traffic classifier a1 operator or
if-match acl 3001
#
traffic behavior b1
permit
#
- 创建流策略并将流分类和流动作相关联
#
traffic policy c1
classifier a1 behavior b1
#
- 在接口中应用流策略
interface GigabitEthernet0/0/22
description To-Server-Switch
port link-type access
port default vlan 40
stp edged-port enable
traffic-policy c1 inbound
dhcp snooping enable
结果验证
-
从Server2 telnet Server1的8443端口(已放通)
1.1 -
从Server2 telnet Server1的8088端口(未放通)
1.2 -
Server2和Server1互ping
2.1
2.2 -
从Server1 telnet Server2的443端口
3.1
总结
- 配置ACL要注意引用的接口方向(inbound or outbound)是否正确,否则会导致ACL不生效
- 数据包是双向的,如果单向deny了会导致无法回包
- 在生产环境中配置一定要小心!!!




