您可以允许传出数据包,但随后需要允许响应。一种方法是允许任何已建立连接的后续数据包。
access-list ??? permit tcp any any established
但这是如何工作的?检查established
NAT 配置就足够了吗?我想知道我是否应该为每个响应数据包组创建一个特定的锁定规则,例如,我可能将此规则用于传出。(Vlan1 IN 的访问列表)
access-list ??? permit tcp 192.168.1.0 0.0.0.255 gt 1023 any eq www
这是响应。(FastEthernet4 IN 的访问列表)
access-list ??? permit tcp any eq www --WAN IP-- gt 1023 established
permit
established
为每条传出规则添加一条规则是否更安全permit
?还是说这样做只会降低性能?
答案1
鉴于内部有 Vlan1 且外部有 Fa4,我了解您正在研究 8xx 系列吗?
而不是通过established
使用 IOS 防火墙的基于上下文的访问控制功能 (CBAC) 来解决问题。
使用deny ip any any
外部接口上的 或等效项 - 正如您所说,需要存在某种方法允许从内部 -> 外部发起的合法流量重新进入,而无需诉诸粗俗的语言或permit ip any any
。 established
是一种方法,但相当晦涩难懂,因为它仅适用于 TCP,对 UDP 造成一点麻烦。相反,使用涉及 的 CBAC,ip inspect
您可以实现目标没有涉及established
关键字的 ACE。ACL 仍可在外部接口上使用,但它们对于此特定目标而言不是必需的。
请注意,CBAC 还能够对突破防火墙和 NAT 边界的协议执行应用层网关 (ALG)/修复。在下面的示例中,我将提供一些示例。
最简单的方法是定义一个 CBAC 检查集,然后在外部接口的in
和方向上应用它。out
首先定义的是通用的tcp
,udp
以使一般的 tcp 和 udp 流量正常工作。然后是一些 ALG
! Define CBAC inspection group in global configuration mode
ip inspect name outside_inspection tcp
ip inspect name outside_inspection udp
ip inspect name outside_inspection ftp
ip inspect name outside_inspection tftp
ip inspect name outside_inspection h323
ip inspect name outside_inspection icmp
ip inspect name outside_inspection pptp
! Enable CBAC on outside interface
interface FastEthernet4
description outside interface
ip inspect name outside_inspection in
ip inspect name outside_inspection out
! ip access-group, ip nat, and others possible as well on FastEthernet4