访问控制

访问控制

IP 黑白名单、UA 黑名单、可信代理(真实 IP 还原)、GeoIP 地理围栏,跑在检测之前的快门层。

「访问控制」是跑在检测之前的快门层:IP 黑白名单、UA 黑名单、可信代理(真实客户端 IP 还原)、GeoIP 地理围栏。命中即放行或拒绝,成本极低,把明显的坏流量挡在昂贵检测之前。

访问控制:IP / UA / 可信代理 / 地理围栏
访问控制:IP / UA / 可信代理 / 地理围栏

#可信代理:真实 IP 还原(最容易配错)

WAF 默认只认直连对端的 IP。仅当对端命中「可信代理」列表时,才信任它带的 X-Forwarded-For 头、从中取真实客户端 IP;否则完全忽略 XFF。

别乱填可信代理铁律:WAF 直接对着公网、前面没有代理时,可信代理必须留空——否则等于给了攻击者伪造 X-Forwarded-For 的口子。只填你自己可控的代理 IP,绝不要填公网 IP。

若前面有 nginx / LB 却不配,限流、IP 黑白名单、GeoIP、暴力破解锁定、攻击日志会把所有请求都算成代理那一个 IP——IP 类防护全部失效。同机 nginx 转发填 ["127.0.0.1"];异机填其内网 IP 或 CIDR。

#名单与地理围栏

字段 / 控件默认 / 示例说明
ip_whitelist[]命中则跳过快门(仍走检测),如 ["10.0.0.0/8"]
ip_blacklist[]命中直接 403,支持单 IP 与 CIDR(IPv4 / IPv6)。
ua_blacklist[]User-Agent 子串黑名单,如 ["sqlmap","nikto"]
geoip.modeblockblock 拦下列地区;allow 只放行下列地区(无法定位的 IP 一律放行,保可用)。
geoip.providerip2regionip2region 随仓库自带、含省/市粒度、面向国内最实用;maxmind 需自备 GeoLite2 .mmdb,全球国家级。
geoip 维度countries / provinces / cities命中任一维度即算命中;省 / 市仅 ip2region 生效,支持前缀(「广东」匹配广东省)。
攻击日志 里发现的恶意 IP,可直接加进这里的黑名单。