簡介
本文件說明什麼是 RADIUS 伺服器以及其運作方式。
必要條件
需求
本文件沒有特定先決條件。
採用元件
本文件所述內容不限於特定軟體和硬體版本。
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
慣例
如需文件慣例的詳細資訊,請參閱思科技術提示慣例。
背景資訊
Livingston Enterprises, Inc. 開發了遠端驗證撥入使用者服務 (RADIUS) 通訊協定,以做為存取伺服器驗證和計量的通訊協定。RADIUS 規格 RFC 2865 取代了 RFC 2138。RADIUS 計量標準 RFC 2866 取代了 RFC 2139。
網路存取伺服器 (NAS) 和 RADIUS 伺服器之間的通訊以使用者資料包通訊協定 (UDP) 為基礎。一般來說,RADIUS 通訊協定會視為不需連線的服務。與伺服器可用性、重新傳輸和逾時相關的問題由啟用 RADIUS 的裝置負責處理,而非傳輸通訊協定。
RADIUS 是用戶端/伺服器通訊協定
RADIUS 用戶端一般來說是 NAS,且 RADIUS 伺服器通常是在 UNIX 或 Windows NT 機器上執行的精靈程序。用戶端會將使用者資訊傳遞到指定的 RADIUS 伺服器,然後對傳回的回應採取行動。RADIUS 伺服器則會接收使用者連線要求、驗證使用者,並傳回用戶端向使用者提供服務所需的組態資訊。RADIUS 伺服器可以作為其他 RADIUS 伺服器或其他種類驗證伺服器的 Proxy 用戶端。
下圖說明撥入使用者和 RADIUS 用戶端與伺服器之間的互動。
撥入使用者和 RADIUS 用戶端與伺服器之間的互動
-
使用者會對 NAS 發起 PPP 驗證。
-
NAS 提示輸入使用者名稱和密碼(若為密碼驗證通訊協定 [PAP])或詢問(若為 Challenge Handshake 驗證通訊協定 [CHAP])。
-
使用者回覆。
-
RADIUS 用戶端將使用者名稱和經加密的密碼傳送給 RADIUS 伺服器。
-
RADIUS 伺服器回應 Accept、Reject 或 Challenge。
-
RADIUS 用戶端會根據與 Accept 或 Reject 綁定的服務和服務參數採取行動。
驗證與授權
RADIUS 伺服器可支援各種驗證使用者的方法。若隨使用者指定的使用者名稱和原始密碼提供,其可支援PPP、PAP或CHAP、UNIX登入和其他驗證機制。
通常,使用者登入包含從NAS到RADIUS伺服器的查詢(訪問請求)和從伺服器發出的相應響應(訪問接受或訪問拒絕)。Access-Request 封包包含使用者名稱、經加密的密碼、NAS IP 位址和連接埠。RADIUS 早期部署由 UDP 連接埠號 1645 完成,該連接埠號會與「資料計量」服務產生衝突。因此,RFC 2865 正式為 RADIUS 指派連接埠號 1812。大多數的思科裝置和應用程式會支援任一連接埠號號。請求格式也提供有關使用者要啟動的工作階段種類資訊。例如,如果查詢以字元模式顯示,則推理為Service-Type = Exec-User,但如果請求以PPP資料包模式顯示,則推理為Service Type = Framed User和Framed Type = PPP。
當 RADIUS 伺服器收到來自 NAS 的存取要求時,會在資料庫中搜尋所列的使用者名稱。如果資料庫中不存在該使用者名稱,就會載入預設設定檔,或者 RADIUS 伺服器會立即傳送 Access-Reject 訊息。此 Access-Reject 訊息可能會附帶一則簡訊,說明拒絕的原因。
在 RADIUS 中,驗證和授權兩者結合在一起。若找到使用者名稱且密碼正確,RADIUS 伺服器將回傳 Access-Accept 回應,其中包含一份屬性值配對清單,描述要用於此工作階段的參數。典型的參數包括服務類型(Shell 或 Framed)、通訊協定類型、用以指派使用者的 IP 位址(靜態或動態)、要套用的存取清單,或是要在 NAS 路由表中安裝的靜態路由。RADIUS 伺服器中的組態資訊定義了 NAS 可安裝的內容。下圖說明 RADIUS 驗證和授權順序。
RADIUS 驗證與授權順序
計量
RADIUS 通訊協定的計量功能可與 RADIUS 驗證或授權分開使用。RADIUS 計量功能允許在工作階段開始和結束時傳送資料,這會指出工作階段期間使用的資源數量(例如時間、封包、位元組等)。網際網路服務供應商 (ISP) 可使用 RADIUS 存取控制和計量軟體來滿足特殊的安全和計費需求。大多數思科裝置的 RADIUS 計量連接埠為 1646,但也可以是 1813(由於 RFC 2139 所述的連接埠變更)。
用戶端和 RADIUS 伺服器之間的交易是透過使用共用金鑰進行驗證,而這個共用金鑰絕不會透過網路傳送。此外,在用戶端和 RADIUS 伺服器之間傳送的使用者密碼均經過加密處理,使有心人士無法在不安全的網路窺探並確定使用者密碼。
相關資訊