以下是基于华为VRP系统(eNSP模拟器常用)编写的上述5道练习题的命令答案。
配置说明:
- 高级ACL编号范围:3000-3999。
- 关键原则:通常将ACL应用在离源地址最近的路由器接口入方向(Inbound)。
练习题 1:基础源目的IP限制
需求:禁止 PC1 (10.10.10.10) 访问 AR3 的 Loopback0 (3.3.3.3)。
在 AR1 上配置:
[AR1]acl3000[AR1-acl-adv-3000]rule denyipsource10.10.10.100destination3.3.3.30[AR1-acl-adv-3000]rule permitip# 华为默认末尾允许,显式写出更清晰[AR1-acl-adv-3000]quit[AR1]interface GigabitEthernet0/0/1[AR1-GigabitEthernet0/0/1]traffic-filter inbound acl3000练习题 2:指定子网访问控制(通配符掩码)
需求:禁止 PC5 所在子网 (10.10.10.128/25) 访问 PC3 (10.10.30.10)。
解析:掩码 /25 是255.255.255.128,对应的反掩码(Wildcard Mask)是0.0.0.127。
在 AR1 上配置:
[AR1]acl3001[AR1-acl-adv-3001]rule denyipsource10.10.10.1280.0.0.127 destination10.10.30.100[AR1-acl-adv-3001]quit[AR1]interface GigabitEthernet0/0/1[AR1-GigabitEthernet0/0/1]traffic-filter inbound acl3001练习题 3:特定协议与服务端口限制
需求:禁止 PC2 (10.10.20.10) Telnet 访问 AR2 的接口地址,但允许 Ping。
在 AR1 上配置:
[AR1]acl3002# 拒绝发往AR2两个主要接口IP的TCP 23端口流量[AR1-acl-adv-3002]rule deny tcpsource10.10.20.100destination10.10.12.20destination-port eq23[AR1-acl-adv-3002]rule deny tcpsource10.10.20.100destination10.10.30.2540destination-port eq23[AR1-acl-adv-3002]quit[AR1]interface GigabitEthernet0/0/2[AR1-GigabitEthernet0/0/2]traffic-filter inbound acl3002练习题 4:基于ICMP类型的细粒度控制
需求:禁止 PC3 (10.10.30.10) Ping 通 PC1 (10.10.10.10),但允许反向 Ping 通。
解析:Ping 使用 ICMP 协议。禁止 Ping 的关键是拦截echo请求(type 8),而不拦截echo-reply(type 0)。
在 AR2 上配置:
[AR2]acl3003# 拒绝PC3发出的ICMP Echo请求[AR2-acl-adv-3003]rule deny icmpsource10.10.30.100destination10.10.10.100icmp-typeecho[AR2-acl-adv-3003]quit[AR2]interface GigabitEthernet0/0/2[AR2-GigabitEthernet0/0/2]traffic-filter inbound acl3003练习题 5:综合业务流量过滤
需求:允许 PC1 访问 PC3 的 Web 服务(TCP 80);禁止 10.10.10.0/24 访问 AR3 (10.10.23.3)。
在 AR1 上配置:
[AR1]acl3004# 规则1:先放行特定主机的特定服务(必须放在拒绝整网段规则之前)[AR1-acl-adv-3004]rule5permit tcpsource10.10.10.100destination10.10.30.100destination-port eq80# 规则2:拒绝整个10网段访问AR3[AR1-acl-adv-3004]rule10denyipsource10.10.10.00.0.0.255 destination10.10.23.30[AR1-acl-adv-3004]quit[AR1]interface GigabitEthernet0/0/1[AR1-GigabitEthernet0/0/1]traffic-filter inbound acl3004💡 常用检查命令:
- 查看 ACL 规则及匹配统计:
display acl 3000 - 查看接口下 ACL 应用情况:
display traffic-filter applied-record - 如果在实验中发现不生效,请检查各路由器之间的静态路由或OSPF 动态路由是否已配置,确保在没有 ACL 的情况下全网是互通的。
基于更复杂的网络管理需求,5道高级ACL实操练习题。这组题目增加了基于时间段(Time-range)、FTP/UDP协议细化控制以及网络拓扑安全加固的场景。
练习题 6:基于时间段的访问控制
实验需求:
公司规定,PC1 (10.10.10.10)在工作时间(周一至周五 08:30 到 18:00)可以访问AR3 的 Loopback0 (3.3.3.3),但在非工作时间禁止访问,以减少非业务流量。
- 考核点:
time-range的定义与 ACL 规则的关联。 - 建议配置位置:AR1。
练习题 7:FTP 服务精确访问控制
实验需求:
假设 AR3 开启了 FTP 服务(用于备份配置文件)。
要求配置 ACL 允许PC2 (10.10.20.10)访问AR3 (3.3.3.3)的 FTP 服务,但禁止10.10.10.0/24 网段的所有主机访问该 FTP 服务。注意:FTP 使用 TCP 21 端口进行控制。
- 考核点:特定协议端口(FTP/21)的过滤及不同网段的权限差异。
- 建议配置位置:AR1 或 AR2。
练习题 8:防止网络探测(Tracert 限制)
实验需求:
为了隐藏网络路径,要求在 AR1 上进行配置,禁止任何外部主机(如 PC2、PC3)通过Tracert探测到PC1 (10.10.10.10)。
提示:Tracert 在 Windows 上通常使用 ICMP,而在路由器/Linux上通常使用高位 UDP 端口(33434及以上)。这里请针对 UDP 端口进行拦截。
- 考核点:UDP 协议范围控制(端口号范围匹配)。
- 建议配置位置:AR1 的 GE 0/0/0 入方向。
练习题 9:防止子网间的“横向移动”攻击
实验需求:
安全审计要求,限制不同业务网段间的直接互访。
禁止10.10.20.0/24 (PC2所在)网段的主机访问10.10.10.0/24 (PC1/PC5所在)网段内的任何主机,但允许10.10.20.0/24访问AR3 (3.3.3.3)。
- 考核点:子网对子网的流量隔离。
- 建议配置位置:AR1 的 GE 0/0/2 入方向。
练习题 10:管理平面保护(针对设备自身的ACL)
实验需求:
只允许管理员主机PC3 (10.10.30.10)能够Telnet到AR1 (1.1.1.1)进行设备管理。禁止网络中其他任何主机(PC1, PC2, PC5)Telnet 到 AR1。
- 考核点:ACL 与 用户界面(User-interface vty)的结合使用。
- 建议配置位置:AR1(应用在 VTY 线路中)。
📖 答案参考(华为命令):
答案 6 (时间段):
[AR1]time-range worktime 08:30 to18:00 working-day[AR1]acl3005[AR1-acl-adv-3005]rule permitipsource10.10.10.100destination3.3.3.30time-range worktime[AR1-acl-adv-3005]rule denyipsource10.10.10.100destination3.3.3.30[AR1]interface g0/0/1[AR1-GigabitEthernet0/0/1]traffic-filter inbound acl3005答案 7 (FTP控制):
[AR3]acl3006[AR3-acl-adv-3006]rule permit tcpsource10.10.20.100destination3.3.3.30destination-port eq21[AR3-acl-adv-3006]rule deny tcpsource10.10.10.00.0.0.255 destination3.3.3.30destination-port eq21[AR3]interface g0/0/1[AR1-GigabitEthernet0/0/1]traffic-filter inbound acl3006答案 8 (防止Tracert):
[AR1]acl3007# 拦截UDP高位端口探测[AR1-acl-adv-3007]rule deny udp destination-port range3343433534[AR1]interface g0/0/0[AR1-GigabitEthernet0/0/0]traffic-filter inbound acl3007答案 9 (子网隔离):
[AR1]acl3008[AR1-acl-adv-3008]rule denyipsource10.10.20.00.0.0.255 destination10.10.10.00.0.0.255[AR1]interface g0/0/2[AR1-GigabitEthernet0/0/2]traffic-filter inbound acl3008答案 10 (VTY安全):
[AR1]acl2000# 管理访问通常用基本ACL即可,也可以用高级ACL 3009[AR1-acl-basic-2000]rule permitsource10.10.30.100[AR1-acl-basic-2000]rule denysourceany[AR1]user-interface vty04[AR1-ui-vty0-4]acl2000inbound为了确保上述10道ACL练习题的配置正确生效,以下是一份详尽的测试说明书。它将指导你如何通过“正向验证”(允许的流量)和“反向验证”(拒绝的流量)来确认实验结果。
综合实验测试说明书 (高级ACL验证)
一、 验证工具准备
- 终端工具:使用 eNSP 中 PC 的
Command 命令行或路由器的ping/telnet命令。 - 抓包工具:在 AR1 的 GE 0/0/0、0/0/1 接口开启 Wireshark 抓包观察报文丢弃。
- 状态检查:所有测试前,请确保
display ip routing-table能够看到全网路由。
二、 逐题测试步骤与预期结果
1. 基础限制测试 (PC1 访问 AR3 Loopback0)
- 测试动作:在PC1命令行执行
ping 3.3.3.3。 - 预期结果:请求超时(Destination Host Unreachable/Timeout)。
- 对比测试:在PC2命令行执行
ping 3.3.3.3。预期结果:成功。
2. 子网掩码匹配测试 (PC5 访问 PC3)
- 测试动作:在PC5(10.10.10.192) 执行
ping 10.10.30.10。 - 预期结果:失败(匹配了 128/25 的 deny 规则)。
- 对比测试:在PC1(10.10.10.10) 执行
ping 10.10.30.10。预期结果:成功。
3. 服务限制测试 (PC2 Telnet AR2)
- 测试动作 1:在PC2执行
telnet 10.10.12.2。预期结果:连接失败。 - 测试动作 2:在PC2执行
ping 10.10.12.2。预期结果:成功。
4. ICMP 细粒度控制测试 (单向 Ping)
- 测试动作 1:在PC3执行
ping 10.10.10.10。预期结果:失败(Echo Request 被拦截)。 - 测试动作 2:在PC1执行
ping 10.10.30.10。预期结果:成功(Echo Reply 未被拦截)。
5. 综合业务测试 (Web 与 整段限制)
- 测试动作 1:在PC1尝试连接PC3的 80 端口(eNSP可用
telnet 10.10.30.10 80模拟)。预期结果:成功/显示连接。 - 测试动作 2:在PC1或同一网段其他主机执行
ping 10.10.23.3。预期结果:失败。
6. 时间段控制测试 (工作时间访问)
- 环境准备:在 AR1 使用命令
clock datetime 10:00:00 2023-10-23(周一) 模拟上班时间;使用clock datetime 20:00:00 2023-10-23模拟下班时间。 - 测试动作:分别在两个模拟时间点从PC1
ping 3.3.3.3。 - 预期结果:上午 10 点成功,晚上 8 点失败。
7. FTP 精确控制测试
- 环境准备:AR3 需开启 FTP 服务 (
ftp server enable) 并配置用户。 - 测试动作 1:在PC2执行
ftp 3.3.3.3。预期结果:出现登录提示。 - 测试动作 2:在PC1执行
ftp 3.3.3.3。预期结果:连接失败。
8. 防探测测试 (Tracert 拦截)
- 测试动作:从PC2执行
tracert 10.10.10.10。 - 预期结果:路径在到达 AR1 时出现
* * *,无法看到 PC1 的响应。
9. 横向移动安全测试 (子网隔离)
- 测试动作 1:在PC2执行
ping 10.10.10.10。预期结果:失败。 - 测试动作 2:在PC2执行
ping 3.3.3.3。预期结果:成功。
10. 管理平面安全测试 (VTY 限制)
- 测试动作 1:在PC3执行
telnet 1.1.1.1。预期结果:允许输入密码。 - 测试动作 2:在PC1或PC2执行
telnet 1.1.1.1。预期结果:连接被拒。
三、 关键状态维护命令 (排错必用)
如果在测试中发现结果不符合预期,请按顺序使用以下命令:
- 查看规则匹配次数:
display acl all# 重点观察:Matched times。如果匹配次数为0,说明流量没有经过该ACL规则。 - 查看接口应用状态:
display traffic-filter applied-record# 确认 ACL 是否应用在了正确的接口(GE0/0/x)和正确的方向(inbound/outbound)。 - 重置匹配计数器(用于重新测试时清除干扰):
reset acl counter all - 检查时间段是否生效:
display time-range all# 确认当前系统时间是否落在定义的时间范围内(Active/Inactive)。
四、 常见失败原因分析
- 全网路由不通:在配置 ACL 之前,没有确保全网 Ping 通,导致无法区分是路由问题还是 ACL 拦截。
- 反掩码配置错误:例如
10.10.10.0 0.0.0.255错写成255.255.255.0。 - 规则顺序问题:较窄的规则(如主机规则)被放到了较宽的规则(如网段规则)之后。
- 应用方向错误:在 GE 0/0/1 的
outbound应用了拦截源为 PC1 的规则(应为inbound)。