阻止Adobe Commerce在Fastly级别的恶意流量
本文提供了当您怀疑云基础架构存储上的Adobe Commerce遇到DDoS攻击时,阻止恶意流量可以采取的步骤。
受影响的产品和版本:
- 云基础架构上的Adobe Commerce 2.3.x
在本文中,我们假定您已经拥有恶意IP和/或其国家/地区和用户代理。 云基础架构上的Adobe Commerce用户通常从Adobe Commerce支持部门获取此信息。 以下部分提供了基于此信息阻止流量的步骤。 所有更改都应在生产环境中完成。
获取对管理面板的访问权限
如果您的网站因DDoS而过载,则可能无法登录到Commerce管理员(并执行本文中进一步描述的所有步骤)。
若要访问管理员,请按照启用或禁用维护模式并将IP地址列入白名单中的说明将网站置于维护模式。 完成后禁用维护模式。
按IP阻止流量
对于云基础架构存储上的Adobe Commerce而言,按特定IP地址和子网阻止流量的最有效方法是在Commerce管理员中为Fastly添加ACL。 以下步骤包含指向更详细说明的链接:
按国家/地区阻止流量
对于云基础架构存储上的Adobe Commerce,按国家/地区阻止流量的最有效方法是在Commerce管理员中为Fastly添加ACL。
- 在Commerce管理员中,导航到 商店 > 配置 > 高级 > 系统 > 全页缓存 > 快速配置。
- 选择国家/地区并使用ACL配置阻止,如Adobe Commerce的Fastly_Cdn模块的Blocking指南中所述。
按用户代理阻止流量
要基于用户代理建立阻止,您需要向Fastly配置添加自定义VCL代码片段。 为此,请执行以下步骤:
- 在Commerce管理员中,导航到 商店 > 配置 > 高级 > 系统 > 全页缓存。
- 然后 Fastly配置 > 自定义VCL代码片段。
- 按照Fastly_Cdn模块的自定义VCL代码片段指南中的说明创建新的自定义代码片段。 您可以使用以下代码示例作为示例。 此示例不允许
AhrefsBot
和SemrushBot
用户代理的流量。
name: block_bad_useragents
type: recv
priority: 5
VCL:
if ( req.http.User-Agent ~ "(AhrefsBot|SemrushBot)" ) {
error 405 "Not allowed";
}
速率限制(实验性Fastly功能)
在云基础架构上,Adobe Commerce试验性的Fastly功能允许您为特定路径和爬网程序指定速率限制。 有关详细信息,请参阅Fastly模块文档。
该功能必须先在暂存环境中进行全面测试,然后才能用于生产,因为它可能会阻止合法流量。
建议:考虑更新robots.txt
更新robots.txt
文件有助于防止某些搜索引擎、爬网程序和机器人爬取某些页面。 例如,不应爬网的页面有搜索结果页面、结账、客户信息等。 阻止机器人爬行这些页面有助于减少这些机器人生成的请求数。
使用robots.txt
时有两个重要注意事项:
- 机器人可以忽略您的
robots.txt
。 尤其是恶意软件机器人,它会扫描网页以发现安全漏洞,垃圾邮件发送者使用的电子邮件地址收集器不会引起注意。 robots.txt
文件是公开可用的文件。 任何人都可以看到您不希望机器人使用的服务器区域。
可在开发人员文档的搜索引擎机器人文章中找到基本信息和默认Adobe Commerce robots.txt
配置。
有关robots.txt
的一般信息和建议,请参阅:
- 由Google支持创建robots.txt文件
- 关于/robots.txt,由robotstxt.org提供
与您的开发人员和/或SEO专家合作,确定要允许的用户代理或要禁止的用户代理。
相关阅读
云中Adobe Commerce的产品特定许可条款