详解CentOS下Nginx如何禁止IP访问

 更新时间:2016年10月20日 11:53:56   投稿:daisy  
服务器的安全相信是每位运维人员最关心的问题,不知道大家在使用的时候会不会遇到很多的恶意IP攻击,最近公司的服务器就遇到了这个问题,这个时候就要用到Nginx 禁止IP访问了。本文介绍了详细的步骤,有同样问题的朋友们可以参考学习。

我们就先看看Nginx的默认虚拟主机在用户通过IP访问,或者通过未设置的域名访问(比如有人把他自己的域名指向了你的ip)的时候生效最关键的一点是,在server的设置里面添加这一行:

 listen 80 default; 

后面的default参数表示这个是默认虚拟主机。

Nginx 禁止IP访问这个设置非常有用。

比如别人通过ip或者未知域名访问你的网站的时候,你希望禁止显示任何有效内容,可以给他返回500.目前国内很多机房都要求网站主关闭空主机头,防止未备案的域名指向过来造成麻烦。

就可以这样设置:

 server {   listen 80 default;   return 500;  } 

也可以把这些流量收集起来,导入到自己的网站,只要做以下跳转设置就可以:

 server {   listen 80 default;   rewrite ^(.*) http://www.mydomain.com permanent;  } 

按照如上设置后,确实不能通过IP访问服务器了,但是在应该用中出现当server_name后跟多个域名时,其中一个域名怎么都无法访问

设置如下:

 server {   listen 80;   server_name www.abc.com abc.com  }

没更改之前,通过server_name 中的www.abc.com abc.com均可访问服务器,加入Nginx 禁止IP访问的设置后,通过abc.com无法访问服务器了,www.abc.com可以访问,用 Nginx -t 检测配置文件会提示warning:

 [warn]: conflicting server name “abc.com” on 0.0.0.0:80,  ignored  the configuration file /usr/local/webserver/Nginx/conf/  Nginx.conf syntax is ok  configuration file /usr/local/webserver/Nginx/conf/Nginx.  conf test is successful

最后通过在listen 80 default;后再加server_name _;解决

形式如下:

 #禁止IP访问  server {   listen 80 default;   server_name _;   server_name www.abc.com abc.com   return 500;  } 

这样,通过abc.com就能访问服务器了。

总结

好了,以上就是CentOS下Nginx禁止IP访问的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

相关文章

  • apache documentroot指向htcdoc之外提示403错误的解决方法

    apache documentroot指向htcdoc之外提示403错误的解决方法

    在windows和RH都碰到过,只要把主目录指到其他地方后就出现权限不够的403提示,郁闷了好久。
    2010-04-04
  • Linux文本处理命令sort详解

    Linux文本处理命令sort详解

    今天小编就为大家分享一篇关于Linux文本处理命令sort详解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • linux系统下oracle11gR2静默安装的经验分享

    linux系统下oracle11gR2静默安装的经验分享

    这篇文章主要介绍了linux系统下oracle11gR2静默安装的经验, 所有操作无需使用图形界面. 静默安装能减少安装出错的可能性, 也能大大加快安装速度。有需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-01-01
  • linux服务器上安装jdk的两种方法(yum+下载包)

    linux服务器上安装jdk的两种方法(yum+下载包)

    这篇文章主要给大家介绍了关于在linux服务器上安装jdk的两种方法,分别是利用yum安装和从官网下载包安装,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起看看吧
    2018-05-05
  • Linux中对MySQL优化实例详解

    Linux中对MySQL优化实例详解

    这篇文章主要介绍了Linux中对MySQL优化实例详解的相关资料,需要的朋友可以参考下
    2017-05-05
  • Mac中文件权限查看和设置详解

    Mac中文件权限查看和设置详解

    这篇文章主要给大家介绍了关于Mac系统下文件权限查看和设置的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用Mac具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-03-03
  • 详解如何在Linux中重置MySQL或者MariaDB的root密码

    详解如何在Linux中重置MySQL或者MariaDB的root密码

    本篇文章主要介绍了如何在 Linux 中重置 MySQL 或者 MariaDB 的 root 密码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-03-03
  • Centos7.2 编译安装方式搭建 phpMyAdmin

    Centos7.2 编译安装方式搭建 phpMyAdmin

    这篇文章主要介绍了Centos7.2 编译安装方式搭建 phpMyAdmin ,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • 最完的htaccess文件用法收集整理

    最完的htaccess文件用法收集整理

    最完的htaccess文件用法收集,这篇文章确实很详细,需要的朋友可以参考下
    2012-05-05
  • 阿里云云服务器Linux系统挂载数据盘图文教程

    阿里云云服务器Linux系统挂载数据盘图文教程

    这篇文章主要介绍了阿里云云服务器Linux系统挂载数据盘图文教程,阿里云服务器一般需要购买额外的数据盘,本文就讲解如何挂载使用额外的数据盘,需要的朋友可以参考下
    2014-09-09

最新评论