
には以下の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 つのルールを採用すれば、すべてのルールは正常に機能します。ただし、次の操作を実行する 1 つのルールにそれらを「マージ」したいと思います。
リクエストが IP から送信された場合XX.XX.XX.XX
(ルール 2) またはホストが IP である場合host.name.com
(ルール 3) を除き、禁止されている国からのすべてのアクセスをブロックします (ルール 1)。
modsecurity でそれをするにはどうすればいいですか?