802 1X協議的工作機制流程詳解

2021-09-07 09:45:19 字數 5263 閱讀 3134

作為乙個認證協議,802.1x在實現的過程中有很多重要的工作機制。下圖顯示了802.1x協議的基本原理:

supplicant發出乙個連線請求(epaol),該請求被authenticator(支援802.1x協議的交換機)**到authentication server(支援eap驗證的radius伺服器)上,authentication server得到認證請求後會對照使用者資料庫,驗證通過後返回相應的網路引數,如客戶終端的ip位址,mtu大小等。authenticator得到這些資訊後,會開啟原本被堵塞的埠。

客戶機在得到這些引數後才能正常使用網路,否則埠就始終處於阻塞狀態,只允許802.1x的認證報文eapol通過。

3.5.gif (3.42 kb)

2008-8-25 21:06

802.1x認證協議原理

1.1.1

基本認證流程

圖3-6是乙個典型的認證會話流程,採用的認證機制是md5-challenge:

(1)supplicant傳送乙個eapol-start報文發起認證過程。

(2)authenticator收到eapol-start後,傳送乙個eap-request報文響應supplicant的認證請求,請求使用者id。

(3)supplicant以乙個eap-response報文響應eap-request,將使用者id封裝在eap報文中發給authenticator。

(4)authenticator將supplicant送來的eap-request報文與自己的nas ip、nas port等相關資訊一起封裝在radius access-request報文中發給認證伺服器(authentication server)。

3.6.gif (10.85 kb)

2008-8-25 21:06

典型的認證會話流程

(5)認證伺服器收到radius access-request報文後,將使用者id提取出來在資料庫中進行查詢。如果找不到該使用者id,則直接丟棄該報文;如果該使用者id存在,認證伺服器會提取出使用者的密碼等資訊,用乙個隨機生成的加密字進行md5加密,生成密文。同時,將這個隨機加密字封裝在乙個eap-challenge request報文中,再將該eap報文封裝在radius access-challenge報文的eap-message屬性中發給authenticator。

(6)authenticator收到radius access-challenge報文後,將封裝在該報文中的eap-challenge request報文傳送給supplicant。

(7)supplicant用認證伺服器發來的隨機加密字對使用者名稱密碼等資訊進行相同的md5加密運算生成密文,將密文封裝在乙個eap-challenge response報文中發給authenticator。

(8)authenticator收到eap-challenge response報文後,將其封裝在乙個radius access-request報文的eap-message屬性中發給認證伺服器。

(9)認證伺服器拆開封裝,將supplicant發回的密文與自己在第(5)步中生成的密文進行對比。如果不一致,則認證失敗,伺服器將返回一條radius access-reject資訊,同時保持埠關閉狀態;如果一致,則認證通過,伺服器將一條eap-success訊息封裝在radius access-accept報文的屬性中傳送給authenticator。

(10)

authenticator在接到認證伺服器發來的radius access-accept之後,將埠狀態更改為「已授權」,同時將radius access-accept中的eap-success報文拆出來傳送給supplicant。

(11)

authenticator向認證伺服器傳送乙個radius accounting-request(start)報文,申請開始計賬。

(12)

認證伺服器開始記賬,向authenticator返回radius accounting-response報文。

(13)

使用者下線時,supplicant向authenticator傳送eapol-logoff報文。

(14)

authenticator向認證伺服器傳送radius accounting-request(stop)請求。

(15)

認證伺服器收到authenticator送來的停止記賬請求後停止記賬,同時傳送一條radius accounting-response響應。

(16)

authenticator傳送一條eapol failure訊息給supplicant,同時將埠狀態置為「未授權」。

1.1.2

認證發起

802.1x的認證可以由supplicant主動發起,也可以由authenticator發起。在認證發起階段,supplicant和authenticator之間互相不知道傳送的目標,因此其目標mac位址為802.

1x協議中分配的組播位址:01-80-c2-00-00-03。

1.1.2.1

由authenticator發起的認證

當authenticator探測到某個埠的狀態由「down」切換到「up」時,或者檢測到有未經認證的使用者使用網路時,就會發起認證。在認證開始之前,埠的狀態被強制為未經認證狀態。

如果supplicant的身份標識不可知,則authenticator會傳送eap-request/identity報文,請求supplicant傳送身份標識。這樣,就開始了典型的認證過程。

supplicant在收到來自authenticator的eap-request報文後,將傳送eap-response報文響應authenticator的請求。

authenticator支援定期的重新認證,可以隨時對乙個埠發起重新認證的過程。如果埠狀態為已認證狀態,則當authenticator發起重新認證時,若通過認證,則該埠的狀態保持不變;如果未通過認證,則該埠的狀態改變為未認證狀態。

1.1.2.2

由supplicant發起認證

如果使用者要上網,則可以通過supplicant軟體向authenticator傳送eapol-start報文,來主動發起認證。authenticator在收到supplicant傳送的eapol-start報文後,會傳送eap-request/identity報文響應使用者請求,要求使用者傳送身份標識,這樣就啟動了乙個認證過程。

如果連續傳送多次都沒有收到來自authenticator的eap-request,supplicant就認為認證通過,因為authenticator可能並不支援802.1x。

1.1.3

退出已認證狀態

有幾種方式可以造成authenticator把埠狀態從已認證狀態改變成未認證狀態:

supplicant未通過認證伺服器的認證;

由於管理性的控制埠始終處於未認證狀態,而不管是否通過認證;

與埠對應的mac位址出現故障(管理性禁止或硬體故障);

supplicant與authenticator之間的連線失敗,造成認證超時;

重新認證超時;

supplicant未響應authenticator發起的認證請求;

supplicant傳送eapol-logoff報文,主動下線。

退出己認證狀態的直接結果就是導致使用者下線。如果使用者要繼續上網,則要再發起乙個認證過程。

當乙個使用者從一台終端退出後,很可能其他使用者不發起乙個新的登入請求就可以利用該裝置訪問網路。提供專門的退出機制來確保中止使用者與authenticator專有的會話程序,可以防止使用者的訪問許可權被他人盜用。通過傳送eapol-logoff報文,可以使authenticator將對應的埠狀態改變為未認證狀態。

1.1.4

重新認證

為了保證supplicant和authenticator之間的鏈路處於啟用狀態,以防因為使用者端裝置發生故障造成異常宕機後影響對使用者記賬的準確性,authenticator可以定期發起重新認證過程。

重新認證過程對於使用者是透明的,即使用者無需再次輸入使用者名稱/密碼。該過程由authenticator發起,時間是從最近一次成功認證後算起。

1.1.5

認證報文丟失重傳

對於authenticator和supplicant之間通訊的eap報文,如果發生丟失,則由authenticator負責進行報文重傳。在設定重傳時間的時候,考慮網路的實際環境,通常會認為authenticator和supplicant之間報文丟失的機率較低且傳送延遲低,因此一般通過乙個超時計數器來設定,預設重傳時間為30秒。

有些報文的丟失重傳比較特殊,如eapol-start報文的丟失是由supplicant負責重傳的;而對於eap-failure和eap-success報文的丟失,supplicant會在乙個超時時間後自動重新連線。

由於對使用者身份合法性的認證最終由認證伺服器執行,authenticator和認證伺服器之間的報文丟失重傳也很重要。

另外要注意的是,在執行802.1x認證時,只有認證通過後才能進行dhcp發起和ip分配的過程。如果supplicant配置了dhcp自動獲取,則可能在未啟動802.

1x supplicant之前,就發起了dhcp的請求。而此時authenticator處於禁止通行狀態,這樣authenticator會丟掉初始化的dhcp幀,同時會發起對使用者的認證。由於dhcp請求超時過程為64秒,因此,如果802.

1x認證過程能在這64秒內完成,那麼dhcp請求將不會超時,supplicant可順利完成位址請求。如果終端軟體支援認證後再執行一次dhcp,則不用考慮64秒的超時限制了。

1.1.6

eap幀的中繼**

由於authenticator與supplicant之間是採用eapol協議進行通訊,而authenticator與認證伺服器之間則採用eap協議進行通訊,。

eapol-start和eapol-logoff幀只能由supplicant傳送給authenticator,而authenticator把eapol-key幀傳送給supplicant。authenticator不能將這些幀中繼給認證伺服器。eap-request/identity幀只能由authenticator傳送給supplicant,而不會傳送給認證伺服器。

除了以上的這些特殊幀外,supplicant和authenticator之間通訊的其他幀都可以**給認證伺服器。不過幀格式要從eapol格式轉換成eap格式。反向的,。

1.1.7

加密eapol認證報文的傳送

eapol協議支援在supplicant和authenticator之間加密傳送認證報文。可以通過協議引數keytransmissionenabled來控制是否加密。如果該值為true,表示對認證報文進行加密;如果值為false,則表示不對認證報文加密。

如果supplicant或authenticator不支援加密,則keytransmissionenabled引數應設定為false。

基於802 1x協議網路認證技術

基於802.1x協議的網路認證技術研究 摘要 本文是依據802.1x eap 和radius等協議的工作原理,在網路接入層實現安全接入控制方案,對接入網路的使用者進行驗證。借助802.1x協議 eap協議及radius協議的工作原理,在網路接入層實現安全接入控制方案,對接入網路的使用者進行驗證,設計...

普通X光機放射科工作制度

放射科工作制度 一 x線檢查,須由臨床醫師詳細填寫申請單。二 重要攝片,由醫師和技術人員共同確定投照技術。特殊攝片和主要攝片,待觀察 後方可囑受檢者離開。三 x線診斷要密切結合臨床。進修或實習醫師寫的診斷報告,應經上級醫師簽名。四 x線片是醫院工作的原始記錄,對醫療 教學 科研都有重要作用。全部x線...

X光安檢機的維修保養注意事項

維修過程中,不能有異物 水滴進入裝置,避免引起裝置損壞或者安全事故。裝置中有大量工作電壓為220v的器件,普通保養必須在斷電時進行,如果要帶電操作,必須由經過相關培訓的人員進行,而且要做好防觸電工作。裝置中有大量精密的電子器件,在維修前要做好防止靜電損壞器件的準備工作。裝置多處有用於防止射線洩露的鉛...