我们有一个小型 VPC,其中有三个子网(WAN(公共)、LAN(私有)、DMZ(私有))。我的任务是在 WAN 子网中设置一个中央防火墙,用于监控所有到外部世界的流量以及子网之间的流量。
我的问题是监控 LAN 和 DMZ 之间的流量。我已将每个子网与路由表关联,将所有出站流量导向防火墙,这很有效。不幸的是,AWS 阻止我为子网之间的流量添加路由。在虚拟机“内部”添加路由规则只能部分解决问题,因为 LAN 包含不允许这种配置的设备。而且我觉得,从长远来看,这可能会导致更多问题……我认为将 WAN、LAN 和 DMZ 分别设为 VPC 而不是子网可能会带来解决方案,但在我看来,这是对 VPC 的严重滥用。
针对此问题的规范 AWS 解决方案是什么?
编辑 1:我正在尝试设置经典的“三个区域加中央防火墙”网络。防火墙应该监视和保护子网与各个实例之间的流量以及来自外部的流量。这包括:
- 注意异常连接并报告。(例如,wiki 无权访问 hornetq 服务器,任何此类连接都可能表明 wiki VM 已被入侵)
- 限制网络流量速率。(即允许数据库服务器发送报告电子邮件,但如果它开始每秒发送数百封电子邮件,我希望收到警报)
- 检测 DDO。
- ... 更多安全内容...
我不确定所有这些都可以通过 AWS 原生方法完成,但中央防火墙概念对我来说感觉更自然。
编辑2:网络设置的粗略简化图
网络安全组和 ACL 允许我正确分离子网并控制实例之间的连接。但我看不到执行高级操作的可能性(例如速率限制等)。我的想法是完全切断 LAN/DMZ 子网之间的流量并使用经典的网络配置:将所有流量路由到防火墙,并让它决定如何处理。不幸的是,VPC 的路由表不允许我将 VPC(或其子网)内的所有流量路由到中央防火墙。所以问题是,我如何利用 AWS 将流量从我的子网传送到我的防火墙,以便它可以完成它的工作。
答案1
答案2
AWS 没有类似 Palo Alto 等的高级防火墙。相反,他们通过安全组实现了基本过滤,可以控制入站和出站流量。在这里,您可以根据协议、IP 等设置过滤。此外,您还可以创建一个网络 ACL,该 ACL 可以分层在安全组之上,以便对子网之间的数据流进行更细粒度的控制。
Google:AWS 安全组与网络 ACL
听起来您正在寻找更高级的防火墙设置,以便限制数据流、进行数据包检查等。在这种情况下,您需要设置防火墙服务器。至少您需要一个位于三个子网(WAN、LAN、DMZ)上的防火墙。以下提供了您正在寻找的详细示例。
https://campus.barracuda.com/product/nextgenfirewallf/article/NGF70/AWSRouteTableMutliNIC/
不过,我强烈建议设计一个使用多个可用区域和负载均衡器的高可用性解决方案。有许多解决方案可以提供弹性架构。