Nginx 防止IP伪造,绕过IP限制

背景介绍

在使用Nginx时,需要将IP地址转发到后置应用中,往往需要增加配置

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

在后端程序通过读取请求头里的X-Forwarded-For来获取用户客户端IP。

java 复制代码
public String getRemortIP(HttpServletRequest request) { 
  if (request.getHeader("x-forwarded-for") == null) { 
    return request.getRemoteAddr(); 
  } 
  return request.getHeader("x-forwarded-for"); 
}

但是,这个X-Forwarded-For可以通过修改报文来伪造IP。

解决办法

Nginx中增加配置

proxy_set_header X-Real-IP $remote_addr; #让WEB取得原始请求IP

代码中取客户端IP

java 复制代码
String clientIp = request.getHeader("X-Real-IP");
相关推荐
wniuniu_16 分钟前
增加依据。。
服务器·网络·数据库
颜子鱼1 小时前
Linux驱动-INPUT子系统
linux·c语言·驱动开发
Lueeee.1 小时前
llseek 定位设备驱动实验
linux·驱动开发
Jason_zhao_MR1 小时前
YOLO5目标检测方案-基于米尔RK3576开发板
linux·人工智能·嵌入式硬件·目标检测·计算机视觉·目标跟踪·嵌入式
小小程序媛(*^▽^*)1 小时前
Claude Code 新手保姆级安装与使用指南 (ZCF 版)
linux·编辑器·vim
筱谙2 小时前
BES BLE低功耗蓝牙技术实现分析
服务器·网络·网络协议
鱼香rose__2 小时前
管道、环境变量与常用命令
linux
RisunJan2 小时前
Linux命令-last(查看用户登录历史)
linux·服务器·网络
断水客2 小时前
搭建ARM LINUX 内核 QEMU 仿真调试环境
linux·运维·arm开发·嵌入式
fantasy5_52 小时前
深入理解 Linux 动静态库:制作、原理与加载机制
linux·运维·restful