为什么 AWS NACL 是无状态的?

Why is AWS NACL stateless?

据我了解,无状态防火墙更多地用于数据包过滤。为什么 AWS NACL 是无状态的?

NACL 强制为临时端口打开的端口范围太大。

除了安全组之外,还有其他方法可以在 AWS 上创建状态防火墙吗?安全组感觉过于细化,可能会被错误地忽略。

网络访问控制列表 (ACL) 模仿在硬件路由器上实施的传统防火墙。此类路由器用于分隔子网并允许创建单独的区域,例如 DMZ。它们纯粹根据数据包的内容进行过滤。那是他们的工作。

安全组 是 AWS 中的一项新增功能,可在资源级别 提供firewall-like 功能。 (准确地说,它们附加到弹性网络接口,ENI)。它们是 有状态的,这意味着它们允许 return 流量流动。

一般来说,建议将 NACL 保留为默认设置(允许所有流量进出)。仅当有特定需要在子网级别阻止某些类型的流量时才应更改它们。

安全组是控制进出 VPC-attached 资源的有状态流量的理想方式。它们是创建状态防火墙的方式。 VPC 不提供其他此类功能。如果您想要不同的东西,您可以通过充当 NAT 的 Amazon EC2 实例路由流量,然后您将完全控制它的行为方式。

NACl 是无状态的。这意味着默认情况下访问在入站和出站时被拒绝。如果您允许某些流量(TCP 或其他)入站,则必须明确允许出站(当然,如果您想要的话)。