所有 AWS 实例的堡垒服​​务器

Bastion Server for all AWS instances

我在所有 AWS 区域有超过 30 个生产 Windows 服务器。我想从一台基本堡垒主机连接所有服务器。任何人都可以让我知道哪个是好的选择吗?我如何设置一台堡垒主机来与不同区域和不同 VPC 的所有服务器进行通信?请问有人对此有什么建议吗?

首先,我想问一下你想用单一的堡垒设计实现什么?例如,如果你只想执行自动化命令或补丁,那么分别使用 AWS System Manager Run Commands or AWS System Manager Patch Manager 会更有效(也更便宜)。借助 AWS System Manager,您将获得一项托管服务,该服务提供内置最高安全原则的高级管理功能。此外,使用 SSM 几乎所有访问权限都可以通过 IAM 权限策略进行管理。

不过,如果您需要为 SSM 不支持的其他目的设置堡垒主机,答案包括您需要执行的几个步骤。 首先,由于您正在处理多个 VPC(跨区域),因此连接它们并从堡垒的 VPC 访问它们的一种方法是设置 Inter-Region Transit Gateway。但是,除其他外,您需要确保您的 VPC(和子网)CIDR 范围不重叠。否则无法正确安排路由表。

其次,您需要安排在目标安全组的入站连接中允许来自堡垒的访问。因为,你正在处理 peered VPCs you will need to properly allow your inbound access based on CIDR ranges.

最后,您需要决定如何保护对 Windows Bastion 主机的访问。与几乎所有依赖 Amazon EC2 实例的用例一样,我会强调将所有实例保留在私有子网中。从私有子网,您始终可以通过 NAT 网关(或 NAT 实例)访问互联网,并防止未经授权的外部访问尝试。因此,如果您的堡垒位于私有子网中,您可以使用 SSM to establish a port-forwarding session to your local machine 的功能。通过这种方式,您可以自己启用连接,而您的堡垒也可以在私有子网中得到保护。

总的来说,这个问题的答案涉及很多复杂性和组件,肯定会向您的 AWS 账户收取费用。因此,明智的做法是考虑您要解决的实际问题(未在问题中分享)?之后,您可以评估是否有适用的托管服务,如 AWS 已经提供的 SSM。最后,从安全角度来看,从单一堡垒授予对所有实例的访问权限可能不是最佳实践。如果您考虑堡垒因任何原因遭到破坏的情况,那么您基本上已经破坏了所有区域中的所有实例。

希望它能让您更好地了解您的潜在解决方案。