Cisco交换机ACL的配置

本文详细介绍了访问控制列表(ACL)的概念及应用,包括标准ACL与扩展ACL的区别与配置方法,并通过实例演示如何实现精确的流量控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

访问控制列表(Access Control List   ACL)的含义和作用就不讲了,自行百度

一 .ACL讲解

ACL分标准访问控制列表(Standard ACL)和拓展访问控制列表(Extended ACL),如下

① 标准ACL(访问控制列表号1—99或1300—1999)
只过滤源地址,允许或禁止整个TCP/IP协议族
一般配置在靠近流量目的地的接口
配置方法如下:
router(config)#access-list 1 permit 172.16.0.0 0.0.255.255
router(config)#access list 1 deny any //系统隐含条件(implicit deny any)
router(config)#interface F0/0
router(config-if)#ip access-group 1 in
router(config-if)#exit
router(config)#interface F0/1
router(config-if)#ip access-group 1 out
router(config-if)#no ip access-group 1 out //在端口上卸除ACL绑定


值得注意的是要改变ACL列表条件只能删除整个表:
router(config)#no access-list 1


②拓展ACL(访问控制列表标号100-199或2000-2600)
过滤源或目的地址,允许或拒绝一个具体的协议和端口号
一般放在靠近流量源头处
用到端口号时常用的英文缩写   it gt eq neq(<、>、=、≠)
常见熟知端口号:
20 文件传输协议(FTP)数据通道
21 文件传输协议(FTP)控制通道
23 远程登录(Telnet)
25 简单邮件传输协议(SMTP)
53 域名服务系统(DNS)
69 普通文件传输协议(TFTP)
80 超文本传输协议(HTTP)
例1:
router(config)#access-list 101 deny ip 172.16.4.0 0.0.0.255 host 10.8.1.128
router(config)#access-list 101 permit ip 172.16.4.0 0.0.0.255 10.8.0.0 0.0.255.255
router(config)#access-list 101 deny ip any any //系统隐含条件(implicit denyall)
router(config)#interface s0
router(config-if)#ip access-group 101 out
router(config)#access-list 102 deny ip 172.16.3.0 0.0.0.255 host 172.16.4.10 eq 21
router(config)#access-list 102 deny ip 172.16.3.0 0.0.0.255 host 172.16.4.10 eq 20
router(config)#interface f0/0
router(config-if)#ip access-group 102 out


例2:
允许192.168.10.10 ping 172.16.1.1,禁止反向测试:
router(config)#access-list 199 deny icmp host 192.168.10.10 host 172.16.1.1 echo
router(config)#access-list 199 deny icmp host 192.168.10.10 host 172.16.1.1 echo reply
router(config)#access-list 199 permit ip any any

③命名IP ACL(Cisco IOS v11.2以后支持)
例:
router(config)#access-list standard acl_1 //注明standard还是extended控制列表,名字可使用大多数字符
router(config-std-nac)#permit 172.18.0.0 0.0.255.255 log
router(config-std-nac)#no permit 172.18.0.0 0.0.255.255 log //no 命令移去特定语句
router(config)#interface f0/0
router(config-if)#ip access-group acl_1 out




④查看ACL列表
router(config)# show ip interface e0 //查看接口ACL绑定情况
router(config)# show accesslists //监视ACL内容
router(config)#show access-list [acl表号]】

二.实例


拓扑图如下(路由配置用的是RIP),其中DNS服务器中有两条记录:

ns.shzu.edu.cn 2.2.2.200

ftp.shzu.edu.cn 2.2.2.100


实验要求:

①1.1.1.0/24网段中的所有节点能ping通2.2.2.0/24网段中的DNS服务器,而无法ping通其他节点

②2.2.2.0/24网段中的节点不能访问Internet(即不能ping 通R2之后的节点)


实验过程

①配置R1


②配置R2


③测试



至此实验结束,ACL配置过程中其他值得注意的一些地方总结如下:

访问控制列表的顺序决定被检验的顺序,特殊规则放在最前面(如针对某个主机)
每个列表至少有一个允许语句
每个接口,每个协议,每个方向上只能绑定一个ACL列表





### Cisco 交换机 ACL 配置方法与示例 #### 基本概念 访问控制列表 (Access Control List, ACL) 是一种用于过滤网络流量的安全机制。它可以通过定义规则来允许或拒绝特定类型的流量,从而增强网络安全性和可控性。CiscoACL 支持两种主要类型:标准 ACL 和扩展 ACL。 --- #### 标准 ACL 配置 标准 ACL 主要基于源 IP 地址进行匹配。以下是配置命名标准 ACL 的具体步骤: 1. **删除旧的 ACL(如果存在)** 使用 `no` 命令清除现有的 ACL。 ```bash Router(config)# no access-list 1 ``` 2. **创建命名标准 ACL** 定义一个新的命名标准 ACL 并指定规则。 ```bash Router(config)# ip access-list standard NAME_OF_ACL Router(config-std-nacl)# permit SOURCE_IP MASK Router(config-std-nacl)# deny ANY_SOURCE ``` 示例: ```bash Router(config)# ip access-list standard ALLOW_192 Router(config-std-nacl)# permit 192.168.1.0 0.0.0.255 Router(config-std-nacl)# deny any ``` 3. **将 ACL 应用接口** 进入目标接口并绑定 ACL 到入口或出口方向。 ```bash Router(config-if)# interface INTERFACE_NAME Router(config-if)# ip access-group NAME_OF_ACL {in | out} ``` 示例: ```bash Router(config-if)# interface FastEthernet0/0 Router(config-if)# ip access-group ALLOW_192 out ``` 以上过程展示了如何在 Cisco 路由器上配置一个简单的命名标准 ACL[^2]。 --- #### 扩展 ACL 配置 扩展 ACL 不仅可以根据源地址还可以根据目的地址、协议类型以及端口号等更复杂的条件进行匹配。 1. **创建扩展 ACL** 创建扩展 ACL 并添加规则。 ```bash Router(config)# ip access-list extended NAME_OF_ACL Router(config-ext-nacl)# permit PROTOCOL SOURCE_IP MASK DESTINATION_IP MASK [OPERATOR PORT_NUMBER] Router(config-ext-nacl)# deny PROTOCOL ANY_ANYWHERE ``` 示例: ```bash Router(config)# ip access-list extended SECURE_HTTP Router(config-ext-nacl)# permit tcp host 192.168.1.1 eq www any Router(config-ext-nacl)# deny tcp any any eq telnet Router(config-ext-nacl)# permit ip any any ``` 2. **应用扩展 ACL** 同样需要将其绑定至某个接口的方向。 ```bash Router(config-if)# ip access-group NAME_OF_ACL {in | out} ``` 示例: ```bash Router(config-if)# interface GigabitEthernet0/1 Router(config-if)# ip access-group SECURE_HTTP in ``` 此部分描述了扩展 ACL 的灵活性及其应用场景[^2]。 --- #### 华为对比示例 为了更好地理解不同厂商之间的差异,以下是一个华为设备上的简单 ACL 配置实例: 1. **创建基本 ACL** ```bash [Huawei] acl number 2001 [Huawei-acl-basic-2001] rule permit source 192.168.2.1 0 [Huawei-acl-basic-2001] rule deny source any ``` 2. **应用 ACL接口** ```bash [Huawei]interface GigabitEthernet 0/0/1 [Huawei-GigabitEthernet0/0/1] undo traffic-filter inbound [Huawei-GigabitEthernet0/0/1] traffic-filter inbound acl 2001 ``` 尽管语法有所不同,但功能逻辑相似[^5]。 --- #### 注意事项 - ACL 的顺序非常重要,默认情况下会按照输入顺序依次执行规则。 - 如果未显式声明最后一条规则,则默认隐含有一条 “deny all” 规则。 - 推荐尽量减少复杂度,在满足业务需求的前提下优化规则数量。 ---
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值