我有以下 3 条规则modsecurity
。
规则1:阻止所有被定义为高风险的国家,但以下国家除外US
:
SecAction \
"id:900600,\
phase:1,\
nolog,\
pass,\
t:none,\
setvar:'tx.high_risk_country_codes = AD AE AF AG AI AL AM AO AQ AR...'"
#Allow only the below countries
SecRule REMOTE_ADDR "@geoLookup" "chain,id:2000001,drop,msg:'Countries allowed'"
SecRule GEO:COUNTRY_CODE "!@pm US"
规则 2:允许从以下IP访问:
SecRule REMOTE_ADDR "^XX\.XX\.XX\.XX$" "phase:1,id:2000002,nolog,allow,msg:'Allow access from IP XX.XX.XX.XX'"
规则 3:允许从以下远程主机访问:
SecRule REMOTE_HOST "host\.name\.com$" "phase:1,id:2000003,nolog,allow,msg:'Allow access from host.name.com'"
如果我们采用其中任何一条规则,所有规则都可以正常工作。但是,我想将它们“合并”为一条规则,该规则执行以下操作:
阻止来自禁入国家/地区的所有访问(规则 1),除非请求来自 IP XX.XX.XX.XX
(规则 2)或除非主机是host.name.com
(规则 3)。
我如何在 modscurity 中做到这一点?