配置标准 ACL
地址表
学习目标
检查当前的网络配置
评估网络策略并规划 ACL 实施
配置采用数字编号的标准 ACL
配置命名标准 ACL
简介
标准 ACL 是一种路由器配置脚本,根据源地址来控制路由器应该允许还是应该拒绝数据包。本练习的主要内容是定义过滤标准、配置标准 ACL、将 ACL 应用于路由器接口并检验和测试 ACL 实施。路由器已经过配置,包括 IP 地址和 EIGRP 路由。用户执行口令是 cisco,特权执行口令是 class。
任务 1:检查当前的网络配置
步骤 1. 查看路由器的运行配置。
逐一在三台路由器的特权执行模式下使用 show running-config 命令查看运行配置。请注意,接口和路由已配置完整。将 IP 地址配置与上面的地址表相比较。此时,路由器上应该尚未配置任何 ACL。
本练习不需要配置 ISP 路由器。假设 ISP 路由器不属于您的管理范畴,而是由 ISP 管理员配置和维护。
步骤 2. 确认所有设备均可访问所有其它位置。
将任何 ACL 应用于网络中之前,都必须确认网络完全连通。如果应用 ACL 之前不测试网络连通性,排查故障可能会很困难。
有助于连通性测试的一个步骤是查看每台设备上的路由表,确保列出了每个网络。在 R1、R2 和 R3 上发出 show ip route 命令。输出应该显示,每台设备都有路由通往其连接的网络,并且有到所有其它远程网络的动态路由。所有设备均可访问所有其它位置。
虽然路由表有助于评估网络状态,但仍应使用 ping 命令测试连通性。完成以下测试:
· 从 PC1 ping PC2。
· 从 PC2 ping Outside Host。
· 从 PC4 ping Web/TFTP Server。
这些连通性测试都应该成功。
任务 2:评估网络策略并规划 ACL 实施
步骤 1. 评估 R1 LAN 的策略。
允许 192.168.10.0/24 网络访问除 192.168.11.0/24 网络外的所有位置。
允许 192.168.11.0/24 网络访问所有目的地址,连接到 ISP 的所有网络除外。
步骤 2. 为 R1 LAN 规划 ACL 实施。
用两个 ACL 可完全实施 R1 LAN 的安全策略。
在 R1 上配置第一个 ACL,拒绝从 192.168.10.0/24 网络发往 192.168.11.0/24 网络的流量,但允许所有其它流量。
此 ACL 应用于 R1 Fa0/1 接口的出站流量,监控发往 192.168.11.0 网络的所有流量。
在 R2 上配置第二个 ACL,拒绝 192.168.11.0/24 网络访问 ISP,但允许所有其它流量。
控制 R2 S0/1/0 接口的出站流量。
ACL 语句的顺序应该从最具体到最概括。拒绝网络流量访问其它网络的语句应在允许所有其它流量的语句之前。
步骤 3. 评估 R3 LAN 的策略
允许 192.168.30.0/10 网络访问所有目的地址。
拒绝主机 192.168.30.128 访问 LAN 以外的地址。
步骤 4. 为 R3 LAN 规划 ACL 实施。
一个 ACL 即可完全实施 R3 LAN 的安全策略。
在 R3 上配置该 ACL,拒绝 192.168.30.128 主机访问 LAN 以外的地址,但允许 LAN 中的所有其它主机发出的流量。
此 ACL 将应用于 Fa0/0 接口的入站流量,监控尝试离开 192.168.30.0/10 网络的所有流量。
ACL 语句的顺序应该从最具体到最概括。拒绝 192.168.30.128 主机访问的语句应在允许所有其它流量的语句之前。
任务 3:配置采用数字编号的标准 ACL
步骤 1. 确定通配符掩码。
ACL 语句中的通配符掩码用于确定要检查的 IP 源地址或 IP 目的地址的数量。若某个位为 0,则表示匹配地址中该位的值,若为 1 则忽略地址中该位的值。请记住,标准 ACL 仅检查源地址。
由于 R1 上的 ACL 拒绝所有 192.168.10.0/24 网络的流量,因此以 192.168.10 开头的任何源 IP 地址都应拒绝。鉴于 IP 地址的最后一组二进制八位数可以忽略,所以正确的通配符掩码应为 0.0.0.255。此掩码中的每组二进制八位数可以理解为“检查、检查、检查、忽略”。
R2 上的 ACL 还要拒绝 192.168.11.0/24 网络流量。可以使用同样的通配符掩码 0.0.0.255。
步骤 2. 确定语句
应在全局配置模式下配置 ACL。
标准 ACL 使用介于 1 和 99 之间的编号。R1 上的此列表使用编号 10 ,有助于记住此 ACL 监控的是 192.168.10.0 网络。
在 R2 上,访问列表 11 将拒绝从 192.168.11.0 网络发往任何 ISP 网络的流量,因此使用网络 192.168.11.0 和通配符掩码0.0.0.255 设置 deny 选项。
由于 ACL 末尾有隐式 “deny any” 语句,因此必须用 permit 选项允许所有其它流量。any 选项用于指定任何源主机。
在 R1 上执行下列配置:
R1(config)#access-list 10 deny 192.168.10.0 0.0.0.255
R1(config)#access-list 10 permit any
注:ACL 配置只有按正确顺序输入所有语句后,才会获得 Packet Tracer 的评分。
现在,请在 R2 上创建拒绝 192.168.11.0 网络并允许所有其它网络的 ACL。此 ACL 使用编号 11。在 R2 上执行下列配置:
R2(config)#access-list 11 deny 192.168.11.0 0.0.0.255
R2(config)#access-list 11 permit any
步骤 3. 将语句应用到接口。
在 R1 上,进入 Fa0/1 接口的配置模式。
发出 ip access-group 10 out 命令,将标准 ACL 应用于该接口的出站流量。
R1(config)#interface fa0/1
R1(config-if)#ip access-group 10 out
在 R2 上,进入 S0/1/0 接口的配置模式。
发出 ip access-group 11 out 命令,将标准 ACL 应用于该接口的出站流量。
R2(config)#interface s0/1/0
R2(config-if)#ip access-group 11 out
步骤 4. 检验和测试 ACL。
配置并应用 ACL 后,PC1 (192.168.10.10) 应该无法 ping 通 PC2 (192.168.11.10),因为 ACL 10 在 R1 上应用于 Fa0/1 的出站流量。
PC2 (192.168.11.10) 应该无法 ping 通 Web Server (209.165.201.30) 或Outside Host (209.165.202.158),但应能 ping 通其它所有位置,因为 ACL 11 在 R2 上应用于 S0/1/0 的出站流量。但 PC2 无法 ping 通 PC1,因为 R1 上的 ACL 10 会阻止 PC1 向 PC2 发送的应答。
步骤 5. 检查结果。
完成比例应为 67%。如果并非如此,请单击 Check Results(检查结果)查看尚未完成哪些必要部分。
任务 4:配置命名标准 ACL
步骤 1. 确定通配符掩码。
R3 的访问策略规定,应该拒绝 192.168.30.128 主机访问本地 LAN 以外的任何地址。允许 192.168.30.0 网络中的所有其它主机访问所有其它位置。
要检查一台主机,就需要检查完整的 IP 地址,可使用关键字 host 来实现。
不匹配 host 语句的所有数据包都应允许。
步骤 2. 确定语句。
在 R3 上进入全局配置模式。
发出 ip access-list standard NO_ACCESS 命令,创建名为 NO_ACCESS 的命名 ACL。您将进入 ACL 配置模式。所有 permit 和 deny 语句都在此配置模式下配置。
使用 host 选项拒绝来自 192.168.30.128 主机的流量。
使用 permit any 允许所有其它流量。
在 R3 上配置以下命名 ACL:
R3(config)#ip access-list standard NO_ACCESS
R3(config-std-nacl)#deny host 192.168.30.128
R3(config-std-nacl)#permit any
步骤 3. 将语句应用到正确的接口。
发出 ip access-group NO_ACCESS in 命令,将命名 ACL 应用于该接口的入站流量。
应用之后,即会根据该 ACL 检查从 192.168.30.0/24 LAN 进入 Fa0/0 接口的所有流量。
R3(config)#interface fa0/0
R3(config-if)#ip access-group NO_ACCESS in
步骤 4. 检验和测试 ACL。
单击 Check Results(检查结果),然后单击 Connectivity Tests(连通性测试)。以下测试会失败:
PC1 到 PC2
PC2 到Outside Host
PC2 到 Web Server
除 PC3 和 PC4之间的 ping 以外,从 PC4 或向 PC4 发出的所有 ping
步骤 5. 检查结果。
完成比例应为 100%。如果并非如此,请单击 Check Results(检查结果)查看尚未完成哪些必要部分。