首页 > 系统相关 >一次nginx 请求真实ip 问题处理

一次nginx 请求真实ip 问题处理

时间:2022-10-07 11:37:30浏览次数:104  
标签:real set http 请求 nginx ip header

nginx ngx_http_realip 模块是比较重要的,我以前也大概说过,同时网上关于此模块的资料也不少,今天就碰到了一个获取真实ip 的问题
记录下

参考业务模型

一次nginx 请求真实ip 问题处理_html

 

 

问题

以前的配置,waf 会自动携带ip 到X-Forwarded-For,同时会附加最后一跳的ip

 

 real_ip_header     X-Forwarded-For;
real_ip_recursive on;

问题就出在没有仔细处理header,结果每次取到的ip 都是waf 节点的(应该是header 处理顺序的问题)

解决方法

实际上官方文档也已经写了,应该添加上可信ip 源 ​​set_real_ip_from​​​ 指令
参考

 

 real_ip_header     X-Forwarded-For;
set_real_ip_from 192.168.1.0/24;
set_real_ip_from 192.168.2.1;
real_ip_recursive on;

说明

实际上获取真实ip 的方法很多,还是得好好学习阅读官方文档,可以减少我们不少排错问题的时间

参考资料

​https://nginx.org/en/docs/http/ngx_http_access_module.html​​​
​​​https://nginx.org/en/docs/http/ngx_http_realip_module.html​​​

标签:real,set,http,请求,nginx,ip,header
From: https://blog.51cto.com/rongfengliang/5734328

相关文章

  • nginx ngx_http_addition_module 模块openresty content_by_lua 不能生效的原因
    nginx的ngx_http_addition_module模块也是一个修改content的好东西,对于openresty我们经常使用content_by_lua阶段处理但是经过分析ngx_http_addition_module源码的......
  • nginx 的 ngx_http_addition_module 模块
    nginx的ngx_http_addition_module提供了before以及after的能力,可以方便进行请求的处理参考使用环境docker-compose文件version:'3'services:app:image:openr......
  • CentOS下nginx的安装流程
     1基础配置系统:CentOSLinuxrelease7.9.2009(Core)NginX版本:nginx-1.20.1查看操作系统名称:cat/etc/centos-release查看相关系统信息:uname-auname--help可以查看具......
  • nginx 配置go服务反向代理
    nginx配置详细请看Nginx极简教程server{listen80;server_namelocalhost;#charsetkoi8-r;#nginx访问活动日志access_log......
  • KAL1 LINUX 官方文档之arm板版本 --- 华硕 Chromebook Flip(威龙)(更新于2022)
    华硕ChromebookFlip(威龙)ASUSChromebookFlip是四核1.8GHz、2GB或4GBRAMChromebook和10.1"10点多点触控触摸屏。KaliLinux可安装在外部microSD卡或USB驱......
  • (一)从路由器和IP地址开始折腾
    我们应当知道的一点是,由于IP地址只有32bit,所以很快就面临着不够用的情况,现在之所以大家还在正常使用IPv4,就是因为采用了公有地址和私有地址的概念:所谓的私有地址是从当......
  • 3.iptables 扩展模块
    multiport:添加多个不连续端口示例:10.0.0.10访问本机20、21、80、443允许通过;[root@route~]#iptables-tfilter-IINPUT-s10.0.0.10-d10.0.0.200-ptcp-mmu......
  • CLIP 读书笔记
    论文:LearningTransferableVisualModelsFromNaturalLanguageSupervisionCLIP:ContrastiveLanguage-ImagePre-training文中27个数据集简介:数据集简要描述数......
  • nginx自定义时间格式
    在每个server中加入:if($time_iso8601~"^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})"){set$year$1;......
  • Python第三方库管理Pip和Conda
    在本机开发完程序后,需要把程序移植到服务器之类的目标机上运行,或者分发给其余同事,经常会遇到第三方库管理,或者是不同项目之间用到的第三方库版本不一致,例如有时候需要tensor......