【问题标题】:Hit an EC2 instance in another account from an AWS lambda function从 AWS lambda 函数命中另一个账户中的 EC2 实例
【发布时间】:2019-01-01 13:28:17
【问题描述】:

我们在一个账户中有一个 Lambda 函数,我们想访问另一个附加了公共 IP 的 VPC 中的 EC2 实例(通过 HTTP)。我想知道执行这种交流的最佳方式是什么。我是 Lambda 的新手,我刚刚了解了 VPC lambda。我需要在 EC2 实例的安全组上打开哪些 CIDR?我可以在源 VPC 中选择一组特定的公共 IP - 这样我可以在 SG 中将该范围列入白名单吗?

VPC 对等似乎是这种情况下的开销还是唯一可能的解决方案?

【问题讨论】:

  • “访问 EC2 实例”是什么意思?您是指通过 HTTP、SSH 还是其他方式?如果流量通过公共 IP 地址和 Internet 传输,您可以接受吗?还是需要在 VPC 内保持流量私有?
  • 无论是访问 Internet 还是不访问 Internet,这两种情况都可以。通过访问,我的意思是 HTTP 请求。
  • EC2 实例当前是否在 HTTP 上“完全开放”,还是您希望限制仅访问 Lambda 函数?
  • 我们希望限制对较小 CIDR 的访问,而不是对所有人开放。所以,是的,只有基于 Lambda 的访问才是好的。

标签: amazon-web-services networking aws-lambda aws-security-group


【解决方案1】:

这一切都取决于您的要求。但是,对等 VPC 是让流量留在您受信任的私有子网中的最佳方式,这些子网位于满足安全最佳实践(威胁/安全模型和云/网络架构)。

如果企业政策有严格的规定,即通信不得通过 DMZ/公共 Internet 进行路由,并且必须将事情保持在内部路由的可信边界内,我认为除了采用之外别无选择VPC 对等互连:https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/peer-with-vpc-in-another-account.html

但是,如果要求不那么严格,并且您可以使用公共互联网通过 DMZ 转发您的流量,则可以在不牺牲太多安全性的情况下实现此目的(假设您的 EC2 与其他帐户的公共 IP 提供通过 SSL/TLS 提供服务,您的 lambda 可以在验证 EC2 证书时通过加密通信通道与其通信)。

这可以通过让 Lambda 与您的 VPC 的内部子网关联以与具有公共 IP 的其他账户的 EC2 通信来实现。 https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Scenario2.html

是的,您仍然可以将 Lambda 保留在内部子网中。但是您需要一个 NAT GATEWAY 并更新 Lambda 内部子网的路由表以指向 NAT GATEWAY(应该分配一个 EIP),即它将随后指向您的 INTERNET GATEWAY。这样,您将确保位于您的 VPC 私有子网中的 LAMBDA 可以与外部通信,即与位于另一个帐户的具有公共 IP 的 EC2 实例通信。因此,您可以将其他账户中 EC2 的 SecurityGroups 中的一个 IP 列入白名单,该 IP 是您的 NATGATEWAY 的 EIP,Lambda 或该子网中的任何其他内部组件将使用它来找到通往 Internet 的路径。

【讨论】:

  • VPC 对等互连最大的问题是什么?我能想到的两个是:1)私有IP CIDR管理。 2) 如果我们的 VPC 受到威胁,则爆炸半径。还有什么?
  • 这一切都取决于上下文、您在 VPC 中的资产、风险状况和控制。如果您有一个半径并且您正在与您没有信任和控制的第 3 方 VPC 对等,那么它在意。这样的讨论可能会无穷无尽:如果那样,但如果那样,情况会怎样。如果账户和 VPC 都属于同一个组织?同一部门?同一组?最少特权/隔离和隔离需求。您是否会创建一个与 Radius 访问隔离的新 VPC,然后对等?或者不只是有一个 NAT 网关,并且在 SG 路由中仅添加 1IP 到互联网而不是 CIDR 块对您来说风险较小。
  • 谢谢!我想我们还有一个额外的用例是我们希望 VPC A 连接到 VPC B(并获取响应),但 VPC B 无法启动到 VPC A 的连接并访问其资源。是否可以通过对等互连?
  • 我认为答案是 NACL。我建议如果您将您的 VPC A 划分为更小的可管理子网,然后在那里应用 NACL 入站/出站规则,您可以让出站流量流向目标 VPC B,但对于入站,请拒绝 VPC B 的 CIDR 块。docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_ACLs.html
猜你喜欢
  • 2021-12-24
  • 2013-12-17
  • 2020-01-18
  • 2023-03-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-25
  • 1970-01-01
相关资源
最近更新 更多