ACL——命令访问控制列表

本文详细介绍如何通过命名ACL来实现网络访问控制,包括创建命名ACL、定义访问规则、应用到接口等步骤,以及具体实例演示。

命名ACL

第一步:创建一个ACL命名,要求名字字符串要唯一

命令格式:ip access-list{ standard | extended } name

第二步:定义访问控制列表

标准ACL命令格式: { permit | deny } source source-wildcard

扩展ACL命令格式: { permit | deny } protocol source source-wildcard [operatoroperand] destination destination-wildcard [operator operand] [established]

例如:

!定义访问控制列表

router(config)#ipaccess-list extended permit-one

router(config-ext-nacl)# permit tcp 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255 eq 80

!删除访问控制列表(这里可以删除某一条ACL语句)

router(config-ext-nacl)# no permit tcp 192.168.1.0 0.0.0.255 192.168.2.00.0.0.255 eq 80

第三步:应用到某一个接口上

命令格式:{ protocol } access-group name {in | out}

例如:

router(config)# int f0/0

router(config-if)ip access-group permit-one out

实验拓扑图:
在这里插入图片描述
sw配置:
接口f1/1和f1/2做vlan10
接口f1/3做vlan20
在这里插入图片描述
关闭路由功能:no ip routing
接口f1/0接口做trunk
在这里插入图片描述
sw-3配置:
配置接口f1/1的IP
配置vlan10和vlan20的网关
接口f1/0做trunk
在这里插入图片描述
在这里插入图片描述
PC1的配置:
在这里插入图片描述
PC2的配置:

PC3的配置:
在这里插入图片描述
PC4的配置:
在这里插入图片描述
证明未配置ACL前,全网互通
在这里插入图片描述
sw-3配置:
配置ACL命令为:kgc
允许192.168.10.10访问PC1
拒绝192.168.10.0网段其他访问PC1
允许其他所有网段访问PC1

设置接口f1/1为出口
在这里插入图片描述
利用PC2、PC3、PC4进行pingPC1确认实验结果:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
实验结束,设置完成

### 交换机 ACL 访问控制列表的配置与使用方法 #### Cisco 设备上的 ACL 配置 在 Cisco 的路由器和三层交换机中,ACL 是一种强大的工具,用于过滤流量并增强网络安全。以下是基于 Cisco 平台的 ACL 基本配置流程: 1. **创建标准 ACL** 标准 ACL 主要关注源 IP 地址来决定允许或拒绝特定类型的流量。可以通过以下命令实现: ```bash access-list 10 permit 192.168.1.0 0.0.0.255 ``` 上述命令表示允许来自 `192.168.1.0/24` 子网的所有流量[^1]。 2. **创建扩展 ACL** 扩展 ACL 不仅可以指定源地址,还可以定义目标地址、协议类型以及端口号等参数。例如: ```bash ip access-list extended MY_EXTENDED_ACL permit tcp any host 192.168.1.1 eq 80 deny ip any any exit ``` 这里通过扩展 ACL 允许所有主机访问 `192.168.1.1` 的 HTTP (TCP 端口 80),而其余流量则被阻止。 3. **应用 ACL 到接口** 创建完成后需将 ACL 应用到具体的网络接口上才能生效。例如,在入站方向启用 ACL: ```bash interface GigabitEthernet0/1 ip access-group MY_EXTENDED_ACL in ``` #### 华为设备上的 ACL 配置 华为也支持类似的 ACL 功能,并且其语法稍有不同。下面展示如何在其平台上完成基础操作: 1. 定义规则编号范围内的标准 ACL: ```bash acl number 2000 rule permit source 172.16.0.0 0.0.255.255 ``` 此处定义了一个名为 `2000` 的 ACL 来放行源自子网 `172.16.0.0/16` 的通信流[^2]。 2. 对于更复杂的场景可采用高级 ACL 设置方式如下所示: ```bash acl number 3000 rule deny udp source 192.168.1.0 0.0.0.255 destination-port eq 69 ``` 表明禁止任何从内部局域网发起针对 TFTP 服务(UDP 端口 69)的数据请求行为发生[^2]。 3. 将制定好的策略绑定至实际物理端口中去执行效果验证工作: ```bash interface Vlanif100 traffic-filter inbound acl 3000 ``` #### 思科与其他品牌的对比分析 尽管各主流厂商间存在细微差异,但总体逻辑一致——即先建立规则集再关联具体位置加以实施管控措施。值得注意的是,随着技术进步与发展需求变化,现代解决方案往往倾向于集成更多智能化特性以便简化运维过程同时提升效率水平[^3]。 ```python def apply_acl(vendor, action='permit', protocol=None, src_ip=None, dst_ip=None, port=None): """模拟根据不同供应商平台编写相应形式化表达式""" if vendor.lower() == 'cisco': cmd = f"{action} {protocol or ''}{src_ip and (' '+str(src_ip)) or ''}" elif vendor.lower() == 'huawei': pass # 实现省略... return cmd.strip() ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值