返回部落格

在 Ubuntu 20.04 上使用 Nginx 設定基本 HTTP 驗證

在 Ubuntu 20.04 上使用 Nginx 設定基本 HTTP 驗證

Nginx 是一款免費、開源的網頁伺服器,用於 負載平衡、緩衝和快取。自 2004 年問世以來,Nginx 因擴充網頁伺服器和反向代理而廣受歡迎。由於其高效能和處理大量連線的卓越能力,它被用於管理和控制傳入的流量。

HTTP 驗證是如何運作的?

基本 HTTP 驗證 中,伺服器上的所有路由都會被阻擋,並需要適當的憑證進行驗證。每當使用者嘗試存取受保護的資源時,伺服器會向使用者傳送一個 WWW-Authenticate 標頭 和一個 401 Unauthorized 回應。如果使用者使用的使用者名稱和密碼正確,且與 金鑰檔案 相符,則建立連線,否則拒絕連線。

在本教學中,我們將引導您完成 在 Ubuntu 20.04 上使用 Nginx 設定基本 HTTP 驗證.

先決條件

要繼續本教學,您需要以下準備:

步驟 1:更新軟體套件庫

在系統上安裝任何新軟體或 API 套件之前,請重新整理套件庫以避免錯誤或任何套件衝突。首先,我們將使用 sudo 指令來更新軟體:

現在我們已經更新了軟體套件庫,讓我們來安裝必要的 apache2 套件。

步驟 2:安裝必要套件

由於我們正在為目錄設定 HTTP 驗證,我們將使用 htpasswd 指令來建立加密密碼。請使用以下指令安裝 apache2-utils 套件

步驟 3:建立使用者與密碼

在此步驟中,我們將設定基本 HTTP 驗證憑證。在根目錄下,建立一個與該使用者關聯的 .htpasswd 檔案。密碼將會被加密,檔案名稱可以任您選擇。使用以下指令建立檔案並新增具有加密密碼的使用者:

User and Password

接下來,使用以下指令驗證新建立的檔案:

newly-created file

步驟 4:更新 Nginx 設定

一旦我們有了 HTTP 基本驗證憑證,讓我們設定 Nginx 並在目標網站上使用它。我們需要 auth_basicauth_basic_user_file 指令來建立 HTTP 基本驗證。 auth_basic 指令的值是字串格式,而 auth_basic_user_file 是在 步驟 3.

中建立的密碼檔案路徑。將這兩個指令包含在目標網站的設定檔中非常重要。您可以在 /etc/nginx/sites-available 目錄中找到目標網站的位置。使用 nano 編輯器開啟設定檔:

然後,將這兩個指令新增到 location 區段下:

新增指令後,儲存並關閉設定檔。

步驟 5:重新啟動 Nginx

接下來,重新載入或重啟 Nginx 服務以在我們的虛擬主機上套用變更。之後,我們將嘗試使用基本 HTTP 驗證來存取受保護的網域。使用以下命令來啟用 Nginx 服務:

步驟 6:安全網頁存取

重新啟動 Nginx 後,下一步是嘗試在您喜愛的瀏覽器中存取 IP 地址或網域名稱。點擊 IP 地址 http://your_domain_name/ 在您的瀏覽器中,將會彈出一個視窗要求您輸入憑據進行驗證。輸入正確的使用者名稱和密碼後,您將會看到預設的 Nginx 首頁。

結論

在本教學中,我們學習了如何使用 Nginx 設定基本 HTTP 驗證。基本的使用者名稱/密碼驗證只是在 Nginx 中建立安全連線的眾多驗證選項之一。

還有其他用於伺服器驗證的強大選項。例如,您可以使用的一些熱門方法包括 API 整合、JSON Web Tokens、基於 SSH 金鑰的驗證。儘管最初獲得強大的安全機制似乎有些棘手,但它們在保護您的隱私方面非常有效。

此外,還有許多其他關於 Nginx 的學習材料和教學,您可以從我們的部落格:

祝您運算愉快!

author

Shreyas Patil

作者 · CloudSigma

Preslav Dobrev 是 CloudSigma 的創意設計師,專注於透過傳統與創新行銷渠道建立一致的企業形象。他擅長將藝術願景與策略行銷相融合,創造具有影響力的品牌敘事。

留言

目前尚無留言。成為第一個留言的人吧。