zoukankan      html  css  js  c++  java
  • nginx*location中配置ip限制

    第一、在安装nginx的sbin目录下执行./nginx -v查看安装nginx的版本号

    第二、在安装nginx的sbin目录下执行。./nginx -V查看安装nginx的版本号和模块

    第三、

    使用nginx的nginx_upstream_check模块来检测后端服务器的转态时,设置只允许某段IP访问,发现不生效,不在此网段的IP也可以访问。

    原因为在允许IP访问最后一定要加deny all;表示除了上面allow的其他都禁止

    配置如下:
    
        location /status {
            check_status;
            access_log   off;
            allow 10.2.72.26;
            deny all;
        }
    最后要加deny all

    nginx访问控制allow、deny(ngx_http_access_module)

    • A+
    所属分类:Linux Nginx

    单看nginx模块名ngx_http_access_module,很多人一定很陌生,但是deny和allow相比没一个人不知道的,实际上deny和allow指令属于ngx_http_access_module.我们想控制某个uri或者一个路径不让人访问,在nginx就得靠它了。

    nginx的访问控制模块语法很简单,至少比apache好理解,apache的allow和deny的顺序让很多初学者抓头.好了具体看下这个插件的使用方法吧。

    1、安装模块

    这个模块内置在了nginx中,除非你安装中使用了--without-http_access_module。如果你还没安装过nginx,那么请参考下ttlsa之前写的nginx安装.

    2、指令

    allow
    语法:     allow address | CIDR | unix: | all;
    默认值:     —
    配置段:     http, server, location, limit_except

    允许某个ip或者一个ip段访问.如果指定unix:,那将允许socket的访问.注意:unix在1.5.1中新加入的功能,如果你的版本比这个低,请不要使用这个方法。

    deny
    语法:     deny address | CIDR | unix: | all;
    默认值:     —
    配置段:     http, server, location, limit_except

    -----------------------------------------------------------------------第一种、ngx_http_access_module模块介绍-------------------------------------------------------------------------------

    ngx_http_access_module模块:可实现基于ip的访问控制功能
    
    Syntax:    allow address | CIDR | unix: | all;
    Default:    —
    Context:    http, server, location, limit_except
    该ngx_http_access_module模块允许限制对某些客户端地址的访问。
    
    自上而下检查,一旦匹配,将生效,不在匹配后面的策略,条件严格的置前
    
    复制代码
    location / {
        deny  192.168.1.1;
        allow 192.168.1.0/24;
        allow 10.1.1.0/16;
        allow 2001:0db8::/32;
        deny  all;
    }
    
    #依次检查规则,直到找到第一个匹配项。在此示例中,仅允许对IPv4网络 10.1.1.0/16(192.168.1.0/24 不包括地址192.168.1.1)和IPv6网络进行访问2001:0db8::/32

     -----------------------------------------------------------------------第二种、nginx_upstream_check_module模块介绍-------------------------------------------------------------------------------

    https://github.com/yaoweibin/nginx_upstream_check_module/

    nginx的第三方插件

  • 相关阅读:
    数学建模反思
    [Leetcode]unique binary search trees
    暑假结束了,开始新的学习
    什么是lamda表达式?
    [Java]三大特性之封装
    [Leetcode]003. Longest Substring Without Repeating Characters
    [Leetcode] 002. Add Two Numbers
    [Leetcode] 001.Two Sum
    [数据结构]AVL树
    [数据结构]二叉搜索树
  • 原文地址:https://www.cnblogs.com/wwwcf1982603555/p/14040938.html
Copyright © 2011-2022 走看看