【发布时间】:2018-08-06 11:08:43
【问题描述】:
我有一个在我的 Amazon EC2 实例上运行的 Web 应用程序。如何将 Web 应用程序防火墙与我的 EC2 集成?
我已尝试设置 WAF,但它只能与 CloudFront 分配或 Elastic Load Balancer 关联。我是否需要设置 CloudFront 分配并将其指向我的 EC2 实例?
【问题讨论】:
标签: amazon-web-services amazon-ec2 amazon-waf
我有一个在我的 Amazon EC2 实例上运行的 Web 应用程序。如何将 Web 应用程序防火墙与我的 EC2 集成?
我已尝试设置 WAF,但它只能与 CloudFront 分配或 Elastic Load Balancer 关联。我是否需要设置 CloudFront 分配并将其指向我的 EC2 实例?
【问题讨论】:
标签: amazon-web-services amazon-ec2 amazon-waf
我最终设置了一个指向我的单个实例的弹性负载均衡器,然后添加了指向负载均衡器的 Web 应用程序防火墙。它工作得很好,而且 AWS 每月的费用不会增加太多。
【讨论】:
您可以通过这两种方法将 AWS WAF 连接到您的 EC2 实例,
每种方法都有其优点和缺点。如果您的应用程序服务器可以缓存更多内容,那么将 AWS CloudFront 与 WAF 结合使用。如果您的应用程序集群需要扩展但大部分是动态内容,那么选择 ALB 更合理。
注意:ALB 每个月都会增加一个固定成本(除了不重要的可变成本),而 CloudFront 成本是可变的且由消耗驱动。
也可以同时使用 CloudFront 和 ALB,您可以只将 WAF 添加到 CloudFront。
【讨论】:
这就是您使用 AWS WAF 的方式,它只适用于这两种场景。对于 EC2 应用程序,最好在其前面配置一个 ALB(即使您只有一个实例)。
顺便说一句:您可能只使用 AWS 的应用程序负载均衡器 (ALB),这比传统的 AWS ELB 所做的内容有效性检查更多。
【讨论】:
您至少需要设置应用层负载均衡器才能使用 AWS WAF。
旁注:AWS WAF 有很多限制。对于基于请求计数的阻止,您最终将使用 LAMBDA 脚本来计数并更新 AWS WAF 规则集。此外,据我所知,他们不提供 WAF 日志。尝试查看 SOPHOS 等云 WAF 解决方案。
【讨论】: