问题:使用cloudflare时如何阻止国家服务器? [关闭]

我尝试使用以下代码阻止国家/地区 nginx.conf:

   geoip_country /usr/share/GeoIP/GeoIP.dat;
    map $geoip_country_code $allow_visit {
       default yes;
      RU no;
   }

但是我使用 CLoudFLare /cdn 服务。所以当我阻止某些国家/地区时。有时我无法登录到我的系统。Coz cloudflare 服务器可能在我的阻止国家/地区。所以我应该从阻止国家列表中删除 cloudflare ips。但是我该怎么做呢?有什么建议吗?

我在我的服务器上使用 ubuntu 14.04 / nginx..

*

现在我受到了攻击。你们知道,有网络战争,所以我应该尽快解决这个问题。

*

提前致谢。

解答

CloudFlare 允许您在 CloudFlare 级别阻止某些国家/地区访问您的网站。为此:

  1. 在您的 CloudFlare 控制面板中选择您的域

2.选择“防火墙”选项卡

  1. 在“IP 防火墙”选项卡上,您可以输入 IP、IP 范围或国家,然后单击阻止。

这将在任何攻击甚至攻击您的服务器之前阻止该国家/地区访问您在 CloudFlare 级别的所有网站。

如果您出于某种原因需要使用 Nginx 解决方案而不是 CloudFlare 的防火墙来阻止它,您可以查看在控制面板的“网络”选项卡下启用“IP 地理位置”。这会将标头“HTTP_CF_IPCOUNTRY”添加到所有请求中,并将在标头中包含国家代码(即美国、英国、俄罗斯)。

如果您需要阻止基于某些 IP 的任何请求,或者自己执行 IP 查找。然后,您应该使用包含在每个请求中的默认 CloudFlare 标头,该标头包含名为“CF-Connecting-IP”的客户端 IP。对于未来的信息,CloudFlare 有一篇很好的文章写在这里他们如何处理他们的标题。

Logo

开发云社区提供前沿行业资讯和优质的学习知识,同时提供优质稳定、价格优惠的云主机、数据库、网络、云储存等云服务产品

更多推荐