本申請涉及網(wǎng)絡(luò)通信技術(shù),特別涉及一種認(rèn)證方法和裝置。
背景技術(shù):
為提高網(wǎng)絡(luò)安全性和可靠性,在除了對終端設(shè)備如PC等進(jìn)行認(rèn)證外,還需要對用于為終端設(shè)備提供網(wǎng)絡(luò)接入功能的網(wǎng)絡(luò)接入設(shè)備進(jìn)行認(rèn)證。如圖1所示的組網(wǎng),終端設(shè)備和網(wǎng)絡(luò)接入設(shè)備需要分別通過認(rèn)證后方能接入網(wǎng)絡(luò)。
現(xiàn)有方式是通過認(rèn)證點分離來間接對終端設(shè)備和網(wǎng)絡(luò)接入設(shè)備進(jìn)行認(rèn)證的。所謂認(rèn)證點分離是指:終端設(shè)備的認(rèn)證點為網(wǎng)絡(luò)接入設(shè)備,網(wǎng)絡(luò)接入設(shè)備的認(rèn)證點為介于網(wǎng)絡(luò)接入設(shè)備和認(rèn)證服務(wù)器(比如AAA服務(wù)器)之間的的網(wǎng)絡(luò)中轉(zhuǎn)設(shè)備(也稱網(wǎng)絡(luò)接入設(shè)備的上行設(shè)備,以下均以上行設(shè)備為例描述),終端設(shè)備由網(wǎng)絡(luò)接入設(shè)備認(rèn)證,網(wǎng)絡(luò)接入設(shè)備由上行設(shè)備認(rèn)證。需要注意的是,雖然終端設(shè)備由網(wǎng)絡(luò)接入設(shè)備認(rèn)證,網(wǎng)絡(luò)接入設(shè)備由上行設(shè)備認(rèn)證,但是,網(wǎng)絡(luò)接入設(shè)備在對終端設(shè)備認(rèn)證時、上行設(shè)備對網(wǎng)絡(luò)接入設(shè)備認(rèn)證時,都不是開啟的本地認(rèn)證模式,在執(zhí)行認(rèn)證過程中都需要與認(rèn)證服務(wù)器(比如AAA服務(wù)器)交互以完成最終認(rèn)證。
但是,當(dāng)上行設(shè)備采用基于MAC地址的802.1X認(rèn)證方式對網(wǎng)絡(luò)接入設(shè)備認(rèn)證時,即使網(wǎng)絡(luò)接入設(shè)備的MAC地址通過認(rèn)證,網(wǎng)絡(luò)接入設(shè)備下行接入的終端設(shè)備無法通過認(rèn)證,原因是:在終端設(shè)備認(rèn)證過程中,網(wǎng)絡(luò)接入設(shè)備向認(rèn)證服務(wù)器(比如AAA服務(wù)器)發(fā)送的用于認(rèn)證終端設(shè)備的Radius報文會被上行設(shè)備攔截,導(dǎo)致Radius報文發(fā)送不到認(rèn)證服務(wù)器(比如AAA服務(wù)器),進(jìn)而導(dǎo)致終端設(shè)備的認(rèn)證無法通過,而網(wǎng)絡(luò)接入設(shè)備發(fā)送的Radius報文之所以被上行設(shè)備攔截,原因是網(wǎng)絡(luò)接入設(shè)備發(fā)送的Radius報文的源MAC地址是網(wǎng)絡(luò)接入設(shè)備上連接認(rèn)證服務(wù)器(比如AAA服務(wù)器)的三層端口的MAC地址,而非上述通過認(rèn)證的MAC地址。
技術(shù)實現(xiàn)要素:
本申請?zhí)峁┝艘环N認(rèn)證方法和裝置,以在上行設(shè)備采用基于MAC地址的802.1X認(rèn)證方式對網(wǎng)絡(luò)接入設(shè)備認(rèn)證的前提下,防止上行設(shè)備在終端設(shè)備認(rèn)證過程中攔截網(wǎng)絡(luò)接入設(shè)備向認(rèn)證服務(wù)器(比如AAA服務(wù)器)發(fā)送的用于認(rèn)證終端設(shè)備的Radius報文,實現(xiàn)終端設(shè)備的認(rèn)證。
本申請?zhí)峁┑募夹g(shù)方案包括:
一種認(rèn)證方法,該方法應(yīng)用于介于網(wǎng)絡(luò)接入設(shè)備和認(rèn)證服務(wù)器之間的網(wǎng)絡(luò)中轉(zhuǎn)設(shè)備,包括:
接收網(wǎng)絡(luò)接入設(shè)備發(fā)向認(rèn)證服務(wù)器的認(rèn)證報文,所述認(rèn)證報文用于對網(wǎng)絡(luò)接入設(shè)備接入的終端設(shè)備進(jìn)行認(rèn)證;
判斷本地是否已啟用與所述認(rèn)證報文匹配的放行策略,如果是,則繼續(xù)發(fā)送所述認(rèn)證報文至認(rèn)證服務(wù)器,以使網(wǎng)絡(luò)接入設(shè)備與認(rèn)證服務(wù)器交互完成對終端設(shè)備的認(rèn)證。
一種認(rèn)證裝置,該裝置應(yīng)用于介于網(wǎng)絡(luò)接入設(shè)備和認(rèn)證服務(wù)器之間的網(wǎng)絡(luò)中轉(zhuǎn)設(shè)備,包括:
接收單元,用于接收網(wǎng)絡(luò)接入設(shè)備發(fā)向認(rèn)證服務(wù)器的認(rèn)證報文,所述認(rèn)證報文用于對網(wǎng)絡(luò)接入設(shè)備接入的終端設(shè)備進(jìn)行認(rèn)證;
判斷單元,用于判斷本地是否已啟用與所述認(rèn)證報文匹配的放行策略,
處理單元,用于在所述判斷單元的判斷結(jié)果為是時,繼續(xù)發(fā)送所述認(rèn)證
報文至認(rèn)證服務(wù)器,以使網(wǎng)絡(luò)接入設(shè)備與認(rèn)證服務(wù)器交互完成對終端設(shè)備的認(rèn)證。
由以上技術(shù)方案可以看出,本發(fā)明能夠在上行設(shè)備采用基于MAC地址的802.1X認(rèn)證方式對網(wǎng)絡(luò)接入設(shè)備認(rèn)證的前提下,防止介于網(wǎng)絡(luò)接入設(shè)備和認(rèn)證服務(wù)器之間的網(wǎng)絡(luò)中轉(zhuǎn)設(shè)備(也即上行設(shè)備)在終端設(shè)備認(rèn)證過程中攔截網(wǎng)絡(luò)接入設(shè)備向認(rèn)證服務(wù)器(比如AAA服務(wù)器)發(fā)送的用于認(rèn)證終端設(shè)備的Radius報文,完成終端設(shè)備的認(rèn)證。
附圖說明
此處的附圖被并入說明書中并構(gòu)成本說明書的一部分,示出了符合本公開的實施例,并與說明書一起用于解釋本公開的原理。
圖1為終端設(shè)備和網(wǎng)絡(luò)接入設(shè)備分別認(rèn)證組網(wǎng)示意圖;
圖2為本發(fā)明提供的方法流程圖;
圖3為本發(fā)明提供的實施例應(yīng)用組網(wǎng)示意圖;
圖4為本發(fā)明提供的裝置結(jié)構(gòu)示意圖。
具體實施方式
為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面結(jié)合附圖和具體實施例對本發(fā)明進(jìn)行詳細(xì)描述。
本發(fā)明能夠在上行設(shè)備采用基于MAC地址的802.1X認(rèn)證方式對網(wǎng)絡(luò)接入設(shè)備認(rèn)證的前提下,防止上行設(shè)備在終端設(shè)備認(rèn)證過程中攔截網(wǎng)絡(luò)接入設(shè)備向認(rèn)證服務(wù)器(比如AAA服務(wù)器)發(fā)送的用于認(rèn)證終端設(shè)備的Radius報文,完成終端設(shè)備的認(rèn)證。
下面對本發(fā)明提供的方法進(jìn)行描述:
參見圖2,圖2為本發(fā)明提供的方法流程圖。該流程應(yīng)用于介于網(wǎng)絡(luò)接入設(shè)備和認(rèn)證服務(wù)器之間的網(wǎng)絡(luò)中轉(zhuǎn)設(shè)備(在本申請中簡稱網(wǎng)絡(luò)接入設(shè)備上行接入的上行設(shè)備)。如圖2所示,該流程可包括以下步驟:
步驟201,上行設(shè)備接收網(wǎng)絡(luò)接入設(shè)備發(fā)向認(rèn)證服務(wù)器的認(rèn)證報文。
這里,認(rèn)證報文用于對網(wǎng)絡(luò)接入設(shè)備下行接入的終端設(shè)備進(jìn)行認(rèn)證。
在本發(fā)明中,網(wǎng)絡(luò)接入設(shè)備開啟非本地802.1X認(rèn)證方式,其在對終端設(shè)備進(jìn)行認(rèn)證過程中還需要和認(rèn)證服務(wù)器交互以最終完成終端設(shè)備的認(rèn)證。當(dāng)網(wǎng)絡(luò)接入設(shè)備向認(rèn)證服務(wù)器發(fā)送認(rèn)證報文時,該認(rèn)證報文的源MAC地址為網(wǎng)絡(luò)接入設(shè)備上到認(rèn)證服務(wù)器三層可達(dá)的端口的MAC地址。
步驟202,上行設(shè)備判斷本地是否已啟用與認(rèn)證報文匹配的放行策略,如果是,則繼續(xù)發(fā)送認(rèn)證報文至認(rèn)證服務(wù)器,以使網(wǎng)絡(luò)接入設(shè)備與認(rèn)證服務(wù)器交互完成對終端設(shè)備的認(rèn)證。
作為本發(fā)明的一個實施例,當(dāng)上行設(shè)備判斷出本地還未啟用與認(rèn)證報文匹配的放行策略,則攔截認(rèn)證報文,終止認(rèn)證報文轉(zhuǎn)發(fā)。
作為本發(fā)明的一個實施例,本發(fā)明進(jìn)一步包括:上行設(shè)備通過本設(shè)備上開啟的基于MAC地址的認(rèn)證方式對網(wǎng)絡(luò)接入設(shè)備進(jìn)行認(rèn)證,當(dāng)網(wǎng)絡(luò)接入設(shè)備的MAC地址通過認(rèn)證時,啟用本地配置的放行策略,放行策略與端口MAC地址對應(yīng),用于對源MAC地址為所述端口MAC地址的認(rèn)證報文放行,端口MAC地址為網(wǎng)絡(luò)接入設(shè)備上到認(rèn)證服務(wù)器三層可達(dá)的端口的MAC地址。
基于此,步驟202中,判斷本地是否已啟用與認(rèn)證報文匹配的放行策略包括:
查找已啟用的與所述認(rèn)證報文的源MAC地址對應(yīng)的放行策略,當(dāng)查找到對應(yīng)的放行策略,則確定本地已啟用與所述認(rèn)證報文匹配的放行策略,否則,確定本地未啟用與所述認(rèn)證報文匹配的放行策略。
至此,完成圖2所示流程。
相比背景技術(shù)描述的上行設(shè)備攔截認(rèn)證報文的原因,可以看出,本發(fā)明中,盡管網(wǎng)絡(luò)接入設(shè)備發(fā)向認(rèn)證服務(wù)器的認(rèn)證報文(用于對終端設(shè)備認(rèn)證)的源MAC地址為網(wǎng)絡(luò)接入設(shè)備上與認(rèn)證服務(wù)器三層可達(dá)的端口的MAC地址,但是,只要上行設(shè)備在接收到該認(rèn)證報文后判斷出本地已啟用與認(rèn)證報文匹配的放行策略,則會繼續(xù)發(fā)送認(rèn)證報文至認(rèn)證服務(wù)器,以使網(wǎng)絡(luò)接入設(shè)備與認(rèn)證服務(wù)器交互完成對終端設(shè)備的認(rèn)證,這實現(xiàn)了即使在上行設(shè)備采用基于MAC地址的802.1X認(rèn)證方式對網(wǎng)絡(luò)接入設(shè)備認(rèn)證的前提下,也能防止上行設(shè)備在終端設(shè)備認(rèn)證過程中攔截網(wǎng)絡(luò)接入設(shè)備向AAA服務(wù)器發(fā)送的用于認(rèn)證終端設(shè)備的Radius報文,完成終端設(shè)備的認(rèn)證。
下面通過一個具體實施例對圖2進(jìn)行舉例描述:
參見圖3,圖3為本發(fā)明提供的實施例組網(wǎng)示意圖。在圖3中,網(wǎng)絡(luò)接入設(shè)備以接入交換機(jī)(Switch)為例,網(wǎng)絡(luò)接入設(shè)備的上行設(shè)備以上行Switch為例,認(rèn)證服務(wù)器為AAA服務(wù)器為例。
在圖3中,上行Switch上開啟基于MAC地址的802.1X認(rèn)證方式。接入Switch上開啟802.1X認(rèn)證方式(具體可為基于MAC地址的802.1X認(rèn)證方式,也可為基于端口的802.1X認(rèn)證方式,按需求決定,本實施例并不具體限定)。接入Switch上開啟的802.1X認(rèn)證方式為非本地的認(rèn)證方式,當(dāng)接入Switch對終端設(shè)備進(jìn)行認(rèn)證時,需要和AAA服務(wù)器交互。
在圖3中,上行Switch通過本設(shè)備上開啟的基于MAC地址的802.1X認(rèn)證方式對接入Switch進(jìn)行認(rèn)證,當(dāng)接入Switch的MAC地址通過認(rèn)證時,上行Switch啟用本地配置的放行策略,放行策略與端口MAC地址對應(yīng),用于對源MAC地址為端口MAC地址的認(rèn)證報文放行,端口MAC地址為接入Switch上到AAA服務(wù)器三層可達(dá)的端口的MAC地址,該端口可為虛擬口,也可為物理端口。
其中,上行Switch通過本設(shè)備上開啟的基于MAC地址的802.1X認(rèn)證方式對接入Switch進(jìn)行認(rèn)證,具體可參見802.1X認(rèn)證,這里不再贅述。
下面僅以802.1X協(xié)議中的可擴(kuò)展認(rèn)證協(xié)議(EAP:Extensible authentication protocol)-MD5為例描述終端設(shè)備的認(rèn)證:
終端設(shè)備上開啟802.1X客戶端(Client)功能,終端設(shè)備向接入Switch發(fā)送認(rèn)證開始(EAPoL-Start)報文,開始802.1x認(rèn)證;
接入Switch接收EAPoL-Start報文,向終端設(shè)備發(fā)送EAP請求/確認(rèn)(EAP-Request/Identity)報文,要求終端設(shè)備上報用戶名。EAP-Request/Identity報文的目的MAC地址為終端設(shè)備的MAC地址。
終端設(shè)備接收EAP-Request/Identity報文,回應(yīng)EAP響應(yīng)/確認(rèn)(EAP-Response/Identity)報文,EAP-Response/Identity報文攜帶用戶名。
接入Switch接收EAP-Response/Identity報文,將EAP-Response/Identity報文封裝為遠(yuǎn)程用戶撥號認(rèn)證服務(wù)(RADIUS:Remote Authentication Dial In User Service)接入請求(Access-Request)報文并發(fā)送給RADIUS服務(wù)器。RADIUS Access-Request報文即為上述的認(rèn)證報文,其源MAC地址為接入Switch上至AAA服務(wù)器三層可達(dá)的端口的端口MAC地址。
上行Switch接收RADIUS Access-Request報文,以RADIUS Access-Request報文的源MAC地址為關(guān)鍵字查找已啟用的與該關(guān)鍵字對應(yīng)的放行策略。
上行Switch查找到對應(yīng)的放行策略,則繼續(xù)轉(zhuǎn)發(fā)RADIUS Access-Request報文至AAA服務(wù)器。
AAA服務(wù)器接收RADIUS Access-Request報文,隨機(jī)產(chǎn)生一個挑戰(zhàn)(Challenge)字,通過上行Switch中轉(zhuǎn)向接入Switch發(fā)送RADIUS Access-Challenge報文。RADIUS Access-Challenge報文攜帶EAP-Request/MD5-Challenge報文。
接入Switch向終端設(shè)備發(fā)送EAP-Request/MD5-Challenge報文,要求終端設(shè)備進(jìn)行認(rèn)證。EAP-Request/MD5-Challenge的目的MAC地址為終端設(shè)備的MAC地址。
終端設(shè)備收到EAP-Request/MD5-Challenge報文后,將密碼和EAP-Request/MD5-Challenge報文攜帶的Challenge字進(jìn)行MD5加密,得到Challenged-Pass-word,將Challenged-Pass-word攜帶在EAP-Response/MD5-Challenge報文發(fā)送給接入Switch;
接入Switch接收EAP-Response/MD5-Challenge報文,將EAP-Response/MD5-Challenge報文封裝為RADIUS-Access-Request報文向AAA服務(wù)器發(fā)送。RADIUS-Access-Request報文的源MAC地址為接入Switch上至AAA服務(wù)器三層可達(dá)的端口的端口MAC地址。
上行Switch接收RADIUS Access-Request報文,以RADIUS Access-Request報文的源MAC地址為關(guān)鍵字查找已啟用的與該關(guān)鍵字對應(yīng)的放行策略。
上行Switch查找到對應(yīng)的放行策略,則繼續(xù)轉(zhuǎn)發(fā)RADIUS Access-Request報文至AAA服務(wù)器。
AAA服務(wù)器接收RADIUS-Access-Request報文,根據(jù)RADIUS Access-Request報文攜帶的Challenged-Pass-word判斷終端設(shè)備是否合法,當(dāng)合法,則通過上行Switch返回Radius Access-Accept認(rèn)證報文給接入Switch;
接入Switch接收Radius Access-Accept認(rèn)證報文,向終端設(shè)備發(fā)送EAP-Success報文,通過終端設(shè)備上線成功。
至此,完成了接入Switch對終端設(shè)備的認(rèn)證。
需要說明的是,在上面描述中,當(dāng)上行Switch未查找到對應(yīng)的放行策略,則終止轉(zhuǎn)發(fā)接收的RADIUS Access-Request報文。
至此,完成圖3所示實施例描述。
以上對本發(fā)明提供的方法進(jìn)行了描述,下面對本發(fā)明提供的裝置進(jìn)行描述:
參見圖4,圖4為本發(fā)明提供的裝置結(jié)構(gòu)圖。該裝置應(yīng)用于介于網(wǎng)絡(luò)接入設(shè)備和認(rèn)證服務(wù)器之間的網(wǎng)絡(luò)中轉(zhuǎn)設(shè)備,包括:
接收單元,用于接收網(wǎng)絡(luò)接入設(shè)備發(fā)向認(rèn)證服務(wù)器的認(rèn)證報文,所述認(rèn)證報文用于對網(wǎng)絡(luò)接入設(shè)備接入的終端設(shè)備進(jìn)行認(rèn)證;
判斷單元,用于判斷本地是否已啟用與所述認(rèn)證報文匹配的放行策略,
處理單元,用于在所述判斷單元的判斷結(jié)果為是時,繼續(xù)發(fā)送所述認(rèn)證報文至認(rèn)證服務(wù)器,以使網(wǎng)絡(luò)接入設(shè)備與認(rèn)證服務(wù)器交互完成對終端設(shè)備的認(rèn)證。
優(yōu)選地,所述裝置進(jìn)一步包括:
認(rèn)證單元,用于通過本設(shè)備上開啟的基于MAC地址的認(rèn)證方式對網(wǎng)絡(luò)接入設(shè)備進(jìn)行認(rèn)證,當(dāng)網(wǎng)絡(luò)接入設(shè)備的MAC地址通過認(rèn)證時,啟用本地配置的放行策略,所述放行策略與端口MAC地址對應(yīng),用于對源MAC地址為所述端口MAC地址的認(rèn)證報文放行,所述端口MAC地址為網(wǎng)絡(luò)接入設(shè)備上到認(rèn)證服務(wù)器三層可達(dá)的端口的MAC地址;
所述判斷單元判斷本地是否已啟用與所述認(rèn)證報文匹配的放行策略包括:
查找已啟用的與所述認(rèn)證報文的源MAC地址對應(yīng)的放行策略,當(dāng)查找到對應(yīng)的放行策略,則確定本地已啟用與所述認(rèn)證報文匹配的放行策略,否則,確定本地未啟用與所述認(rèn)證報文匹配的放行策略。
優(yōu)選地,所述處理單元進(jìn)一步在所述判斷單元的判斷結(jié)果為否時,終止所述認(rèn)證報文轉(zhuǎn)發(fā)。
優(yōu)選地,所述認(rèn)證報文為遠(yuǎn)程用戶撥號認(rèn)證服務(wù)RADIUS報文。
優(yōu)選地,所述認(rèn)證方式為802.1X認(rèn)證方式。
至此,完成圖4所示裝置結(jié)構(gòu)描述。
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明保護(hù)的范圍之內(nèi)。