通过使用 Rulesets API 在账户级别定义重写 (overrides) 来配置 Cloudflare 网络层 DDoS 攻击防护托管规则集。
每个账户默认已启用了网络层 DDoS 攻击防护托管规则集。这意味着您不需要显式地将托管规则集部署到 ddos_l4 阶段的入口点规则集中。只有在您需要配置重写时,才必须在阶段入口点中创建一条规则以部署托管规则集。
如果您使用的是 Terraform,请参阅使用 Terraform 配置 DDoS 托管规则集。
您可以为所有托管规则集在规则集、标记和规则级别定义重写。
在配置网络层 DDoS 攻击防护托管规则集时,使用重写来定义与默认值不同的Action(操作) 或 Sensitivity(敏感度)。有关这些规则参数及允许值的更多信息,请参阅托管规则集参数。
以下 PUT 示例为账户级别的 ddos_l4 阶段创建了一个新的阶段规则集(或更新现有规则集)。该请求包含几个重写,以调整网络层 DDoS 攻击防护托管规则集的默认行为。这些重写如下:
- 网络层 DDoS 攻击防护托管规则集的所有规则的敏感度都将设置为
medium。 - 所有标记为
<TAG_NAME>的规则的敏感度都将设置为low。 - ID 为
<MANAGED_RULESET_RULE_ID>的规则将使用block操作。
这些重写适用于匹配规则表达式 ip.dst in { 1.1.1.0/24 } 的所有数据包。
curl --request PUT \
https://api.cloudflare.com/client/v4/accounts/{account_id}/rulesets/phases/ddos_l4/entrypoint \
--header "Authorization: Bearer <API_TOKEN>" \
--header "Content-Type: application/json" \
--data '{
"description": "Define overrides for the Network-layer DDoS Attack Protection managed ruleset",
"rules": [
{
"action": "execute",
"expression": "ip.dst in { 1.1.1.0/24 }",
"action_parameters": {
"id": "<MANAGED_RULESET_ID>",
"overrides": {
"sensitivity_level": "medium",
"categories": [
{
"category": "<TAG_NAME>",
"sensitivity_level": "low"
}
],
"rules": [
{
"id": "<MANAGED_RULESET_RULE_ID>",
"action": "block"
}
]
}
}
}
]
}'响应将返回创建(或更新)的阶段入口点规则集。
响应
{
"result": {
"id": "<PHASE_ENTRY_POINT_RULESET_ID>",
"name": "default",
"description": "Define overrides for the Network-layer DDoS Attack Protection managed ruleset",
"kind": "root",
"version": "1",
"rules": [
{
"id": "<RULE_ID>",
"version": "1",
"action": "execute",
"action_parameters": {
"id": "<MANAGED_RULESET_ID>",
"version": "latest",
"overrides": {
"categories": [
{
"category": "<TAG_NAME>",
"sensitivity_level": "low"
}
],
"rules": [
{
"id": "<MANAGED_RULESET_RULE_ID>",
"action": "block"
}
],
"sensitivity_level": "medium"
}
},
"expression": "ip.dst in { 1.1.1.0/24 }",
"last_updated": "2021-08-16T04:14:47.977741Z",
"ref": "<RULE_REF>",
"enabled": true
}
],
"last_updated": "2021-08-16T04:14:47.977741Z",
"phase": "ddos_l4"
}
}有关使用 Rulesets API 为托管规则集定义重写的更多信息,请参阅 Ruleset Engine 文档中的重写托管规则集。