Modsecurity bloqueia o acesso de todos os países, exceto de um IP específico ou host remoto específico

Modsecurity bloqueia o acesso de todos os países, exceto de um IP específico ou host remoto específico

Eu tenho as 3 regras abaixo em modsecurity.

Regra 1: Bloquear todos os países definidos como de alto risco, exceto 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"

Regra 2: Permitir acesso do seguinte IP:

SecRule REMOTE_ADDR "^XX\.XX\.XX\.XX$" "phase:1,id:2000002,nolog,allow,msg:'Allow access from IP XX.XX.XX.XX'"

Regra 3: permitir acesso do seguinte host remoto:

SecRule REMOTE_HOST "host\.name\.com$" "phase:1,id:2000003,nolog,allow,msg:'Allow access from host.name.com'"

Todas as regras funcionam bem se adotarmos qualquer uma delas. No entanto, gostaria de "mesclá-los" em uma regra que faça o seguinte:

Bloquear todos os acessos dos países proibidos (Regra 1), exceto quando a solicitação vier do IP XX.XX.XX.XX(Regra 2) ou exceto quando o host for host.name.com(Regra 3).

Como posso fazer isso no modscurity?

informação relacionada