DDoS高防支持对已接入防护的网站业务设置精准访问控制策略。开启精确访问控制后,您可以使用常见的HTTP字段(例如IP、URL、Referer、UA、参数等)设置匹配条件,筛选访问请求,并对命中条件的请求设置放行、封禁、挑战操作。精准访问控制支持业务场景定制化的防护策略,可用于盗链防护、网站管理后台保护等场景。

前提条件

  • 已在DDoS高防域名接入中配置要防护的网站业务。更多信息,请参见添加网站
  • 已开启新版防护设置。

背景信息

网站业务接入DDoS高防后,若您需要针对性地管理具有固定特征的访问请求,则您可以为域名开启精确访问控制并设置精确访问控制规则。精准访问控制规则由匹配条件与匹配动作构成。
  • 匹配条件定义了要识别的请求特征,具体指访问请求中HTTP字段的属性特征。精确访问控制规则支持匹配的HTTP字段如下表所示。
    说明 不同字段适用的匹配逻辑不同,例如请求源IP字段“属于/不属于”具体的值,请求URI“包括/不包括”具体的内容等,详见下表中“适用的逻辑符”一列。
    匹配字段 字段描述 适用的逻辑符
    IP 访问请求的来源IP。 属于/不属于
    URI 访问请求的URI地址。 包括/不包括 、等于/不等于、长度小于/长度等于/长度大于
    User-Agent 发起访问请求的客户端浏览器标识等相关信息。 包括/不包括 、等于/不等于、长度小于/长度等于/长度大于
    Cookie 访问请求中的携带的Cookie信息。 包括/不包括 、等于/不等于、长度小于/长度等于/长度大于、不存在
    Referer 访问请求的来源网址,即该访问请求是从哪个页面跳转产生的。 包括/不包括 、等于/不等于、长度小于/长度等于/长度大于、不存在
    Content-Type 访问请求指定的响应HTTP内容类型,即MIME类型信息。 包括/不包括 、等于/不等于、长度小于/长度等于/长度大于
    X-Forwarded-For 访问请求的客户端真实IP。 包括/不包括 、等于/不等于、长度小于/长度等于/长度大于、不存在
    Content-Length 访问请求的所包含的字节数。 值小于/值等于/值大于
    Post-Body 访问请求的内容信息。 包含/不包含、等于/不等于
    Http-Method 访问请求的方法,具体包括GET、POST、DELETE、PUT、OPTIONS、CONNECT、HEAD、TRACE。 等于/不等于
    Header 访问请求的头部信息,用于自定义HTTP头部字段及匹配内容。 包括/不包括 、等于/不等于、长度小于/长度等于/长度大于、不存在
    Params 访问请求的URL地址中的参数部分,通常指URL中?后面的部分。例如,www.abc.com/index.html?action=login中的action=login就是参数部分。 包括/不包括 、等于/不等于、长度小于/长度等于/长度大于
  • 匹配动作定义了访问请求命中匹配条件时,对访问请求执行的动作,具体包括放行、封禁、挑战(通过挑战算法对请求的源IP地址发起校验)。

使用限制

根据网站业务关联的DDoS高防实例的功能套餐类型,精确访问控制规则具有如下使用限制。

限制 标准功能套餐实例 增强功能套餐实例
自定义规则数量 不超过五条 不超过十条
可使用的匹配字段 IP、URL、Referer、User-Agent 所有支持匹配的字段

操作步骤

  1. 登录DDoS高防控制台
  2. 在顶部导航栏,选择服务所在地域:
    • 中国大陆:DDoS高防(新BGP)服务
    • 非中国大陆:DDoS高防(国际)服务
  3. 在左侧导航栏,单击防护设置 > 通用防护策略
  4. 通用防护策略页面,单击网站业务DDoS防护页签,并从左侧域名列表中选择要设置的域名。
  5. 定位到精确访问控制配置区域,单击设置精确访问控制,设置
  6. 为域名设置精确访问控制规则。精确访问控制规则
    • 新增规则
      1. 单击新增规则
        说明 若自定义规则数量达到限制,则新增规则不可操作。
      2. 新增规则对话框,完成规则配置,并单击确定新增规则
        参数 描述
        规则名称 规则的名称,由英文字母、数字和下划线(_)组成,不超过128个字符。
        匹配条件 规则的匹配条件。单击新增条件添加一个条件,每个条件由匹配字段逻辑符匹配内容组成。
        • 关于匹配字段和逻辑符的取值范围,请参见支持的匹配字段
        • 匹配内容根据匹配字段填写,大小写敏感。暂时不支持通过正则表达式描述,但允许设置为空值。

        支持添加多个匹配条件。若添加多个匹配条件,则只有当访问请求满足所有条件时才算命中。

        匹配动作 当访问请求命中匹配条件时,对请求执行的操作。取值:
        • 封禁:阻断命中匹配条件的访问请求。
        • 放行:放行命中匹配条件的访问请求。
        • 挑战:通过挑战算法对命中匹配条件的访问请求的源IP地址发起校验。
        有效期 规则的有效期,取值:5分钟、10分钟、30分钟、60分钟、90分钟、120分钟、永久。

        以上图为例,配置完成后,对于包含/login页面的请求,如果其UserAgent字段中包含chrome,则对请求的源IP发起校验。该规则自创建成功起在120分钟内生效。

        成功添加精确访问控制规则后,您可以根据需要继续添加多条规则。
        说明
        • 如果您设置了多条规则,则规则的优先级遵循其在规则列表中的排列顺序,排序越靠前,优先级越高。访问请求根据规则顺序依次进行匹配,顺序较前的精准访问控制规则优先匹配。
        • 如果一个请求同时命中多个匹配条件,则匹配动作取所有命中的规则中,排序最靠前的访问控制规则中的匹配动作。
      规则配置示例
      • 拦截特定的攻击请求
        一般情况下,正常业务不存在POST根目录的请求信息。如果网站业务上发生CC攻击,且您发现客户端的请求中存在大量的POST根目录请求,则可以评估请求的合法性。如果确认其为非正常业务请求,可以通过精准访问控制规则,执行拦截动作。规则配置示例如下。拦截特定攻击请求
      • 拦截一段时间内爬虫的访问请求
        如果在某段时间内,您发现网站的访问流量中有大量爬虫请求,若不排除是攻击傀儡机模拟爬虫进行CC攻击,则可以对爬虫的请求执行拦截操作。规则配置示例如下。拦截爬虫请求
    • 编辑规则
      1. 在规则列表中,定位到要操作的规则,单击其操作列下的编辑
      2. 编辑规则对话框中,修改规则配置,并单击确定。规则配置的描述见新增规则,其中,规则名称不可更改。
    • 删除规则
      1. 在规则列表中,定位到要删除的规则,单击其操作列下的删除
      2. 在删除提示对话框中,单击确定
  7. 回到精确访问控制功能区域,开启状态开关,应用精确访问控制规则。