Nginx访问限制配置详解

 更新时间:2018年10月30日 10:08:42   作者:独孤小标  
nginx访问限制可以基于两个方面,一个是基于ip的访问控制,另一个是基于用户的信任登陆控制,本文就详细的介绍了这两种方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

什么是Nginx访问限制配置

nginx访问限制可以基于两个方面,一个是基于ip的访问控制,另一个是基于用户的信任登陆控制

下面我们将对这两种方法逐个介绍

基于IP的访问控制介绍:

可以通过配置基于ip的访问控制,达到让某些ip能够访问,限制哪些ip不能访问的效果

这是允许 访问的配置方法

配置语法:allow address | CIDR | unix | all;

默认配置:没有配置

配置路径:http、server、location、limit_except下;

这是不允许访问的配置

方法配置语法:deny address | CIDR | unix | all;

默认配置:没有配置

配置路径:http、server、location、limit_except下;

基于IP访问限制的测试

1. 查看本机ip地址,如果是公网,则到 ip138网查看,如果是试验,使用cmd查看。

2. 在 /opt/app/code/目录下添加一个 admin.html 文件,里面就是一个带着背景颜色的普通admin页面

3. 在 /etc/nginx/conf.d/目录下,修改default.conf文件,添加如下内容


由上图可知,添加了一个location,来匹配 admin.html,在里面设置了基于ip限制的配置, 将 192.xx.xx.xx 限制,不让其访问,其他的都可以访问。

4. 重新加载nginx

5. 浏览器输入网址,查看日志



6. 从上图看之,已经实现了 限制某个ip的访问,如果只允许某个ip访问,只需要改下关键字即可。

示例:

一、服务器全局限IP

#vi nginx.conf
  allow 10.115.0.116; #允许的IP
  deny all;

二、站点限IP

#vi vhosts.conf
站点全局限IP:
location / {
  index index.html index.htm index.php;
  allow 10.115.0.116;
  deny all;

站点目录限制

location ^~ /test/ {
  allow 10.115.0.116;
  deny all;

基于登陆用户信任的访问控制

举个例子,我们在访问apache信息时弹出一个用户密码框提示,来进行一个访问前验证。

配置语法:auth_basic string | off;

默认配置:auth_basic off;

配置路径:http、server、location、limit_except;

匹配配置语法: auth_basic_user_file filePath;

匹配默认配置: 没有配置

匹配配置路径: http、server、location、limit_except;

1. 需要添加一个身份文件,auth_conf 文件,这里使用一个 htpasswd工具

使用一下命令   htpasswd -c ./auth_conf  root;

解释一下:  htpasswd 命令   -c:默认是使用md5加密, ./auth_conf 是指定路径和文件 , root是用户名

输入之后,会输入两次密码


2. 修改 default.conf配置文件,修改内容如下


3. 重新加载nginx

4. 输入网址,查看结果,可以看出 要输入身份信息才能访问


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Nginx配置WebSocket代理的示例代码

    Nginx配置WebSocket代理的示例代码

    本文提供了关于Nginx的配置和日志记录的详细指南,介绍了如何使用whereis命令查找Nginx路径,并通过man命令查看手册,同时,详解了解Nginx访问日志的配置方法及参数含义,并分享了Nginx代理WebSocket的配置示例,感兴趣的可以了解一下
    2024-10-10
  • Nginx的mirror指令示例配置

    Nginx的mirror指令示例配置

    这篇文章主要介绍了Nginx的mirror指令能干啥?mirror 指令提供的核心功能就是流量复制, 至于流量复制要用来干嘛,这个就各取所需了,需要的朋友可以参考下
    2022-05-05
  • nginx安装vsftpd最简流程

    nginx安装vsftpd最简流程

    给大家分享一下在nginx环境中最简单的安装vsftpd的流程,初学者跟着学习下吧。
    2017-12-12
  • Centos 6.5 64位中Nginx详细安装部署教程

    Centos 6.5 64位中Nginx详细安装部署教程

    Nginx是一个web服务器也可以用来做负载均衡及反向代理使用,目前使用最多的就是负载均衡,具体简介我就不介绍了百度一下有很多,下面直接进入安装步骤,需要的朋友可以参考下
    2017-08-08
  • Nginx配置二级域名的方法实现

    Nginx配置二级域名的方法实现

    本文主要介绍了Nginx配置二级域名的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • 高性能软件负载OpenResty介绍和安装使用详解

    高性能软件负载OpenResty介绍和安装使用详解

    OpenResty是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项,这篇文章主要介绍了高性能软件负载OpenResty介绍和安装,需要的朋友可以参考下
    2023-12-12
  • Nginx 配置 ModSecurity 网络应用防火墙实现

    Nginx 配置 ModSecurity 网络应用防火墙实现

    这篇文章主要介绍了Nginx 配置 ModSecurity 网络应用防火墙实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-12-12
  • nginx slice模块的使用和源码分析小结

    nginx slice模块的使用和源码分析小结

    很多请求都会去访问一个巨大的文件,这个时候slice模块就有了用武之地,本文主要介绍了nginx slice模块的使用和源码分析,具有一定的参考价值,感兴趣的可以了解一下
    2024-02-02
  • nginx+uwsgi启动Django项目的详细步骤

    nginx+uwsgi启动Django项目的详细步骤

    nginx+uwsgi+django是我们常用的django部署方式。这篇文章主要介绍了nginx+uwsgi启动Django项目的详细步骤,非常具有实用价值,需要的朋友可以参考下
    2018-10-10
  • Nginx服务器相关的一些安全配置建议

    Nginx服务器相关的一些安全配置建议

    这篇文章主要介绍了Nginx服务器相关的一些安全配置建议,共计总结了十个小点,需要的朋友可以参考下
    2015-06-06

最新评论