通过AWS WAF Rate limit rule来保护API Gateway

通过配置基于 URL 的速率限制规则,使用 AWS WAF 增强 Web 应用程序的安全性。此主动措施有助于防止潜在的滥用或恶意流量,从而确保最佳性能并保护您的 Web 资产。

速率限制有助于保护您的 Web 应用程序免受过多流量和潜在 DDoS 攻击。

本运行手册将指导您完成基于 URL 模式在 AWS Web 应用程序防火墙 (WAF) 上创建速率限制规则的过程。

前提条件:创建一个API Gateway和lambda 函数。

步骤 1:登录 AWS 管理控制台

转到 https://aws.amazon.com/ 并使用适当的凭据登录 AWS 管理控制台。

步骤 2:导航到 AWS WAF

在 AWS 管理控制台中,在"查找服务"搜索栏中搜索"WAF"。

单击"AWS WAF 和 Shield"以访问 AWS WAF 仪表板。

步骤 3:创建 Web ACL 规则

选择资源类型:地区性资源

选择你所在的区域,输入有意义名字和描述信息。

在要关联的资源下面点击添加资源

选择API Gateway和关联的Lambda。

步骤 4:配置速率限制规则

为"规则类型"选择"规则生成器"。

输入规则名称(例如"rate-rule1")。

在"规则生成器"窗口中,选择"类型"下的"基于速率的规则"。

配置基于速率的规则设置:

将"速率限制"设置为指定时间段内允许的最大请求数(例如,每 1分钟10 个请求)。

在"请求聚合"下,选择"源 IP 地址"。

速率限制是满足您提供的条件的1分钟内允许的最大请求数。

默认情况下,基于速率的规则会根据请求 IP 地址聚合和限制请求的速率。您可以配置规则以使用各种其他聚合键和键组合。

步骤 5:定义阻止请求的操作

在操作下选择"阻止"。这将阻止与上面配置的语句匹配的任何 IP。

"操作"下有 5 个选项可供选择:

允许 --- AWS WAF 允许将请求转发到受保护的 AWS 资源进行处理和响应。

阻止 --- AWS WAF 阻止请求。

计数 --- AWS WAF 计算请求,但不确定是否允许或阻止它。

CAPTCHA 和质询 --- AWS WAF 使用 CAPTCHA 谜题和静默质询来验证请求不是来自机器人,AWS WAF 使用令牌来跟踪最近成功的客户端响应。

第 6 步:将规则添加到 Web ACL

配置速率限制规则及其条件后,单击"添加规则"将其包含在 Web ACL 中。

第 7 步:监控和微调速率限制规则

监控 AWS WAF 指标和日志以确保速率限制规则按预期工作。

现在我们来访问API Gateway验证一下:

运行下面的shell 命令来访问API Gateway

复制代码
for i in {1..100}; do curl 'https://o2l2m68szg.execute-api.ap-southeast-2.amazonaws.com/stage/helloworld?greeter=John'; done

可以看到前面的访问正常返回,后面的部分被block了。

恭喜!您已成功根据 URL 模式在 AWS WAF 上创建速率限制规则,以保护您的 Web 应用程序免受过多流量和潜在 DDoS 攻击。请记住定期监控您的 AWS WAF 配置并根据需要进行调整,以满足您的 Web 应用程序不断变化的需求。

相关推荐
kfepiza3 小时前
Debian的`/etc/network/interfaces`的`allow-hotplug`和`auto`对比讲解 笔记250704
linux·服务器·网络·笔记·debian
无妄-20243 小时前
软件架构升级中的“隐形地雷”:版本选型与依赖链风险
java·服务器·网络·经验分享
群联云防护小杜4 小时前
构建分布式高防架构实现业务零中断
前端·网络·分布式·tcp/ip·安全·游戏·架构
岸边的风7 小时前
无需公网IP的文件交互:FileCodeBox容器化部署技术解析
网络·网络协议·tcp/ip
Zonda要好好学习8 小时前
Python入门Day4
java·网络·python
riverz12278 小时前
TCP backlog工作机制
服务器·网络·tcp/ip
yqcoder9 小时前
1. http 有哪些版本,你是用的哪个版本,怎么查看
网络·网络协议·http
Fanmeang12 小时前
OSPF路由过滤
运维·网络·华为·ip·路由·ospf·路由过滤
我是阿呆同学13 小时前
仿mudou库one thread oneloop式并发服务器
网络
是阿建吖!13 小时前
【Linux | 网络】网络编程套接字
linux·网络