使用Nginx設置基本HTTP身份驗證


第1步 - 安裝Apache Tools

需要htpassword命令來配置將限制對目標網站的訪問的密碼。此命令是apache2-utils程序包的一部分,因此第一步是安裝該程序包。

sudo apt-get install apache2-utils

步驟2 - 設置HTTP基本身份驗證憑據

在此步驟中,運行網站的用戶創建密碼。

該密碼和關聯的用戶名將存儲在指定的文件中。密碼將被加密,文件名可以是任何名稱。在這里,我們使用文件/etc/nginx/.htpasswd和用戶名nginx

要創建密碼,請運行以下命令。需要進行身份驗證,然后指定並確認密碼。

sudo htpasswd -c /etc/nginx/.htpasswd nginx

檢查新創建的文件的內容以查看用戶名和散列密碼。

cat /etc/nginx/.htpasswd

 

nginx:$apr1$ilgq7ZEO$OarDX15gjKAxuxzv0JTrO/

  

第3步 - 更新Nginx配置

已經創建了HTTP基本身份驗證憑據,下一步是更新目標網站的Nginx配置以使用它。

auth_basicauth_basic_user_file指令使HTTP基本認證成為可能。值為auth_basic任意字符串,將在身份驗證提示下顯示; value auth_basic_user_file是在步驟2中創建的密碼文件的路徑。

兩個指令都應該位於目標網站的配置文件中,目標網站通常位於/etc/nginx/sites-available目錄中。使用nano或您喜歡的文本編輯器打開該文件

sudo nano /etc/nginx/sites-available/default

location部分下,添加兩個指令:

. . .
server_name localhost;
​
location / {
        # First attempt to serve request as file, then
        # as directory, then fall back to displaying a 404.
        try_files $uri $uri/ =404;
        # Uncomment to enable naxsi on this location
        # include /etc/nginx/naxsi.rules
        auth_basic "Private Property";
        auth_basic_user_file /etc/nginx/.htpasswd;
}
. . .

第4步 - 測試安裝程序

要應用更改,請先重新加載Nginx

sudo service nginx  -s reload

  

  

參考來源:https://cloud.tencent.com/developer/article/1355885


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM