阻止代理后面的 IP 的 Nginx

阻止代理后面的 IP 的 Nginx

我在这里运行 Nginx 1.2.4 网络服务器,并使用主机代理来防止 DDoS 攻击。使用这个代理的缺点是我需要从额外的标头中获取真实 IP 信息。在 PHP 中,这样做效果很好$_SERVER[HTTP_X_REAL_IP]

现在,在我使用我的主机托管代理之前,我有一种非常有效的方法可以通过以下方式阻止某些 IP:include /etc/nginx/block.conf并允许/拒绝那里的 IP。

但现在由于代理,Nginx 看到所有流量都来自 1 IP。

有没有办法可以让 Nginx 像 PHP 那样通过标头读取 IP X-REAL-IP

答案1

通常代理服务器会发送一个包含客户端真实 IP 地址的 X_FORWARDED_FOR 标头。您可以使用它--with-http_realip_module来获取真实 IP 地址。这是模块的页面

答案2

我解决了。

必须添加:set_real_ip_from 0.0.0.0;

该 IP 是代理

相关内容