ModSecurity统计一个IP访问的主机数
ModSecurity count the number of hosts accessed by an IP
我需要使用 ModSecurity 屏蔽同时访问 3 个以上域的 IP 地址
例如,如果某些 ip 访问:
domain1.com/someuri234
domain2.com/someuri2342
domain3.com/someuri534535
domain1.com/someuri234234
domain5.com/someuri234234
然后我们阻止它
所以我们需要统计域的数量并检查它
感谢您的帮助
我可以使用 exec:/script.sh
实现这个场景并通过 setenv
发送请求信息然后收集请求数据并在脚本上分析它们并使用防火墙阻止 ip 地址
SecAction "id:1233456,phase:1,nolog,pass,\
setenv:RQ_REMOTE_HOST=%{REMOTE_HOST},\
setenv:RQ_REMOTE_ADDR=%{REMOTE_ADDR},\
setenv:RQ_SERVER_NAME=%{SERVER_NAME},\
setenv:RQ_SERVER_ADDR=%{SERVER_ADDR},\
setenv:RQ_SERVER_PORT=%{SERVER_PORT},\
setenv:RQ_REQUEST_URI=%{REQUEST_URI},\
setenv:RQ_REQUEST_LINE=%{REQUEST_LINE},\
setenv:RQ_SCRIPT_FILENAME=%{SCRIPT_FILENAME},\
setenv:RQ_SCRIPT_USERNAME=%{SCRIPT_USERNAME},\
setenv:RQ_USERAGENT=%{REQUEST_HEADERS.User-Agent},\
exec:/script.sh"
我需要使用 ModSecurity 屏蔽同时访问 3 个以上域的 IP 地址
例如,如果某些 ip 访问:
domain1.com/someuri234
domain2.com/someuri2342
domain3.com/someuri534535
domain1.com/someuri234234
domain5.com/someuri234234
然后我们阻止它
所以我们需要统计域的数量并检查它
感谢您的帮助
我可以使用 exec:/script.sh
实现这个场景并通过 setenv
发送请求信息然后收集请求数据并在脚本上分析它们并使用防火墙阻止 ip 地址
SecAction "id:1233456,phase:1,nolog,pass,\
setenv:RQ_REMOTE_HOST=%{REMOTE_HOST},\
setenv:RQ_REMOTE_ADDR=%{REMOTE_ADDR},\
setenv:RQ_SERVER_NAME=%{SERVER_NAME},\
setenv:RQ_SERVER_ADDR=%{SERVER_ADDR},\
setenv:RQ_SERVER_PORT=%{SERVER_PORT},\
setenv:RQ_REQUEST_URI=%{REQUEST_URI},\
setenv:RQ_REQUEST_LINE=%{REQUEST_LINE},\
setenv:RQ_SCRIPT_FILENAME=%{SCRIPT_FILENAME},\
setenv:RQ_SCRIPT_USERNAME=%{SCRIPT_USERNAME},\
setenv:RQ_USERAGENT=%{REQUEST_HEADERS.User-Agent},\
exec:/script.sh"