Cisco Catalyst ACL 单向发起的流量

网络工程 思科 cisco催化剂 ACL
2021-07-16 16:27:46

我正在尝试在我的核心路由器上设置 ACL,我有以下网络:

  • 数据 (192.168.32.0/24)
  • 语音 (192.168.42.0/24)
  • 访客 (192.168.100.0/24)
  • 质量保证 (192.168.101.0/24)

我想要以下流量:

  1. 仅语音到互联网和数据
  2. 仅访客到互联网(不可能有任何本地网络)
  3. 数据到语音、互联网并启动与 QA 的连接
  4. 对互联网进行 QA 并响应从数据发起的连接(不可能与任何本地网络建立新连接)

我有以下 ACL:

ip access-list extended guest-in
 deny ip any 192.168.0.0 0.0.255.255
 deny ip any 10.0.0.0 0.255.255.255
 deny ip any 172.16.0.0 255.255.0.0
 permit ip any any

ip access-list extended guest-out
 deny ip any 192.168.0.0 0.0.255.255
 deny ip any 10.0.0.0 0.255.255.255
 deny ip any 172.16.0.0 255.255.0.0
 permit ip any any

ip access-list extended qa-in
 // how to please allow tracked connections initiated from user to QA?
 deny ip any 192.168.0.0 0.0.255.255
 deny ip any 10.0.0.0 0.255.255.255
 deny ip any 172.16.0.0 255.255.0.0
 permit ip any any

ip access-list extended user-out
 allow ip any 192.168.101.0 0.0.0.255
 deny ip any 192.168.100.0 0.0.255.255
 permit ip any any

有没有更简单的方法来执行上述操作,我如何允许从数据启动跟踪连接到 QA 允许(但不是 QA 启动到数据的连接)?

2个回答

作为旁注,在您的访客和 QA ACL 上,您对前 2 个 ACE 使用通配符掩码,而对第三个 (172.16.0.0 255.255.0.0) 使用子网掩码。这也是错误的。172.16.0.0(在 RFC 1918 中定义)是一个 /12 网络,因此您的掩码应该是 255.240.0.0(子网掩码)或 0.15.255.255(通配符掩码)。无论它是期望的是什么决定了你使用哪个。您需要使用 ? 命令看看它在期待什么。我所知道的任何设备都不会阻止您在 ACL 中输入您想要的任何内容,即使它是错误的。你可以直接输入 222.222.222.0 的掩码,它会接受它。

如果您使用的是较新的 Cisco 路由器,我会检查基于区域的防火墙来解决您的数据到 QA 问题。传统 ACL 是无状态的,因此它们不会记住任何连接状态。使用 ZBF,区域是有状态的,因此允许从数据发起到 QA 的返回流量,同时阻止从 QA 发起到数据的流量。

以下是思科关于基于区域的防火墙的设计指南:https : //www.cisco.com/c/en/us/support/docs/security/ios-firewall/98628-zone-design-guide.html