在IIS 上配置 X-Forwarded-For 防护
来源:本站原创
点击数: 次
发布时间:2025年12月09日
客户没有装nginx,直接用iis设置。
X-Forwarded-For(XFF)是一个 HTTP 头,通常用于记录客户端的真实 IP 地址,尤其是在反向代理服务器(如 Nginx、CDN)前后。攻击者可以伪造这个头部,绕过 IP 访问控制。因此,我们需要在 IIS 上配置防护规则,防止伪造的 X-Forwarded-For 请求。
步骤:在 IIS 上设置 X-Forwarded-For 防护
安装 URL Rewrite 模块
首先,确保 IIS 安装了 URL Rewrite 模块。如果没有,可以从 IIS 下载中心下载并安装。配置入站规则
打开 IIS 管理器,选择网站 → 双击 URL Rewrite → 点击 添加规则,选择 空白规则(Blank Rule)。条件 1:
{HTTP_X_FORWARDED_FOR}→ 正则表达式.+(表示请求包含 XFF)条件 2:
{REMOTE_ADDR}→ 不匹配模式,设置为可信的反代 IP(例如:^172\.16\.20\.50$)规则名称:
防止伪造 XFF请求 URL:选择
正则表达式,并设置为.*(匹配所有请求)添加条件:
配置动作:选择 自定义响应,设置状态码
403,并写上“伪造 XFF”作为描述。保存并应用
点击 应用,保存规则。之后,重启 IIS 或回收应用池。
如何测试规则是否生效
使用 curl 测试伪造的 X-Forwarded-For 请求:
curl -v -H "X-Forwarded-For: 8.8.8.8" https://你的域名/
