Amazon EC2:public 子网中没有 public IP 的实例与私有子网中的实例

Amazon EC2: instace in public subnetwork without public IP vs instance in private subnetwork

我有一个根据场景 2 创建的 VPC:http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Scenario2.html

在 public 子网中创建实例时,我可以选择:

1- 未将 public IP 关联到实例

2- 关联一个 public IP,该 IP 可以在实例重新启动时更改

3- 关联弹性 IP

我的问题是:在 public 子网但没有 public IP(选项 1)中创建实例与在私有中创建实例之间在安全方面有什么区别子网?我知道私有实例在 NAT 后面,但这真的增加了相关的安全层吗?如果没有属于健全安全组的 public IP,我是否会受到 public 实例的保护?

看看这个 answer about the difference between private and public subnets in AWS

简而言之,区别在于网络层,由此产生的安全态势相似。 public 子网上没有 publicly 可路由地址的实例将无法接收入站连接,也无法在没有附加 EIP 地址的情况下建立出站连接——即使安全组以其他方式允许。 (因此,例如,您必须将 EIP 附加到实例中的 SSH。)实际上,它是一个整体块,而 NAT 允许您像通常期望的那样微调访问。

您还可以阅读有关 instance addressing in the AWS User Guide 的更多信息。