nginx 實現基於basic用戶認證機制

實現基於用戶的訪問控制,使用basic機制進行用戶認證

1,在配置文件添加以下幾行配置

相關模塊ngx_http_access_modulehtml

server {
        listen 80;
        root /nginx/html/;
        location /admin/ {
                auth_basic "admin Area";
                auth_basic_user_file /etc/nginx/.ngxpasswd;
                allow 192.168.68.7;
                deny all;
        }
    }
        "注意:在/nginx/html目錄下必需要有admin這個目錄"
    指令解析:
        auth_basic "Admin Area"; 設置提示語
        auth_basic_user_file file;  指定用戶名口令文件路徑
        allow 192.168.68.7;          設置容許訪問的主機,也但是一個網段,如:192.168.68.0/24
        deny all;                  設置拒絕訪問的主機或網段端all表示所有

2,建立存放用戶名密碼的文件

- 檢查是否安裝httpd-tools
            rpm -ql httpd-tools
- 建立用戶,密碼文件
            [root@centos7 html]# htpasswd -cm /etc/nginx/.ngxpasswd ngx1
            New password: 
            Re-type new password: 
            Adding password for user ngx1
        "注意:再建立其餘用戶不能加c選項,c選項會從新建立該文件."
-文件內容
            [root@centos7 html]# cat /etc/nginx/.ngxpasswd 
            ngx1:$apr1$SCYEG5oY$VQm2hG/oSnkvS6jBgoe9j.

- 爲了文件安全能夠修改一下文件權限
            chmod 600 /etc/nginx/.ngxpasswd
            -rw-------    1 root root    43 Mar 22 11:32 .ngxpasswd

訪問測試:

nginx 實現基於basic用戶認證機制

相關文章
相關標籤/搜索