



Issue a JS challenge from Anti-bot module if GEOIP places client in Japan, USA or Great Britain
http-request set-var(txn.geoip_region_code) src,maxmind-lookup("COUNTRY","country","iso_code")
acl sus_country var(txn.geoip_region_code) JP GB US
http-request send-challenge SECKEY 12345 123456 1500 1(challenge.html) if sus_country Use a dynamic rate limit from lb-update to limit clients based on the cluster wide request rate from GPE.
http-request set-var(txn.r_limit) str(rate_limit),map(/var/maps/dynamic.map,300)
http-request track-sc0 src table rate
http-request deny deny_status 429 if { src,table_http_req_rate(rate.agg),sub(txn.r_limit) gt 0 }
...
backend rate
stick-table type ip size 1048576 expire 86400000 peers "${peers_section_name}" \
store http_req_cnt,http_req_rate(60s),http_err_rate(60s)
backend rate.agg
stick-table type ip size 1048576 expire 86400000 peers "${peers_section_name}" \
store http_req_cnt,http_req_rate(60s),http_err_rate(60s)
...
dynamic-update
update id /var/maps/dynamic.map url http://maps/dynamic_settings.map delay 10000 map