Amazon web services AWS按用户管理ec2入站/出站规则

Amazon web services AWS按用户管理ec2入站/出站规则,amazon-web-services,amazon-ec2,aws-security-group,Amazon Web Services,Amazon Ec2,Aws Security Group,作为管理员,我正在寻找一种方法,允许用户为特定安全组管理自己的入站/出站规则,但不允许他们修改其他安全组的入站/出站规则。现在,使用策略就可以做到这一点,但是,这种方法的唯一问题是,您必须将每个员工的安全组添加到每个EC2实例中 例如(双关语),如果我有20个EC2和50名员工,我需要手动添加50*20个安全组。那不实际 对于这个问题,什么是更易于管理的解决方案?根据OP反馈进行编辑 好吧,如果我正确理解你的情况 您有N名工程师需要连接到VPC中的后端EC2实例 您可以基于IP管理进出EC2实

作为管理员,我正在寻找一种方法,允许用户为特定安全组管理自己的入站/出站规则,但不允许他们修改其他安全组的入站/出站规则。现在,使用策略就可以做到这一点,但是,这种方法的唯一问题是,您必须将每个员工的安全组添加到每个EC2实例中

例如(双关语),如果我有20个EC2和50名员工,我需要手动添加50*20个安全组。那不实际


对于这个问题,什么是更易于管理的解决方案?

根据OP反馈进行编辑

好吧,如果我正确理解你的情况

  • 您有N名工程师需要连接到VPC中的后端EC2实例

  • 您可以基于IP管理进出EC2实例的流量

  • 工程师四处移动,所以IP地址会改变。因此,他们需要能够使用新的IP地址进行更新

我认为AWS的首选回应(他们在DevOps Pro cert上询问,并在白皮书上声称)是您设置了一个堡垒主机或Jumpbox。取决于网络连接的工作方式

无论哪种方式,您都可以将所有到后端服务的连接限制到Bastion主机,并要求工程师首先连接到那里,然后通过ssh连接到其他服务器。这简化了应用程序实例上的安全组。这显然是假设您正在使用SSH,但我相信您可以使用RDP做类似的事情

如果你想继续使用基于IP的规则,我想这是可行的——只需将每个安全组连接到bastion主机上,然后工程师就可以这样管理它

然而,安全问题远不止这些。现在,你只回答“授权”问题,而不是认证,你仍然需要考虑治理< /P> 认证

如果仅由IP设置,则该IP上的任何人都可以连接。AWS建议让每个工程师都制作一个SSH密钥对。他们将自己的公共证书上传到S3,并随身携带私钥。然后让CRON作业每隔几分钟运行一次,将S3上的公钥拉下来,并使用该密钥为它们创建一个用户条目

这样,只有将公钥上传到S3的人才能访问您的Bastion主机,然后进入后端服务器

治理

您还应该确保跟踪谁在登录,以及他们在做什么。因为您现在有了一个中心连接点,所以可以将用户操作日志发送到S3和CloudWatch。我认为如果有人做了他们不应该做的事情,你甚至可以启动CloudWatch活动。应该很容易辨别它们来自何处以及它们试图去哪里

总体上,我认为您应该考虑删除整个IP过滤策略并获得VPN连接。它可能每月花费40~100美元,但更安全。如果你有工程师手动设置IPs,那只是时间问题,直到有人把事情搞砸了,一个巨大的CIDR区块向全世界开放。此外,考虑返回工程师的时间价值。必须获得他们的IP并在AWS中设置它是非增值工作


初始职位

所以,我不确定我是否理解你想要实现的目标。但我猜你想给每个员工一个独特的环境,他们可以随心所欲地改变。你有几个选择

CloudFormation-最佳选择,IMO 构建一个主CloudFormation模板,用于构建您需要的所有部分:

  • EC2实例
  • 安全组
  • 政策
确保它具有用户IAM角色的参数,该参数将绑定到策略

接下来,将堆栈注册为带有服务目录的应用程序。为您的IAM用户提供启动应用程序的能力,并让其提供其IAM角色作为参数。这将为他们提供实例和编辑安全组的能力(假设策略设置正确)

启动配置。有点黑,但可能有用

  • 为每位员工建立一个安全组,并为每位员工制定一个策略
  • 定义自动缩放组的启动配置
  • 然后,使用启动配置启动所有EC2实例,并在配置中提供所有安全组
  • 将EC2实例扩展到所需的数量。每个安全组将应用于每个EC2实例
  • 使用AWS客户端VPN


    在其设备上安装VPN客户端的用户可以从任何公共网络到vpc的VPN,并且可以安全地访问资源。不需要为每个用户维护和更新安全组。

    我很困惑-如果所有安全组都在所有EC2实例上,那么员工对其安全组所做的任何更改都会传播到所有EC2实例。那么,他们不是在有效地改变其他员工的进入方式吗?每个员工不应该只获得一个EC2实例和一个由CloudFormation定义的安全组吗?CloudFormation还创建了他们管理安全组的策略?这些都是运行后端服务的共享EC2实例。因此,员工在移动时需要访问这些实例。只有管理员才能创建新实例。现在,您可以在所有实例中拥有一个安全组,每个员工都有入站/出站规则。但是,如果员工的Ip发生变化,管理员必须更新他们的Ip地址(因为我们不希望允许所有EC2实例上的所有员工都具有写访问权限)。该员工需要的能力,以改变自己的Ip地址,没有更多。谢谢你的详细帖子!因此,在我们目前的设置中,我们实际上使用的是VPN和一个堡垒,但这些只有经过授权的Ip地址才能访问。因此,w