V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
V2EX  ›  Hardrain  ›  全部回复第 22 页 / 共 47 页
回复总数  927
1 ... 18  19  20  21  22  23  24  25  26  27 ... 47  
1. XFF header 的规则是这样,每经过一个代理 /CDN,这个代理 /CDN 就把上一个代理 /CDN/用户的 IP 附加到 XFF 后面,逗号分隔。这符合 HTTP 对于一个 Header 多个参数的规范。
例: 后端----前端(反代)------CDN/缓存------负载均衡器------用户

后端收到的 XFF 内容如下:用户 IP, 负载均衡器 IP, CDN/缓存 IP

参考: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For

2. 关于获取 XFF 中用户的 IP:
Apache 和 Nginx 都有相关模块,请参考文档。
https://httpd.apache.org/docs/2.4/mod/mod_remoteip.html
http://nginx.org/en/docs/http/ngx_http_realip_module.html

3. PHP 获取 XFF header 的内容:
关于 PHP 获取 Header: https://secure.php.net/manual/zh/function.getallheaders.php
不过这个只适用于 Apache+mod_php,底下评论里有 Apache+PHP-FPM/Nginx 这类只能用 FPM 的 HTTP Server 所适用的解决方案

如果 XFF 有多个 IP,用 explode()逗号做 delimiter 转成数组再处理

4. 关于伪造 XFF,楼主想必看了些关于"伪造 XFF 绕过基于 IP 的 ACL"的文章。但我不得不说,you're so rigid. XFF 是 header,改个名字(X-Real-IP, X-Client-IP, etc)就不能被伪造了?

对付伪造, @Reficul 所说的才是有效的解决方案。你需要的是白名单,即只接受(你所用 CDN 的)指定 IP 发来的请求中的 XFF。

参考 Apache mod_remoteip 的 RemoteIPTrustedProxy 和 RemoteIPTrustedProxyList 参数
Nginx 的 set_real_ip_from 参数。

-------

可算是把饭"喂到嘴"了,恁可以自己去查查文档吗?
2018 年 6 月 11 日
回复了 yantianqi 创建的主题 程序员 写代码,你们习惯用笔记本还是台式机呢?
笔电的话一定要有个机械键盘……
现在笔电越来越薄,键盘的键程也越来越短,长时间使用很不舒适。
2018 年 6 月 10 日
回复了 koalli 创建的主题 程序员 请教可靠、快速、安全的持续集成、持续部署方案
docker +1
2018 年 6 月 10 日
回复了 t333st 创建的主题 全球工单系统 新浪 ip 查询接口 403 啦。。。
https://ip.sb 可否作为替代?
@just1 Linode 好久不用 不太了解
但 Vultr 是可以用尽流量后关机的
2018 年 6 月 10 日
回复了 ywgx 创建的主题 程序员 HTTPS 证书配置一劳永逸
恕我直言,
caddy 的一键 let's encrypt 了解下?
caddy 太小众? Apache 的 mod_md 了解下?
2018 年 6 月 7 日
回复了 licoycn 创建的主题 NGINX Nginx 反向代理图片带宽流量算谁的?
你所说的情况不够具体

我暂且理解为"Nginx 反代和所访问的后端都在互联网上"(即:不存在 proxy_pass scheme://127.0.0.1:port/path 的情况)

此时反代服务器可能会被记 1 倍或 2 倍于所请求资源大小的流量,取决于你的 IDC 是单向(只针对入站)计费还是双向计费(入站和出站)。

后端当然只被记 1 倍的流量。
@Hardrain *2.(我所在的)澳大利亚的某大学 => (我所在的)澳大利亚的某大学部署了类似的系统
1. 这种技术被滥用是很可怕的,参考马伯庸《寂静之城》。
2. (我所在的)澳大利亚的某大学,校方称"该系统提供了更好的使用体验",比如在校内多台电脑上登录,使用体验就像是用同一台电脑(不只是共享文件,包括安装的软件 /系统设置等),三大系统(Linux Distro 是 Debian 8)都支持。

除 GPU 外性能没有受到可感的影响;但 GPU 性能很差(八成是 Virtualizor 拿 CPU 模拟的),很好地阻止了学生玩游戏(在学校提供的电脑上玩游戏不被允许)

3. 我在家里自建过一个类似的系统,起初是用 CentOS+KVM,但因图形性能太差换作 VMware(用自带的 VNC 连接),后又将 VMWare 的 VNC 换成 RDP(Windows 自带 /Linux 的 Xrdp)。但用作公网端口转发的阿里云 VPS 带宽太低,透过 VPN 连到家里内网的速度完全不够跑远程桌面,此项目已废弃。
2018 年 6 月 5 日
回复了 AndroidTraveler 创建的主题 程序员 今天打开 GitHub,发现上面有个东西很醒目
@scriptB0y 一语成谶
2018 年 6 月 4 日
回复了 ldehai 创建的主题 宠物 捡了只流浪猫,求起名,小黑猫,母的
modem
2018 年 6 月 3 日
回复了 emine0764 创建的主题 硬件 内存价格会降??存储三巨头遭反垄断调查
想多了
兲朝要是罚,罚金最后八成会是消费者来出
2018 年 6 月 1 日
回复了 p0wd3rop 创建的主题 程序员 不考虑挖矿,家里空闲的电脑能做什么?
NAS
不过最好是台式机(一体机除外)
如果是 DER(二进制)格式,openssl x509 后面加-inform DER
如果是 PEM(Base64)格式,无需处理
openssl x509 -noout -text -in {证书路径}|grep -Ee 'CA:'

看输出的是 CA:FALSE 还是 CA:TRUE
2018 年 5 月 31 日
回复了 daijinming 创建的主题 程序员 Nginx 日志按天生成怎么设置
logrotate 了解下?
似乎会显示 UID
另外 在同一台机器上被删除的用户所所有的文件的所有者也变成 UID 了
1 ... 18  19  20  21  22  23  24  25  26  27 ... 47  
About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2878 Online   Highest 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 41ms · UTC 14:38 · PVG 22:38 · LAX 07:38 · JFK 10:38
♥ Do have faith in what you're doing.