让 Lambda 通过 VPC 访问 EC2 端口
Make Lambda access EC2 port through a VPC
我不太确定从哪里开始,因为我对这个话题不是很有经验。我在 EC2 实例上有一个 Lambda API 和一些资源。我想以仅由 Lambda 访问的方式保护 EC2 上的这些资源。
为此,我将 Lamdba 添加到 VPC(我向 Lambda 添加了一个角色以便它可以访问 VPC),将 lambda 添加到安全组并将 VPC 子网地址也设置为 lambda .
我现在有两个问题:
1- 如何在 EC2 上打开此端口?我问这个是因为当我设置入站规则时,这个端口对外部世界开放。是否默认打开所有端口?
2- 我应该使用什么地址从我的 Lambda 连接到 EC2?因为目前我正在使用 public 地址(DNS 以 amazonws.com
结尾,但这肯定是错误的,首先是因为当我们将它们添加到 VPC 时 Lambda 失去了互联网连接,并且因为我没有添加这个端口入站规则。
有人可以帮忙吗?
最佳做法是将您的 Lambda 函数分配给与 EC2 实例不同的安全组。 Lambda 函数的安全组中不需要入站规则。
在 EC2 函数的安全组中,您将打开端口,并将源作为 Lambda 函数的安全组 ID。这意味着只有属于 Lambda 函数的安全组的资源才能访问指定端口上的 EC2 实例。
最后,在您的 Lambda 函数中,使用其私有 IP 或私有 DNS 名称访问 EC2 实例。
我不太确定从哪里开始,因为我对这个话题不是很有经验。我在 EC2 实例上有一个 Lambda API 和一些资源。我想以仅由 Lambda 访问的方式保护 EC2 上的这些资源。
为此,我将 Lamdba 添加到 VPC(我向 Lambda 添加了一个角色以便它可以访问 VPC),将 lambda 添加到安全组并将 VPC 子网地址也设置为 lambda .
我现在有两个问题:
1- 如何在 EC2 上打开此端口?我问这个是因为当我设置入站规则时,这个端口对外部世界开放。是否默认打开所有端口?
2- 我应该使用什么地址从我的 Lambda 连接到 EC2?因为目前我正在使用 public 地址(DNS 以 amazonws.com
结尾,但这肯定是错误的,首先是因为当我们将它们添加到 VPC 时 Lambda 失去了互联网连接,并且因为我没有添加这个端口入站规则。
有人可以帮忙吗?
最佳做法是将您的 Lambda 函数分配给与 EC2 实例不同的安全组。 Lambda 函数的安全组中不需要入站规则。
在 EC2 函数的安全组中,您将打开端口,并将源作为 Lambda 函数的安全组 ID。这意味着只有属于 Lambda 函数的安全组的资源才能访问指定端口上的 EC2 实例。
最后,在您的 Lambda 函数中,使用其私有 IP 或私有 DNS 名称访问 EC2 实例。