x-forwarded-for

在 Shibboleth 的审计日志中记录 X-Forwarded-For IP
x-forwarded-for

在 Shibboleth 的审计日志中记录 X-Forwarded-For IP

这是我之前关于捕捉X-Forwarded-For 跨多个代理的 IP 地址。现在,我希望在应用程序(Shibboleth 的 IdP)日志中捕获客户端的 IP。 以下内容: Client > Load Balancer > Apache httpd server > Tomcat server (running Shibboleth's IdP) 我可以使用server.xmlClientIP在 Web 服务器的日志中捕获负载均衡器上客户端 IP 的变量:LogFormat "%{ClientIP}i ... " and simil...

Admin

IIS 重写规则修改 X-Forwarded-For 标头中的 IP 格式
x-forwarded-for

IIS 重写规则修改 X-Forwarded-For 标头中的 IP 格式

我使用 IIS 作为反向代理,我发现默认情况下,当使用内置方法让 IIS 将客户端 IP 添加到 X-Forwarded-For 标头中时,如果客户端 IP 是 IPv6,它会将 IP 括在 [ ] 中(例如,[2406:cafe:1:beef:35e1:dead:1574:face])。对于大多数我将 IIS 作为反向代理的应用程序,这很好并且不会引起问题,但 Home Assistant 不喜欢标头将 [ ] 作为 IP 的一部分,因此会失败。我希望有一种方法可以在 IIS 中操纵该标头的内容以删除包围 IP 的 [ ]。 我认为出站规则可能是可行的方法...

Admin

从转发的连接中读取“源 IP”
x-forwarded-for

从转发的连接中读取“源 IP”

我的防火墙工作正常:来自互联网的连接被转发到 NGINX 服务器,然后进行相应分配,并且应用服务器(内部日志除外)正常工作。 我面临的问题与我们的应用程序服务器接收的 IP 有关:它们不是“客户端 IP”,而是当前的 NGINX IP。 考虑这个网络:客户端 IP 1、防火墙 IP 2、NGINX IP 3、Web 服务器 IP 4。 在防火墙处我们看到数据包被转发到 NGINX,但在 NGINX 处tcpdump我们看到来自自己的 NGINX IP 3 而不是原始源 IP 1 的传入连接。 关键在于,在 Web 服务器日志中,我们看到输入连接为 IP 3,...

Admin

Apache 的 remoteip 模块未填充 client_ip
x-forwarded-for

Apache 的 remoteip 模块未填充 client_ip

在内网环境中,我有一个相对复杂的场景,都在同一台服务器上: IIS server acting as a reverse proxy listening on 443 forwards matching requests to localhost:1080/redmine Apache reverse proxy is listening on 1080 forwards matching requests to localhost:3001 or localhost:3002 (thin servers in front of Redmine) Thi...

Admin

“proxy_set_header 升级”导致“real_ip_header”不起作用
x-forwarded-for

“proxy_set_header 升级”导致“real_ip_header”不起作用

nginx配置: map $http_upgrade $connection_upgrade { default keep-alive; 'websocket' upgrade; } set_real_ip_from 127.0.0.1; set_real_ip_from 192.168.203.1; real_ip_recursive on; real_ip_header X-Forwarded-For; .... location / { gzip off; proxy_pass http://127.0.0.1:808...

Admin

如何将“x-forwarded-for”数据插入物理 l4 交换机中的 http 标头?
x-forwarded-for

如何将“x-forwarded-for”数据插入物理 l4 交换机中的 http 标头?

0 在 L4 交换机中,有一个“x-forwarded-for”功能,它将客户端源 ip 地址放在 http 标头中。 l4 交换机只能知道第 4 层信息,所以我很好奇如何放置 x-forwarded-for 信息 http 标头(http 标头在第 7 层!!)。即使在 https 中,http 标头也是加密的,L4 交换机如何解密这个加密的 http 标头,插入 x-forwared-for 信息,并将数据包发送到后端? 谢谢! ...

Admin

如何正确配置 Nginx XFF?
x-forwarded-for

如何正确配置 Nginx XFF?

我正在尝试按照此处的说明进行操作: https://nginx.org/en/docs/http/ngx_http_realip_module.html 并在此引用: https://www.loadbalancer.org/blog/nginx-and-x-forwarded-for-header/ 和这里: https://stackoverflow.com/questions/43689588/how-to-set-up-realip-module-in-nginx 但我似乎无法正确执行。这是相关的 Nginx 块。有人能告诉我哪里出错了吗? ...

Admin

如何在 AWS Loadbalancer 后面的 HAProxy 上访问 X-Forwarded-For 标头
x-forwarded-for

如何在 AWS Loadbalancer 后面的 HAProxy 上访问 X-Forwarded-For 标头

在 K8S 上运行的 HAProxy 实例上,我需要在 HAProxy 上手动阻止某些 IP 地址。目前我已经无法记录它们。根据 AWS 文档,负载均衡器设置X-Forwarded-For请求标头并填写客户端 IP 地址。 当尝试记录此标头(以及客户端 IP)时,使用 HAProxy 版本 2.0.18 和 2.2.20 时,我总是得到空字符串。所以我猜,我错误配置了 HAProxy。我的配置如下: global daemon maxconn 256 log stdout format raw local0 defaults ...

Admin

谁设置了 X-Forwarded-For 限制?
x-forwarded-for

谁设置了 X-Forwarded-For 限制?

假设我使用 curl 向 Web 服务器发出 https GET 请求,而不指定任何标头。 在 Web 服务器上,我看到传入请求设置了 X-Forwarded-For (XFF) 标头。鉴于我没有设置该标头,那么是谁设置的呢? 我猜想是我的 ISP 截取了我的请求并将该标头添加到我的请求中。然后,通往 Web 服务器的其他链接(交换机、路由器等)会将其自己的 IP 添加到 XFF 标头中。 这是正确的吗?假设是的,如果我在请求中设置 XFF 标头会发生什么?ISP 会覆盖该标头还是会将其 IP 附加到该标头? ...

Admin

无法从 NAT + 反向代理获取入站连接的公共 IP
x-forwarded-for

无法从 NAT + 反向代理获取入站连接的公共 IP

我的网络流程如下: Public Client ∟--> CDN Reverse Proxy (Cloudflare) - ONLY used for HTTP/S traffic, all else goes direct ∟--> Cloud Server w/ firewalld forwarding ∟--> Private Server ∟--> Docker Reverse Proxy (Traefik) ...

Admin

Apache 不会记录 X-Forwarded-For
x-forwarded-for

Apache 不会记录 X-Forwarded-For

我试图在 Apache 访问日志中记录存储在 X-Forwarded-For http 标头中的客户端 IP,但没有成功,并且已经花了好几个小时才弄明白。我尝试了很多不同的方法 - 似乎都没有用! 首先我尝试: # Fields to record LogFormat "(%{X-Forwarded-For}i) %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined # Log locations CustomLog "/var/log/httpd/access.log...

Admin

启用 nginx / set_real_ip_from 后显示上游 Cloudflare 服务器 IP
x-forwarded-for

启用 nginx / set_real_ip_from 后显示上游 Cloudflare 服务器 IP

我按照 cloudflare 文档 [1] 中的说明启用了此功能,set_real_ip_from以显示原始客户端的 IP 我的日志格式是 log_format main '$remote_addr $http_cf_connecting_ip $http_x_forwarded_for 假设客户端真实 IP 为 X,cloudflare 服务器为 Y 启用之前 日志是Y X X 启用后 日志是X X X 问题 这是正常的吗? 启用后,CF 服务器 IP 信息丢失,如何记录? [1]https://support.cloudflare.com/hc...

Admin

阻止用户绕过 IP 封锁?
x-forwarded-for

阻止用户绕过 IP 封锁?

一个用户以某种方式避开了 apache 2.2/2.4 中的 IP 阻止,我不知道是怎么回事。我所在的公司在不同的数据中心托管了数百个站点;这个用户正在攻击我们托管的几个站点。 remote_addr根据数据中心的不同,用户在或字段中输入其 IP X-Forwarded-For。我们维护两个“不良行为者”列表,这些列表基于 remote_addr 或 X-Forwarded_For 字段中的 IP 地址,位于一个文件中,该文件包含在 中apache.conf。这些行看起来像 SetEnvIf X-Forwarded-For 41\.216\.xxx\.x...

Admin

现场经验是否表明 HTTP POST 比 PUT 和 DELETE 更可靠
x-forwarded-for

现场经验是否表明 HTTP POST 比 PUT 和 DELETE 更可靠

我需要交叉参考我的经验和专业人士的经验,因为我正在开发一个 REST 应用程序,它可以 在 HTTP POST 上进行所有删除和创建操作 或者使用 HTTP DELETE 和 PUT 进行相同的操作 有没有证据支持 HTTP POST 相对于缓存代理、转发器甚至 Tor 具有更一致的行为。 我怀疑通过使用除 POST 之外的更多方法,以下领域出现错误的风险会增加: 使用 Cache-Control 时出现意外行为的粘性缓存 可能与同源策略的实施不一致 与网络检查和分析工具的兼容性 除了 application/json 之外的替代编码(为了提高...

Admin

当您不知道中间代理 IP 地址时使用 Nginx real_ip
x-forwarded-for

当您不知道中间代理 IP 地址时使用 Nginx real_ip

Nginx 的real_ip模块允许您$remote_addr根据特定标头字段中发送的值设置变量。它对X-Forwarded-For标头有特殊的理解,并且能够使用标头中最右侧的不受信任的值作为连接 IP 地址。 我想使用 real_ip 模块来设置$remote_addr连接 IP 地址。我遇到的问题是,我知道从要查看的末尾回溯多少个跳数X-Forwarded-For,但不知道中间代理的 IP 地址。据我了解,这意味着我不能用来set_real_ip_from指定代理的 IP 地址。 我希望能够做的是配置 nginx 以选择列表中倒数第二个地址作为$re...

Admin