mah*_*off 11 proxy nginx whitelist
Nginx支持allow和deny限制IP的语法,例如allow 192.168.1.1;.但是,如果流量通过反向代理,则IP将引用代理的IP.那么如何将其配置为将特定原始IP列入白名单并拒绝所有其他传入请求?
ngr*_*ves 12
remote_addr将引用代理,但您可以配置代理以使用标头字段X-Real-IP/X-Forwarded-For发送客户端地址.
结合ngx_http_realip模块,您可以修改传入标头以使用remote_addr的真实客户端地址.我相信这将使用allow/deny语法按预期工作.
只是为了澄清 - 启用和配置模块后,允许/拒绝语法应该是相同的.替换下面的IP和您的代理地址.
后端nginx允许/拒绝:
location / {
allow <your ip>;
allow 127.0.0.1;
deny all;
}
Run Code Online (Sandbox Code Playgroud)
后端nginx realip配置:
set_real_ip_from <your proxy>;
real_ip_header X-Forwarded-For;
Run Code Online (Sandbox Code Playgroud)
在您的nginx代理配置上:
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
Run Code Online (Sandbox Code Playgroud)
如果涉及多个中间代理,则需要使用set_real_ip_from指令启用real_ip_recursive并将其他地址列入白名单.
| 归档时间: |
|
| 查看次数: |
10368 次 |
| 最近记录: |