新聞中心

EEPW首頁 > 手機與無線通信 > 設(shè)計應(yīng)用 > 無線局域網(wǎng)中RADIUS協(xié)議的分析和設(shè)計

無線局域網(wǎng)中RADIUS協(xié)議的分析和設(shè)計

作者: 時間:2011-10-22 來源:網(wǎng)絡(luò) 收藏

1 引言

本文引用地址:http://www.butianyuan.cn/article/155603.htm

  遠程認證撥號用戶服務(wù)(Remote Authentication Dial In User Service, )最初是由Livingston公司提出的一個為撥號用戶提供認證和計費的。后經(jīng)多次改進,逐漸成為一項通用的網(wǎng)絡(luò)認證、計費,并定義于IETF提交的RFC2865和RFC2866文件中。協(xié)議以Client/Server方式工作,客戶端為網(wǎng)絡(luò)接入服務(wù)器(NAS),它向服務(wù)器提交認證、計費等信息,RADIUS服務(wù)器處理信息并將結(jié)果返回給NAS。

  RADIUS協(xié)議的應(yīng)用范圍很廣,在移動、數(shù)據(jù)、智能網(wǎng)等業(yè)務(wù)的認證、計費系統(tǒng)中都有所應(yīng)用。的802.1X認證框架中,在認證端也建議使用RADIUS協(xié)議。

  本文將論述RADIUS協(xié)議的原理,并探討它在WLAN中的應(yīng)用及實現(xiàn)方案。

  2 RADIUS協(xié)議

  2.1 WLAN網(wǎng)絡(luò)模型

  實際商用的,可以用局交換機來實現(xiàn)802.1X認證協(xié)議中的端口控制功能。為保證網(wǎng)絡(luò)的安全性,在域網(wǎng)的出口和認證端應(yīng)加上防火墻。RADIUS服務(wù)器和數(shù)據(jù)庫還可以采取主、備結(jié)構(gòu),以保證網(wǎng)絡(luò)的健壯性。

  網(wǎng)絡(luò)模型如下圖所示:

  圖1 無線局域網(wǎng)網(wǎng)絡(luò)模型

  無線局域網(wǎng)的認證端由RADIUS服務(wù)器、網(wǎng)絡(luò)接入服務(wù)器(NAS)和數(shù)據(jù)庫組成。其中:

  NAS:作為RADIUS服務(wù)器的客戶端,向RADIUS服務(wù)器轉(zhuǎn)交用戶的認證信息。并在用戶通過認證之后,向RADIUS服務(wù)器發(fā)送計費信息。

  RADIUS服務(wù)器:作為認證系統(tǒng)的中心服務(wù)器,它與NAS、數(shù)據(jù)庫相連,它接受來自NAS提交的信息,對數(shù)據(jù)庫進行相應(yīng)的操作,并把處理結(jié)果返回給NAS。

  數(shù)據(jù)庫:用于保存所有的用戶信息、計費信息和其他信息。用戶信息由網(wǎng)絡(luò)管理員添加至數(shù)據(jù)庫中;計費信息來自于RADIUS服務(wù)器;其他信息包括日志信息等。

  2.2 RADIUS的數(shù)據(jù)包結(jié)構(gòu)

  RADIUS是應(yīng)用層的協(xié)議,在傳輸層它的報文被封裝在UDP的報文中,進而封裝進IP包。RADIUS認證使用1812端口,計費使用1813端口。

  以太網(wǎng)上的RADIUS封裝后的包結(jié)構(gòu):

  RADIUS數(shù)據(jù)包分為5個部分:

 ?。?) Code:1個字節(jié),用于區(qū)分RADIUS包的類型:常用類型有:

  接入請求(Access-Request),Code=1;接入應(yīng)答(Access-Accept),Code=2;接入拒絕(Access-Reject),Code=3;計費請求(Accounting-Request),Code=4等。

 ?。?)Identifier:一個字節(jié),用于請求和應(yīng)答包的匹配。

  (3)Length:兩個字節(jié),表示RADIUS數(shù)據(jù)區(qū)(包括Code, Identifier, Length, Authenticator, Attributes)的長度,單位是字節(jié),最小為20,最大為4096。

 ?。?)Authenticator:16個字節(jié),用于驗證服務(wù)器端的應(yīng)答,另外還用于用戶口令的加密。RADIUS服務(wù)器和NAS的共享密鑰(Shared Secret)與請求認證碼(Request Authenticator)和應(yīng)答認證碼(Response Authenticator),共同支持發(fā)、收報文的完整性和認證。另外,用戶密碼不能在NAS和RADIUS 服務(wù)器之間用明文傳輸,而一般使用共享密鑰(Shared Secret)和認證碼(Authenticator)通過MD5加密算法進行加密隱藏。

 ?。?)Attributes:不定長度,最小可為0個字節(jié),描述RADIUS協(xié)議的屬性,如用戶名、口令、IP地址等信息都是存放在本數(shù)據(jù)段。

  2.3 RADIUS的認證、計費過程

  如圖1網(wǎng)絡(luò)模型所示:

  (1)申請者登錄網(wǎng)絡(luò)時,NAS會有一個客戶定義的Login提示符要求申請者輸入用戶信息(用戶名和口令),申請者輸入相關(guān)的認證信息后,等待認證結(jié)果。

  (2)NAS在得到用戶信息后,將根據(jù)RADIUS的數(shù)據(jù)包格式,向RADIUS服務(wù)器發(fā)出“接入請求”(Access-Request)包。包中一般包括以下RADIUS屬性值:用戶名、用戶口令、訪問服務(wù)器的ID、訪問端口的ID。

 ?。?)當(dāng)RADIUS服務(wù)器收到“接入請求”包后,首先驗證NAS的共享密碼與RADIUS服務(wù)器中預(yù)先設(shè)定的是否一致,以確認是所屬的RADIUS客戶端。在查驗了包的正確性之后,RADIUS服務(wù)器會依據(jù)包中的用戶名在用戶數(shù)據(jù)庫中查詢是否有此用戶記錄。如果用戶信息不符合,就向NAS發(fā)出“接入拒絕”(Access-Reject)包。NAS在收到拒絕包后,會立即停止用戶連接端口的服務(wù)要求,用戶被強制退出。

  (4)如果用戶信息全部符合,服務(wù)器向NAS發(fā)出“接入質(zhì)詢”包(Access-Challenge),對用戶的登錄請求作進一步的驗證。其中包括:用戶口令、用戶登錄訪問服務(wù)器的IP、用戶登錄的物理端口號等。NAS收到“接入質(zhì)詢”包后,將消息顯示給用戶,要求用戶進一步確認登錄請求。用戶再次確認后,RADIUS服務(wù)器將比較兩次的請求信息,決定如何響應(yīng)用戶(發(fā)送Access-Accept、Access-Reject或再一次的Access-Challenge)。

 ?。?)當(dāng)所有的驗證條件和握手會話均通過后,RADIUS服務(wù)器會將數(shù)據(jù)庫中的用戶配置信息放在“接入接受”(Access-Accept)包中返回給NAS,后者會根據(jù)包中的配置信息限定用戶的具體網(wǎng)絡(luò)訪問能力。包括服務(wù)類型:SLIP、PPP、Login User、Rlogin、Framed、Callback等等。還包括與服務(wù)類型相關(guān)的配置信息:IP地址、時間限制等等。

 ?。?)在所有的驗證、授權(quán)完成后,局域網(wǎng)交換機的控制端口被打開。用戶可以通過交換機進入網(wǎng)絡(luò)。同時,NAS向RADIUS服務(wù)器發(fā)送 “計費請求開始”包(Accounting-Request Start),通知RADIUS服務(wù)器開始計費。當(dāng)用戶下網(wǎng)時,NAS向RADIUS服務(wù)器發(fā)送“計費請求結(jié)束”包(Accounting-Request Stop),RADIUS服務(wù)器根據(jù)計費包的信息計算用戶使用網(wǎng)絡(luò)的費用。


上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉