nginx-启用了ngx_http_realip_module的白名单cloudflare Ips
发布时间:2021-03-30 14:29:28 所属栏目:Nginx 来源:互联网
导读:我在nginx上有一个运行cloudflare的网站,并希望阻止所有未通过cloudflare的请求.通常,我会将nginx配置中的nginx IP列入白名单,并拒绝其他所有IP.但是我正在运行ngx_http_realip_module,它将X-Forward-For地址(这是来自Visitor的实际Ip)设置为request-IP,因此
|
我在nginx上有一个运行cloudflare的网站,并希望阻止所有未通过cloudflare的请求. 通常,我会将nginx配置中的nginx IP列入白名单,并拒绝其他所有IP. 但是我正在运行ngx_http_realip_module,它将X-Forward-For地址(这是来自Visitor的实际Ip)设置为request-IP,因此请求被拒绝. 有没有一种方法可以使此白名单工作而无需停用ngx_http_realip_module?此外,此白名单应仅适用于对Nginx的请求,不适用于其他服务 提前致谢 最佳答案 我想出的唯一可以使用nginx完成的解决方案需要nginx 1.9.7或更高版本.您可以使用ngx_http_geo_module识别和阻止不是cloudflare ip的任何ip的响应. 使用此地理位置块.
然后,您可以将其添加到服务器块中.
对于所有不是来自$cloudflare_ip的连接,它将关闭连接. 之所以有效,是因为我在geo块中使用了$realip_remote_addr,当使用real_ip_header CF-Connecting-IP时,该块保留了原始客户端地址. (编辑:日照站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- NginX和PHP-FPM,随机502
- authentication – nginx auth_request:访问原始查询参数
- 缓存 – 清除nginx缓存文件并不总是有效
- django-nginx 500错误,tmp文件夹的权限被拒绝
- 在Nginx后面通过HTTPS访问Django Admin
- ubuntu – 为什么这个IPv6 listen指令也不接受IPv4?
- nginx将文件类型传递给后端服务器
- 代理 – 如何使用nginx将address.com/foo/bar重定向到addre
- nginx – 是否有任何证书颁发机构都支持SAN和通配符?
- ruby-on-rails-使用Nginx和Puma在Ruby on Rails应用程序上启
