在lnmp环境中,我想把网站屏蔽某些国家的ip地址访问,请问用什么方法?

  • 我不想让俄罗斯和美国的用户访问我的网站,这些国家的ip地址哪里有最新的ip地址集合

  • 具体的命令是什么?操作逻辑和详细的操作步骤,如果有详细的图文教程就更好了,先谢谢大家

阅读 4.5k
4 个回答

http://www.vpsee.com/2011/03/...

现在通过发行版安装的nginx可能已经集成geoip模块了,第一步就不需要。发行版也可能已经打包了GeoIP数据库,也不用你自己搞。具体你还是要看发行版里的说明。

两条思路:

  1. 基于iptables,但是首先你要知道IP的范围

  2. 程序级别控制,获取访问IP然后查询IP库。
    具体做法挺简单的,可以自行查找资料。

如果嫌屏蔽IP麻烦,为什么不换个思路。
使用阿某云的智能云解析,不给某些国家或地区做域名解析。

那肯定开始是引入判断的功能模块,这个功能模块和最新的ip库做对比,一旦发现俄罗斯和美国的ip就跳转到别的网站,或者显示一个假的404页面。当不是上述ip时执行正常的进入。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题