我在AWS VPC
前面使用ELB
。据我所知,只有Network Access Control List (ACL)
可以通过IP进行入站阻止。但问题又出现了:
安全组再次无法进行“阻止”。所以我现在所做的是,通过Apache虚拟主机阻止某些IP(处理x-forwarded-for
ips),这不是干净的方法。
那么请问正确的方法是什么?
答案 0 :(得分:0)
您可以设置Network ACLs rules
与只能通过肯定(接受)规则定义的安全组不同,NACL可以通过负(丢弃)规则定义。您可以查看comparison between security group and NACLs
答案 1 :(得分:0)
虽然没有一个建议依赖现有的AWS服务,但很少有建议。
在ELB后面部署NGINX Plus个实例集群。使用NGINX的Real IP module检查X-Forwarded-For标头。在nginx.conf中使用模式匹配和set变量来阻止某些公共IP地址。 (以下未经过测试。)
设置$ accept true;
if($ http_x_forward_for~“?89.44.27.101 $”){
设置$ accept false;
}
if($ accept = false){
返回403;
}
通过现有数据中心的防火墙(如果有的话)路由和检查Internet流量,并使用VPN或Direct Connect将其与您的EC2机群对等。