繁体   English   中英

目标 VPC 服务器 FROM 公共服务器的私有 IP 地址

[英]Target VPC server FROM the private IP address of a public server

我有两个服务器:ExternalSrv 和 InternalSrv,在同一个 EC2 VPC 上。

我使用 Nodejs、Express 和 Axios 进行了非常简单的设置。

ExternalSrv 处理来自公众的请求,这些请求当然会进入 ExternalSrv 的公共地址 IP。 ExternalSrv 调用 InternalSrv 来完成一些工作。

为了简化InternalSrv上的安全组入站规则,我想允许所有VPC IP地址,但没有别的。

我发现在向 InternalSrv 的私有 IP 地址发出请求时,ExternalSrv 始终使用其公共 IP 地址。 因此,只要地址发生变化(停止/启动、新实例、更多实例等),就需要使用 ExternalSrv 的公共 IP 地址更新安全组。 这似乎是持续维护中的一个脆弱点。

这看起来应该很容易,但我一直在寻找答案很长一段时间。

任何见解将不胜感激。

账单

当同一 VPC 中的两个 Amazon EC2 实例相互通信时,最好通过私有 IP 地址执行此通信。 这有几个好处:

  • 安全组可以引用其他安全组
  • 流量停留在 VPC 内(如果通过公共 IP 地址通信,流量将退出 VPC,然后再返回)
  • 它更便宜(从 VPC 传出然后返回的流量收取 1c/GB 的费用)

针对您的情况的最佳实践安全设置是:

  • ExternalSrv ( SG-External ) 上创建一个安全组,根据需要允许入站流量(例如端口 80、443),以及默认的“允许所有”出站流量
  • InternalSrv ( SG-Internal ) 上创建一个安全组,允许来自SG-External入站流量

也就是说, SG-Internal在其规则中特别引用了SG-External 这样,无需知道其 IP 地址即可接受来自 ExternalSrv 的入站流量。 它还允许将来将其他服务器添加到安全组中,并且它们也将被允许访问。

是的,您可以简单地添加一个规则来限制对 VPC 的 CIDR 的入站访问,但是良好的安全性总是与拥有多层安全性有关。 限制访问将减少潜在的攻击媒介。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM