From a913996000146935840eada7df444ef8f0dac6e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E7=A5=A5=E8=B6=85?= Date: Tue, 21 Dec 2021 12:08:49 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=86=85=E7=BD=AEWAF?= =?UTF-8?q?=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../firewallconfigs/http_firewall_template.go | 53 ++++++++++++++++++- 1 file changed, 51 insertions(+), 2 deletions(-) diff --git a/pkg/serverconfigs/firewallconfigs/http_firewall_template.go b/pkg/serverconfigs/firewallconfigs/http_firewall_template.go index b873d56..33173b4 100644 --- a/pkg/serverconfigs/firewallconfigs/http_firewall_template.go +++ b/pkg/serverconfigs/firewallconfigs/http_firewall_template.go @@ -421,7 +421,7 @@ func HTTPFirewallTemplate() *HTTPFirewallPolicy { { set := &HTTPFirewallRuleSet{} set.IsOn = true - set.Name = "常见网络爬虫" + set.Name = "搜索引擎" set.Code = "20001" set.Connector = HTTPFirewallRuleConnectorOr set.Actions = []*HTTPFirewallActionConfig{ @@ -434,7 +434,56 @@ func HTTPFirewallTemplate() *HTTPFirewallPolicy { IsOn: true, Param: "${userAgent}", Operator: HTTPFirewallRuleOperatorMatch, - Value: `Googlebot|AdsBot|bingbot|BingPreview|facebookexternalhit|Slurp|Sogou|proximic|Baiduspider|yandex|twitterbot|spider|python`, + Value: `360spider|adldxbot|adsbot-google|applebot|admantx|alexa|baidu|bingbot|bingpreview|facebookexternalhit|googlebot|proximic|slurp|sogou|twitterbot|yandex|spider`, + IsCaseInsensitive: true, + }) + + group.AddRuleSet(set) + } + + { + set := &HTTPFirewallRuleSet{} + set.IsOn = true + set.Name = "爬虫工具" + set.Code = "20003" + set.Connector = HTTPFirewallRuleConnectorOr + set.Actions = []*HTTPFirewallActionConfig{ + { + Code: HTTPFirewallActionBlock, + }, + } + + set.AddRule(&HTTPFirewallRule{ + IsOn: true, + Param: "${userAgent}", + Operator: HTTPFirewallRuleOperatorMatch, + Value: `python|pycurl|http-client|httpclient|apachebench|nethttp|http_request|java|perl|ruby|scrapy|php|rust`, + IsCaseInsensitive: true, + }) + + group.AddRuleSet(set) + } + + { + set := &HTTPFirewallRuleSet{} + set.IsOn = true + set.Name = "下载工具" + set.Code = "20004" + set.Connector = HTTPFirewallRuleConnectorOr + set.Actions = []*HTTPFirewallActionConfig{ + { + Code: HTTPFirewallActionTag, + Options: maps.Map{ + "tags": []string{"download"}, + }, + }, + } + + set.AddRule(&HTTPFirewallRule{ + IsOn: true, + Param: "${userAgent}", + Operator: HTTPFirewallRuleOperatorMatch, + Value: `wget|curl`, IsCaseInsensitive: true, })