免责声明:
本主题适用于 HTTP 流量(在 Linux 平台上)。对于以下问题,ELB 可能有一个很好的解决方案(每个人都价格合理)。但到目前为止我找不到任何东西。这就是为什么我需要专家的建议。
问题:
多年来,我一直在使用AWS Elastic Load Balancing (ELB)。突然意识到 ELB 有一个巨大的(对我来说至关重要的)缺点 .. 就是阻止 IP 的入站连接。
因为一旦您落后于 ELB,您的服务器内部防火墙(例如iptables
:)就已经无用了,因为来自 ELB 的所有转发流量都被标记为 ELB IP(而不是真正的客户端 IP)。ELB 只转发X-Forwarded-For
http 头中的 Real Client IP,这对于iptables
. (除非您可以建议有一个类似的 Linux 防火墙iptables
,它也可以处理内部带有 XFF(X-Forwarded-For)标头的 HTTP 流量。)
我知道这是此类反向代理的正常行为,但我需要设置防火墙!我知道在 AWS 上,建议使用VPC 和网络 ACL规则来阻止通过 IP 的入站连接。但是 NACL 有规则限制!(AWS 仅允许在 NACL 中最多使用 40 条规则)
想象一下,您正在运行一个高流量的公共网站,然后需要阻止每天检测到的大量不良 IP。这 40 条规则有什么帮助?
需要建议:
我开始考虑Nginx
用作负载均衡器(在单独的实例上)。我以前用过Nginx
,它是一个有前途的。当然,可以替代ELB。接着:
iptables
在那个Nginx
实例上使用!(因此,该 VM 将成为 LB+Firewall)
但在我采取行动之前,
- 有没有更好的专家建议?
- 在这里不使用 ELB 的最大区别(影响)是什么?
谢谢大家的建议。