nginx访问控制的两种方法,一种是基于Basic Auth认证,另一种是基于IP的访问控制

  • Basic Auth认证基于用户授权的访问控制:
    当客户端想要访问相应的网站或者目录,要求用户输入用户名和密码才能访问。
  • 基于IP的访问控制:
    1. deny IP/IP段 : 拒绝某个IP或IP段的客户端访问。
    2. allow IP/IP段 : 允许某个IP或IP段的客户端访问。
    3. 规则从上往下执行,如匹配停止,不再往下匹配。

.

下面将直接介绍如何配置访问控制
Nginx的安装详解 之前的文章写过
地址:http://blog.51cto.com/13630803/2128888

.

  • 基于用户授权的访问控制

    # htpasswd -c /usr/local/nginx/passwd.db zhangsan

    //使用htpasswd 生成用户认证文件 (如果没有使用yum安装httpd-tools)

    # chown nginx /usr/local/nginx/passwd.db

    //设置属主为nginx

    # chmod 400 /usr/local/nginx/passwd.db

    //设置权限为400

        # vim /usr/local/nginx/html/index.html   //修改nginx的主配置文件
            server{
             location / {
                            auth_basic "secret";                   //添加认证配置
                            auth_basic_user_file /usr/local/nginx/passwd.db;     //添加文件路径
                            root   html;
                            index  index.html index.htm;
                    }

    .

        # service nginx restart     //重启服务
        打开浏览器输入服务器地址:
         192.168.100.102 
         需要输入用户密码才能登录

    Nginx的两种访问控制详解


.

  • 基于IP的访问控制

    # vim /usr/local/nginx/html/index.html   //修改nginx的主配置文件
             server{
                 location / {
                 deny 192.168.100.101;   //拒绝192.168.100.101 访问
                 allow all;                           //允许所有
                    root   html;
                        index  index.html index.htm;
                }
    
    # service nginx restart     //重启服务
        打开浏览器输入服务器地址:
        192.168.100.102

    Nginx的两种访问控制详解