EdgeOne 防盗链实践教程
本文为您介绍如何通过 EdgeOne 提供的防盗链能力,保护您的内容免受未经授权的盗链访问,提升加速服务的安全性。
背景介绍
盗链会导致其他网站或应用程序直接使用您的资源,消耗您的带宽和服务器资源,甚至可能导致您的内容被滥用或未经授权地传播,损害您的品牌形象和声誉。EdgeOne 支持一系列的防盗链能力,确保只有经过授权的用户才能访问和使用您的内容,保护您的内容安全。
实现方式
HTTP 应答:实现基础访问控制,如 IP 黑白名单、Referer 黑白名单、UA 黑白名单、区域访问控制。详情请参见 HTTP 应答。
Token 鉴权:即时间戳防盗链,安全性更高,更可靠。详情请参见 Token 鉴权。
边缘函数:定制化的防盗链能力,如远程鉴权等,可通过 边缘函数 支持。
操作指南
Referer 防盗链
基于 HTTP 请求头中的 Referer 字段设置访问控制规则,实现对访客的身份识别和过滤,防止网站资源被非法盗用。配置 Referer 黑白名单,EdgeOne 会根据名单识别请求身份,允许或拒绝访问请求。允许访问请求,EdgeOne 会返回资源链接;拒绝访问请求,EdgeOne 会返回 403 响应码。
配置示例
若您
example.com
站点下的 www.example.com
域名业务仅允许 Referer 为 https://www.example.com
的访问,其它请求则直接 403 拒绝,可参考以下步骤:1. 登录 边缘安全加速平台 EO 控制台,在左侧菜单栏中,单击站点列表,在站点列表内单击需配置的站点。
2. 在站点详情页面,单击站点加速,进入站点全局配置页面,单击规则引擎 Tab 页。
3. 在规则引擎页面,单击创建规则,选择新增空白规则。
3.1 在规则编辑页面,匹配类型选择为 HOST 等于
www.example.com
,同时设置匹配类型 HTTP 请求头 Referer 头部值不等于 https://www.example.com
。3.2 单击操作,在弹出的操作列表内,选择操作为 HTTP 应答。
3.3 配置响应状态码 403,响应页面通过下拉框选择,若当前无页面,则需要单击新建页面先创建,创建完成再引用。
4. 完整的规则配置如下所示,单击保存并发布,即可完成该规则配置。
IP 黑白名单
通过配置 IP 黑白名单过滤用户请求,拦截或允许特定 IP 的访问,可以有效限制访问来源,解决恶意 IP 盗刷、攻击等问题。
配置示例
若您
example.com
站点下的 www.example.com
域名业务仅允许客户端 IP 在 1.1.2.1~1.1.2.254 地址范围(包含 1.1.2.1 和 1.1.2.254)时,才能访问该加速域名下的资源,否则直接 403 拒绝,可参考以下步骤:1. 登录 边缘安全加速平台 EO 控制台,在左侧菜单栏中,单击站点列表,在站点列表内单击需配置的站点。
2. 在站点详情页面,单击站点加速,进入站点全局配置页面,单击规则引擎 Tab 页。
3. 在规则引擎页面,单击创建规则,选择新增空白规则。
3.1 在规则编辑页面,匹配类型选择为 HOST 等于
www.example.com
,同时设置匹配类型客户端 IP 等于 1.1.2.0/24
。3.2 单击操作,在弹出的操作列表内,选择操作为 HTTP 应答。
3.3 配置响应状态码 403,响应页面通过下拉框选择,若当前无页面,则需要单击新建页面先创建,创建完成再引用。
4. 完整的规则配置如下所示,单击保存并发布,即可完成该规则配置。
UA 黑白名单
User-Agent 是 HTTP 请求头的一部分,包含用户访问时所使用的操作系统及版本、浏览器类型及版本等标识信息。您可以通过配置 User-Agent 黑白名单规则,限制访问业务资源的用户来源,提升加速的安全性。
配置示例:
若您
example.com
站点下的 www.example.com
域名业务被谷歌爬虫恶意爬取资源,导致域名带宽突增,严重影响账单。通过分析,发现爬虫请求 User-Agent 包含spider
,您希望拦截该类请求,可参考以下步骤:1. 登录 边缘安全加速平台 EO 控制台,在左侧菜单栏中,单击站点列表,在站点列表内单击需配置的站点。
2. 在站点详情页面,单击站点加速,进入站点全局配置页面,单击规则引擎 Tab 页。
3. 在规则引擎页面,单击创建规则,选择新增空白规则。
3.1 在规则编辑页面,匹配类型选择为 HOST 等于
www.example.com
。3.2 单击操作,在弹出的操作列表内,选择操作为 HTTP 应答,同时设置匹配类型 HTTP 请求头 User-Agent 头部值正则匹配
*spider*
。3.3 配置响应状态码 403,响应页面通过下拉框选择,若当前无页面,则需要单击新建页面先创建,创建完成再引用。
4. 完整的规则配置如下所示,单击保存并发布,即可完成该规则配置。
Token 鉴权
Token 鉴权是一种实现原理简单、可靠性高的访问控制策略,通过配置鉴权规则进行 URL 访问校验,可有效防止站点资源被恶意盗刷。该功能的使用需要客户端和 EdgeOne 配合,客户端负责发起加密的 URL 请求,EdgeOne 负责根据预先设定的规则对 URL 进行合法性验证。详细的配置使用方式,您可以参考Token 鉴权。
远程鉴权
如果您有自己的鉴权服务器,可以通过配置远程鉴权,将用户请求转发至您指定的鉴权服务器,由鉴权服务器对用户请求进行校验,适用于需要精确控制访问权限和实时鉴权验证的场景。EdgeOne 可通过边缘函数实现远程鉴权能力,示例函数可参考 远程鉴权。