Elastic Load Balancer后面的nginxnetworking服务器上基于IP的白名单

我在AWS的弹性负载平衡器后面运行nginx webservers。 真正的IP是通过X-Forwarded-For获得的。 面临的问题是如何使用这个来拒绝所有特定地点的特定来源的白名单。

例如:location / test / {include /etc/nginx/allowed-XForwardedFor.conf; 否认一切; }

我可以用variables来捕获X-Forwarded-For IP,然后在conf文件中使用它,或者以某种方式在位置上使用allow选项来使用它,或者在if条件的帮助下使用它吗?

使用nginx的真实模块 ,然后你不必担心X-Forwarded-For头; 你可以像负载平衡器不在那里那样只是在IP地址上进行操作。

示例configuration:

http { real_ip_header X-Forwarded-For; set_real_ip_from 172.19.0.0/16; # Netblock for my ELB's