无法从VPC中的实例连接到面向ELB的Internet

时间:2017-03-02 22:14:16

标签: amazon-web-services amazon-elb amazon-vpc

我有一个面向互联网的V2 ELB。当我从笔记本电脑连接到VPC时,它将请求路由到VPC中的实例。但是,当我尝试从同一VPC内的另一个实例连接到它时,安全组防火墙规则会阻止连接。

我可以让VPC中的实例连接到ELB的唯一方法是打开https端口(443)到世界。

我做错了什么?

ELB(https://elb.domain.com)有以下内容:

  • 面向互联网,V2(不是经典ELB)
  • VPC:vpc-aaa
  • AZs:subnet-a,subnet-b
  • 听众:443 - > 8080实例端口
  • 源安全组:my-vpc-elb,带有入站规则:
    • 443,来源:1.2.3.170/32(我的笔记本电脑IP)
    • 443,source:sg-a(我的vpc实例,无法连接的sg的名称)
    • 443,来源<CIDR of vpc-aaa, 1.2.0.0/16>

从我的笔记本电脑中我可以放入https://elb.domain.com并且工作正常。

我现在有另一个实例,其中以下的attrs无法连接到https://elb.domain.com

  • 子网ID:subnet-a
  • 安全组:sg-a

为什么443, source: sg-a的ELB安全组规则不允许连接?为什么它只在我允许入境时才有效?#34;所有流量&#34;在ELB安全组的443上?

1 个答案:

答案 0 :(得分:7)

当连接到面向公众的负载均衡器时,VPC中的实例将始终退出VPC并从公共IP返回。在这种情况下,安全组无法锁定入站流量。

如果尝试连接到ELB的VPC实例不需要公共IP,则只需在ELB上设置入站规则,该规则仅允许源是您的VPC NAT网关的源。

如果他们确实需要公共IP,则您被迫指定AWS VPC公共IP范围,或者如果您使用EIP,则可以指定EIP。