nginx 通過使用者名稱密碼認證控制訪問web頁面

2021-09-07 21:19:24 字數 1717 閱讀 3362

nginx控制使用者訪問主要有三種方法:1:通過ip限制(配置allow和deny,屬於ngx_http_access_module模組,配置段http, server, location, limit_except); 2、通過使用者名稱密碼限制(配置auth_basic和auth_basic_user_file,屬於ngx_http_auth_basic_module模組,配置段http, server, location, limit_except);3、兩種方法同時用。4、限制ip位址段(配置geo,本文不配)

2.修改 nginx 配置檔案

上面將配置auth_basic和auth_basic_user_file放在server中,是對整個站點開啟驗證。若果要對部分開啟驗證,要凡在要驗證的location中。allow和deny是按從上到下的順序,類似iptables,匹配到了便跳出。如上的例子先禁止了192.16.1.1,接下來允許了3個網段,其中包含了乙個ipv6,最後未匹配的ip全部禁止訪問.  在實際生產環境中,我們也會使用nginx 的geo模組配合使用(

生成密碼

可以使用htpasswd,或者使用openssl

方法一、使用openssl

#賬號:super  密碼:123456

printf "peter:$(openssl passwd -crypt 123456)\n" >>conf/htpasswd

cat conf/htpasswd

#輸出super:xyjkvhxgaz8tm

方法

一、使用htpasswd

#或yum install -y httpd

#兩者都包含htpasswd工具

htpasswd -c /etc/nginx/passwd.db super

pkill -9 nginx

/usr/sbin/nginx -c /etc/nginx/test1.conf

注意:上面的 /etc/nginx/passwd.db是生成密碼檔案的路徑,然後super是使用者名稱,你可以根據需要自行設定成其它使用者名稱。執行命令後,會要求你連續輸入兩次密碼。輸入成功後,會提示已經為super這個使用者新增了密碼。

nginx -t        #檢查語法是否錯誤

nginx -s reload #配置檔案熱載入

nginx -c /etc/nginx/test.conf #手動指定配置檔案

#sudo nginx #開啟 nginx

pkill -9 nginx #強制殺掉nginx程序

nginx讓使用者通過使用者名稱密碼認證訪問web頁面

1 通過htpasswd命令生成使用者名稱及對應密碼資料庫檔案。root bgs 5p173 wangwenting htpasswd c usr local nginx passwd.db wyl 建立認證資訊,wyl 為認證使用者名稱 new password 輸入認證密碼 re type ne...

remoting 安全認證,密碼,使用者名稱

的回覆 伺服器端 namespace remoteserver public string getthescoop string name 配製檔案 type remoteserver.scoop,remoteserver objecturi scoop.soap 客戶端 static void m...

Nginx基於使用者名稱和密碼的認證訪問控制

安裝 htpasswd yum y install httpd tools設定使用者名稱和密碼檔案,有一點需要注意htpasswd有效密碼長度只有8位 htpasswd c usr local nginx conf passwd cuber new password re type new pass...