如何区分AWS中的外部ELB和内部ELB?

时间:2016-07-19 07:05:32

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

我有单独的“区域”(VPC),在其中有群集服务器。在“DMZ”区域中,我有一个具有不同后部和前部NIC的集群。 172.30.x.x服务于面向Internet的一方,而10.0.x.x服务于(更多)安全区域的任何后端连接。

由于我使用的是集群环境,因此我设置了负载均衡器(ELB),一个用于来自Internet的外部连接(172.30.xx)和一个用于内部区域的内部ELB(10.0.xx)。

我需要在前/后(172.30.xx / 10.0.xx)为侦听器添加ACL(允许/拒绝),但我的问题是AWS ELB对于外部ELB和内部ELB具有相同的源IP 。 原始源IP仅包含在X-forwarded-for头中,因为ACL只能处理源IP而不能处理HTTP头。

现在ACL毫无价值,因为互联网电话和来自后侧区域的电话的源IP都在172.30.x.x范围内,这是两个ELB“活”的VPC ......

有关如何区分ACL的内部和外部IP(或设置安全组或其他措施以确保仅后端连接可以达到10.0.x.x侦听器)的任何建议?

1 个答案:

答案 0 :(得分:1)

ELB没有静态IP,因此您无法基于此创建ACL规则。作为安全性最佳实践,面向公众的外部ELB应位于不应接收外部流量的任何ELB或实例/接口上的不同子网(当然,您希望它们分布在多个可用区域中)。

将外部ELB移动到不用于其他任何内容的子网。如果它们已经在使用中,则可以在零停机时间内完成此操作,因为您只需在正确的子网中创建新ELB,添加后端实例,更改指向ELB的任何DNS记录,您应该是好的。这允许为适当的子网CIDR块创建ACL规则。