02-802.1X配置
本章節下載: 02-802.1X配置 (953.58 KB)
目 錄
1.3.5 802.1X Critical Voice VLAN
2.13 配置端口延遲加入802.1X的Guest VLAN
2.16 配置802.1X Critical Voice VLAN
2.19 配置向802.1X Auth-Fail VLAN用戶發送認證成功幀
2.20 配置向802.1X Critical VLAN用戶發送認證成功幀
2.27 配置丟棄重複的802.1X EAPOL-Start報文
2.32 配置端口發送802.1X協議報文不攜帶VLAN Tag
2.33 配置MAC地址認證成功用戶進行802.1X認證的最大嚐試次數
2.35 配置為802.1X用戶添加IP Source Guard動態綁定表項
2.38 配置802.1X向服務器發送的EAP-TLS分片報文最大長度
2.44.2 802.1X支持Guest VLAN、授權VLAN下發配置舉例
2.44.4 802.1X支持EAD快速部署典型配置舉例(DHCP中繼組網)
2.44.5 802.1X支持EAD快速部署典型配置舉例(DHCP服務器組網)
802.1X協議是一種基於端口的網絡接入控製協議,即在局域網接入設備的端口上對所接入的用戶和設備進行認證,以便控製用戶設備對網絡資源的訪問。
802.1X係統中包括三個實體:客戶端(Client)、設備端(Device)和認證服務器(Authentication server),如圖1-1所示。
圖1-1 802.1X體係結構圖
· 客戶端是請求接入局域網的用戶終端,由局域網中的設備端對其進行認證。客戶端上必須安裝支持802.1X認證的客戶端軟件。
· 設備端是局域網中控製客戶端接入的網絡設備,位於客戶端和認證服務器之間,為客戶端提供接入局域網的端口(物理端口或邏輯端口),並通過與認證服務器的交互來對所連接的客戶端進行認證。
· 認證服務器用於對客戶端進行認證、授權和計費,通常為RADIUS(Remote Authentication Dial-In User Service,遠程認證撥號用戶服務)服務器。認證服務器根據設備端發送來的客戶端認證信息來驗證客戶端的合法性,並將驗證結果通知給設備端,由設備端決定是否允許客戶端接入。在一些規模較小的網絡環境中,認證服務器的角色也可以由設備端來代替,即由設備端對客戶端進行本地認證、授權和計費。
設備端為客戶端提供的接入局域網的端口被劃分為兩個邏輯端口:受控端口和非受控端口。任何到達該端口的幀,在受控端口與非受控端口上均可見。
· 非受控端口:始終處於雙向連通狀態,主要用來傳遞認證報文,保證客戶端始終能夠發出或接收認證報文。
· 受控端口:設備端利用認證服務器對需要接入局域網的客戶端進行認證,並根據認證結果(Accept或Reject)對受控端口的授權狀態進行相應地控製。
¡ 客戶端認證成功,受控端口處於授權狀態。該狀態下端口雙向連通,用於傳遞業務報文。
¡ 客戶端認證失敗,受控端口處於非授權狀態。該狀態下,又可以分為兩種情況:
- 雙向受控狀態:禁止幀的發送和接收;
- 單向受控狀態時:禁止從客戶端接收幀,但允許向客戶端發送幀。目前,設備上的受控端口隻能處於單向受控狀態。
802.1X係統使用EAP(Extensible Authentication Protocol,可擴展認證協議)來實現客戶端、設備端和認證服務器之間認證信息的交互。EAP是一種C/S模式的認證框架,它可以支持多種認證方法,例如MD5-Challenge、EAP-TLS(Extensible Authentication Protocol -Transport Layer Security,可擴展認證協議-傳輸層安全)、PEAP(Protected Extensible Authentication Protocol,受保護的擴展認證協議)等。在客戶端與設備端之間,EAP報文使用EAPOL(Extensible Authentication Protocol over LAN,局域網上的可擴展認證協議)封裝格式承載於數據幀中傳遞。在設備端與RADIUS服務器之間,EAP報文的交互有EAP中繼和EAP終結兩種處理機製。
設備端對收到的EAP報文進行中繼,使用EAPOR(EAP over RADIUS)封裝格式將其承載於RADIUS報文中發送給RADIUS服務器。
圖1-3 EAP中繼原理示意圖
該處理機製下,EAP認證過程在客戶端和RADIUS服務器之間進行。RADIUS服務器作為EAP服務器來處理客戶端的EAP認證請求,設備相當於一個中繼,僅對EAP報文做中轉。
設備對EAP認證過程進行終結,將收到的EAP報文中的客戶端認證信息封裝在標準的RADIUS報文中,與服務器之間采用PAP(Password Authentication Protocol,密碼認證協議)或CHAP(Challenge Handshake Authentication Protocol,質詢握手認證協議)方法進行認證。
圖1-4 EAP終結原理示意圖
表1-1 EAP中繼與EAP終結的對比
報文交互方式 |
優勢 |
局限性 |
EAP中繼 |
· 支持多種EAP認證方法 · 設備端的配置和處理流程簡單 |
一般來說需要RADIUS服務器支持EAP-Message和Message-Authenticator屬性,以及客戶端采用的EAP認證方法 |
EAP終結 |
對RADIUS服務器無特殊要求,支持PAP認證和CHAP認證即可 |
· 僅能支持MD5-Challenge類型的EAP認證以及iNode 802.1X客戶端發起的“用戶名+密碼”方式的EAP認證 · 設備端處理相對複雜 |
EAP報文格式如圖1-5所示。
圖1-5 EAP報文格式
· Code:EAP報文的類型,包括Request(1)、Response(2)、Success(3)和Failure(4)。
· Identifier:用於匹配Request消息和Response消息的標識符。
· Length:EAP報文的長度,包含Code、Identifier、Length和Data域,單位為字節。
· Data:EAP報文的內容,該字段僅在EAP報文的類型為Request和Response時存在,它由類型域和類型數據兩部分組成,例如,類型域為1表示Identity類型,類型域為4表示MD5 challenge類型。
EAPOL是802.1X協議定義的一種承載EAP報文的封裝技術,主要用於在局域網中傳送客戶端和設備端之間的EAP協議報文。EAPOL數據包的格式如圖1-6所示。
圖1-6 EAPOL數據包格式
· PAE Ethernet Type:表示協議類型。EAPOL的協議類型為0x888E。
· Protocol Version:表示EAPOL數據幀的發送方所支持的EAPOL協議版本號。
· Type:表示EAPOL數據幀類型。目前設備上支持的EAPOL數據幀類型見表1-2。
表1-2 EAPOL數據幀類型
類型值 |
數據幀類型 |
說明 |
0x00 |
EAP-Packet |
認證信息幀,用於承載客戶端和設備端之間的EAP報文 |
0x01 |
EAPOL-Start |
認證發起幀,用於客戶端向設備端發起認證請求 |
0x02 |
EAPOL-Logoff |
退出請求幀,用於客戶端向設備端發起下線請求 |
· Length:表示數據域的長度,也就是Packet Body字段的長度,單位為字節。當EAPOL數據幀的類型為EAPOL-Start或EAPOL-Logoff時,該字段值為0,表示後麵沒有Packet Body字段。
· Packet Body:數據域的內容。
RADIUS為支持EAP認證增加了兩個屬性:EAP-Message(EAP消息)和Message-Authenticator(消息認證碼)。在含有EAP-Message屬性的數據包中,必須同時包含Message-Authenticator屬性。關於RADIUS報文格式的介紹請參見“安全配置指導”中的“AAA”的RADIUS協議簡介部分。
· EAP-Message
如圖1-7所示,EAP-Message屬性用來封裝EAP報文,Value域最長253字節,如果EAP報文長度大於253字節,可以對其進行分片,依次封裝在多個EAP-Message屬性中。
圖1-7 EAP-Message屬性封裝
· Message-Authenticator
如圖1-8所示,Message-Authenticator屬性用於在EAP認證過程中驗證攜帶了EAP-Message屬性的RADIUS報文的完整性,避免報文被篡改。如果接收端對接收到的RADIUS報文計算出的完整性校驗值與報文中攜帶的Message-Authenticator屬性的Value值不一致,該報文會被認為無效而丟棄。
圖1-8 Message-Authenticator屬性封裝
設備端支持采用EAP中繼方式或EAP終結方式與遠端RADIUS服務器交互。以下關於802.1X認證過程的描述,都以客戶端主動發起認證為例。
這種方式是IEEE 802.1X標準規定的,將EAP承載在其它高層協議中,如EAP over RADIUS,以便EAP報文穿越複雜的網絡到達認證服務器。一般來說,需要RADIUS服務器支持EAP屬性:EAP-Message和Message-Authenticator。
如圖1-9所示,以MD5-Challenge類型的EAP認證為例,具體認證過程如下。
圖1-9 IEEE 802.1X認證係統的EAP中繼方式認證流程
(1) 當用戶需要訪問外部網絡時打開802.1X客戶端程序,輸入用戶名和密碼,發起連接請求。此時,客戶端程序將向設備端發出認證請求幀(EAPOL-Start),開始啟動一次認證過程。
(2) 設備端收到認證請求幀後,將發出一個Identity類型的請求幀(EAP-Request/Identity)要求用戶的客戶端程序發送輸入的用戶名。
(3) 客戶端程序響應設備端發出的請求,將用戶名信息通過Identity類型的響應幀(EAP-Response/Identity)發送給設備端。
(4) 設備端將客戶端發送的響應幀中的EAP報文封裝在RADIUS報文(RADIUS Access-Request)中發送給認證服務器進行處理。
(5) RADIUS服務器收到設備端轉發的用戶名信息後,將該信息與數據庫中的用戶名列表對比,找到該用戶名對應的密碼信息,用隨機生成的一個MD5 Challenge對密碼進行加密處理,同時將此MD5 Challenge通過RADIUS Access-Challenge報文發送給設備端。
(6) 設備端將RADIUS服務器發送的MD5 Challenge轉發給客戶端。
(7) 客戶端收到由設備端傳來的MD5 Challenge後,用該Challenge對密碼進行加密處理,生成EAP-Response/MD5 Challenge報文,並發送給設備端。
(8) 設備端將此EAP-Response/MD5 Challenge報文封裝在RADIUS報文(RADIUS Access-Request)中發送給RADIUS服務器。
(9) RADIUS服務器將收到的已加密的密碼信息和本地經過加密運算後的密碼信息進行對比,如果相同,則認為該用戶為合法用戶,並向設備端發送認證通過報文(RADIUS Access-Accept)。
(10) 設備收到認證通過報文後向客戶端發送認證成功幀(EAP-Success),並將端口改為授權狀態,允許用戶通過端口訪問網絡。
(11) 用戶在線期間,設備端會通過向客戶端定期發送握手報文的方法,對用戶的在線情況進行監測。
(12) 客戶端收到握手報文後,向設備發送應答報文,表示用戶仍然在線。缺省情況下,若設備端發送的兩次握手請求報文都未得到客戶端應答,設備端就會讓用戶下線,防止用戶因為異常原因下線而設備無法感知。
(13) 客戶端可以發送EAPOL-Logoff幀給設備端,主動要求下線。
(14) 設備端把端口狀態從授權狀態改變成未授權狀態,並向客戶端發送EAP-Failure報文。
EAP中繼方式下,需要保證在客戶端和RADIUS服務器上選擇一致的EAP認證方法,而在設備上,隻需要通過dot1x authentication-method eap命令啟動EAP中繼方式即可。
這種方式將EAP報文在設備端終結並映射到RADIUS報文中,利用標準RADIUS協議完成認證、授權和計費。設備端與RADIUS服務器之間可以采用PAP或者CHAP認證方法。如圖1-10所示,以CHAP認證為例,具體的認證流程如下。
圖1-10 IEEE 802.1X認證係統的EAP終結方式認證流程
EAP終結方式與EAP中繼方式的認證流程相比,不同之處在於用來對用戶密碼信息進行加密處理的MD5 challenge由設備端生成,之後設備端會把用戶名、MD5 challenge和客戶端加密後的密碼信息一起發送給RADIUS服務器,進行相關的認證處理。
802.1X的認證過程可以由客戶端主動發起,也可以由設備端發起。
· 組播觸發:客戶端主動向設備端發送EAPOL-Start報文來觸發認證,該報文目的地址為組播MAC地址01-80-C2-00-00-03。
· 廣播觸發:客戶端主動向設備端發送EAPOL-Start報文來觸發認證,該報文的目的地址為廣播MAC地址。該方式可解決由於網絡中有些設備不支持上述的組播報文,而造成設備端無法收到客戶端認證請求的問題。
目前,iNode的802.1X客戶端可支持廣播觸發方式。
設備端主動觸發方式用於支持不能主動發送EAPOL-Start報文的客戶端。設備主動觸發認證的方式分為以下兩種:
· 組播觸發:設備每隔一定時間(缺省為30秒)主動向客戶端組播發送Identity類型的EAP-Request幀來觸發認證。
· 單播觸發:當設備收到源MAC地址未知的報文時,主動向該MAC地址單播發送Identity類型的EAP-Request幀來觸發認證。若設備端在設置的時長內沒有收到客戶端的響應,則重發該報文。
設備不僅支持協議所規定的基於端口的接入控製方式(Port-based),還對其進行了擴展、優化,支持基於MAC的接入控製方式(MAC-based)。
· 采用基於端口的接入控製方式時,隻要該端口下的第一個用戶認證成功後,其它接入用戶無須認證就可使用網絡資源,但是當第一個用戶下線後,其它用戶也會被拒絕使用網絡。
· 采用基於MAC的接入控製方式時,該端口下的所有接入用戶均需要單獨認證,當某個用戶下線後,也隻有該用戶無法使用網絡。
802.1X用戶在通過遠程AAA/本地AAA認證時,遠程AAA服務器/接入設備可以下發授權VLAN信息給用戶的接入端口,但是僅遠程AAA服務器支持授權攜帶Tag的VLAN。
該方式下,需要在服務器上指定下發給用戶的授權VLAN信息,下發的授權VLAN信息可以有多種形式,包括數字型VLAN和字符型VLAN,字符型VLAN又可分為VLAN名稱、VLAN組名、攜帶後綴的VLAN ID(後綴用於標識是否攜帶Tag)。
設備收到服務器的授權VLAN信息後,首先對其進行解析,隻要解析成功,即以對應的方法下發授權VLAN;如果解析不成功,則用戶認證失敗。
· 若認證服務器下發的授權VLAN信息為一個VLAN ID或一個VLAN名稱,則僅當對應的VLAN不為動態學習到的VLAN、保留VLAN和Private VLAN時,該VLAN才是有效的授權VLAN。當認證服務器下發VLAN名稱時,對應的VLAN必須為已存在的VLAN。
· 若認證服務器下發的授權VLAN信息為一個VLAN組名,則設備首先會通過組名查找該組內配置的VLAN列表。若查找到授權VLAN列表,則在這一組VLAN中,除動態VLAN、Private VLAN之外的所有VLAN都有資格被授權給用戶。關於VLAN組的相關配置,請參見“二層技術-以太網交換配置指導”中的“VLAN”。
¡ 若端口接入控製方式為MAC-based,當端口鏈路類型為Hybrid,且使能了MAC VLAN功能時,若端口上已有其他在線用戶,則將選擇該組VLAN中在線用戶數最少的一個VLAN作為當前認證用戶的授權VLAN(若在線用戶數最小的VLAN有多個,則選擇VLAN ID最小者);當端口鏈路類型為Hybrid但未使能MAC VLAN功能、鏈路類型為Access或Trunk時,若端口上已有其他在線用戶,則查看端口上在線用戶的授權VLAN是否存在於該組中,若存在,則將此VLAN授權給當前的認證用戶,否則認為當前認證用戶授權失敗,將被強製下線。若當前用戶為端口上第一個在線用戶,則直接將該組VLAN中ID最小的VLAN授權給當前的認證用戶。
¡ 若接入控製方式為Port-based,則將該組VLAN中ID最小的VLAN授權給當前的認證用戶,且後續該端口上的認證用戶均被加入該授權VLAN。
· 若認證服務器下發的授權VLAN信息為一個包含若幹VLAN編號以及若幹VLAN名稱的字符串,則設備首先將其解析為一組VLAN ID,然後采用與解析一個VLAN組名相同的解析邏輯選擇一個授權VLAN。
· 若認證服務器下發的授權VLAN信息為一個包含若幹個“VLAN ID+後綴”形式的字符串,則隻有第一個不攜帶後綴或者攜帶untagged後綴的VLAN將被解析為唯一的untagged的授權VLAN,其餘VLAN都被解析為tagged的授權VLAN。例如服務器下發字符串“1u 2t 3”,其中的u和t均為後綴,分別表示untagged和tagged。該字符串被解析之後,VLAN 1為untagged的授權VLAN,VLAN 2和VLAN 3為tagged的授權VLAN。該方式下發的授權VLAN僅對端口鏈路類型為Hybrid或Trunk,且802.1X接入控製方式為Port-based的端口有效。
¡ 端口的缺省VLAN將被修改為untagged的授權VLAN。若不存在untagged的授權VLAN,則不修改端口的缺省VLAN。
¡ 端口將允許所有解析成功的授權VLAN通過。
該方式下,可以通過配置本地用戶的授權屬性指定下發給用戶的授權VLAN信息,且隻能指定一個授權VLAN。設備將此VLAN作為該本地用戶的授權VLAN。關於本地用戶的相關配置,請參考“安全配置指導”中的“AAA”。
無論是遠程AAA授權,還是本地AAA授權,除了認證服務器下發“VLAN ID+後綴”形式的字符串之外,其它情況下設備均會根據用戶認證上線的端口鏈路類型,按照表1-3將端口加入指定的授權VLAN中。
接入控製方式 |
Access端口 |
Trunk端口 |
Hybrid端口 |
Port-based |
· 不支持下發帶Tag的VLAN · 加入授權VLAN · 缺省VLAN修改為授權VLAN |
· 允許授權VLAN通過 · 授權VLAN未攜帶Tag的情況下,缺省VLAN修改為授權VLAN;授權VLAN攜帶Tag的情況下,不會修改該端口的缺省VLAN |
· 授權VLAN未攜帶Tag的情況下,允許授權VLAN以不攜帶Tag的方式通過;授權VLAN攜帶Tag的情況下,允許授權VLAN以攜帶Tag的方式通過 · 授權VLAN未攜帶Tag的情況下,缺省VLAN修改為授權VLAN;授權VLAN攜帶Tag的情況下,不會修改該端口的缺省VLAN |
MAC-based |
· 不支持下發帶Tag的VLAN · 加入第一個通過認證的用戶的授權VLAN · 缺省VLAN修改為第一個通過認證的用戶的授權VLAN |
· 允許授權VLAN通過 · 授權VLAN未攜帶Tag的情況下,缺省VLAN修改為第一個通過認證的用戶的授權VLAN;授權VLAN攜帶Tag的情況下,不會修改該端口的缺省VLAN |
· 授權VLAN未攜帶Tag的情況下,允許授權VLAN以不攜帶Tag的方式通過;授權VLAN攜帶Tag的情況下,允許授權VLAN以攜帶Tag的方式通過 · 在授權VLAN未攜帶Tag的情況下且端口上開啟了MAC VLAN功能,則根據授權VLAN動態地創建基於用戶MAC的VLAN,而端口的缺省VLAN並不改變 · 在授權VLAN未攜帶Tag的情況下且端口上未開啟MAC VLAN功能,則端口的缺省VLAN修改為第一個通過認證的用戶的授權VLAN |
說明:在授權VLAN未攜帶Tag的情況下,隻有開啟了MAC VLAN功能的端口上才允許給不同的用戶MAC授權不同的VLAN。如果沒有開啟MAC VLAN功能,授權給所有用戶的VLAN必須相同,否則僅第一個通過認證的用戶可以成功上線。 在授權VLAN攜帶Tag的情況下,無論是否開啟了MAC VLAN功能,設備都會給不同的用戶授權不同的VLAN,一個VLAN隻能授權給一個用戶。 |
授權VLAN並不影響端口的配置。但是,對於Access端口和Trunk端口,授權VLAN的優先級高於端口配置的VLAN,即通過認證後起作用的VLAN是授權VLAN,端口配置的VLAN在用戶下線後生效。對於Hybrid端口,當授權VLAN攜帶Tag的情況與端口配置的VLAN情況不一致(例如授權VLAN攜帶Tag,而端口配置的VLAN不攜帶Tag)時,授權VLAN不生效,通過認證後起作用的VLAN仍為端口配置的VLAN(例如,授權VLAN為VLAN 30 untagged,而端口配置的為VLAN 30 tagged,則VLAN 30 tagged生效);當授權VLAN攜帶Tag的情況與端口配置的VLAN情況一致時,授權VLAN的優先級高於端口配置的VLAN。
· 對於Hybrid端口,如果認證用戶的報文攜帶VLAN Tag,則應通過port hybrid vlan命令配置該端口在轉發指定的VLAN報文時攜帶VLAN Tag;如果認證用戶的報文不攜帶VLAN Tag,則應配置該端口在轉發指定的VLAN報文時不攜帶VLAN Tag。否則,當服務器沒有授權下發VLAN時,用戶雖然可以通過認證但不能訪問網絡。
· 對於Hybrid端口,不建議把將要下發或已經下發的授權VLAN配置為攜帶Tag的方式加入端口。
· 在啟動了802.1X周期性重認證功能的Hybrid端口上,若用戶在MAC VLAN功能開啟之前上線,則MAC VLAN功能不能對該用戶生效,即係統不會根據服務器下發的VLAN生成該用戶的MAC VLAN表項,隻有該在線用戶重認證成功且服務器下發的VLAN發生變化時,MAC VLAN功能才會對它生效。MAC VLAN功能的詳細介紹請參見“二層技術-以太網交換配置指導”中的“VLAN”。
802.1X Guest VLAN功能允許用戶在未認證的情況下,訪問某一特定VLAN中的資源。這個特定的VLAN稱之為Guest VLAN,該VLAN內通常放置一些用於用戶下載客戶端軟件或其他升級程序的服務器。
根據端口的接入控製方式不同,Guest VLAN的生效情況有所不同。
在接入控製方式為Port-based的端口上配置Guest VLAN後,若全局和端口上都使能了802.1X,端口授權狀態為auto,且端口處於激活狀態,則該端口就被加入Guest VLAN,所有在該端口接入的用戶將被授權訪問Guest VLAN裏的資源。端口加入Guest VLAN的情況與加入授權VLAN相同,與端口鏈路類型有關,請參見“1.3.1 授權VLAN”的“表1-3”。需要注意的是,端口接收的帶VLAN Tag的報文,如果該VLAN不是配置的Guest VLAN,則報文仍然可以在該VLAN內轉發。
當端口上處於Guest VLAN中的用戶發起認證且失敗時:如果端口配置了Auth-Fail VLAN,則該端口會被加入Auth-Fail VLAN;如果端口未配置Auth-Fail VLAN,則該端口仍然處於Guest VLAN內。關於Auth-Fail VLAN的具體介紹請參見“1.3.3 802.1X Auth-Fail VLAN”。
當端口上處於Guest VLAN中的用戶發起認證且成功時,端口會離開Guest VLAN,之後端口加入VLAN情況與認證服務器是否下發VLAN有關,具體如下:
· 若認證服務器下發VLAN,則端口加入下發的VLAN中。
· 若認證服務器未下發VLAN,則端口回到初始VLAN中。
用戶下線後,端口加入Guest VLAN。
在接入控製方式為MAC-based的端口上配置Guest VLAN後,端口上未認證的用戶將被授權訪問Guest VLAN裏的資源。
當端口上處於Guest VLAN中的用戶發起認證且失敗時,如果端口配置了Auth-Fail VLAN,則認證失敗的用戶將被加入Auth-Fail VLAN;如果端口未配置Auth-Fail VLAN,則該用戶將離開Guest VLAN,回到加入Guest VLAN之前端口所在的初始VLAN。
當端口上處於Guest VLAN中的用戶發起認證且成功時,設備會根據認證服務器是否下發授權VLAN決定將該用戶加入到下發的授權VLAN中,或使其回到加入Guest VLAN之前端口所在的初始VLAN。
802.1X Auth-Fail VLAN功能允許用戶在認證失敗的情況下訪問某一特定VLAN中的資源,這個VLAN稱之為Auth-Fail VLAN。需要注意的是,這裏的認證失敗是認證服務器因某種原因明確拒絕用戶認證通過,比如用戶密碼錯誤,而不是認證超時或網絡連接等原因造成的認證失敗。
根據端口的接入控製方式不同,Auth-Fail VLAN的生效情況有所不同。
在接入控製方式為Port-based的端口上配置Auth-Fail VLAN後,若該端口上有用戶認證失敗,則該端口會離開當前的VLAN被加入到Auth-Fail VLAN,所有在該端口接入的用戶將被授權訪問Auth-Fail VLAN裏的資源。端口加入Auth-Fail VLAN的情況與加入授權VLAN相同,與端口鏈路類型有關,請參見“1.3.1 授權VLAN”的“表1-3”。
當加入Auth-Fail VLAN的端口上有用戶發起認證並失敗,則該端口將會仍然處於Auth-Fail VLAN內;如果認證成功,則該端口會離開Auth-Fail VLAN,之後端口加入VLAN情況與認證服務器是否下發授權VLAN有關,具體如下:
· 若認證服務器下發了授權VLAN,則端口加入下發的授權VLAN中。
· 若認證服務器未下發授權VLAN,則端口回到缺省VLAN中。
用戶下線後,若端口上配置了Guest VLAN,則加入Guest VLAN,否則加入缺省VLAN。
在接入控製方式為MAC-based的端口上配置Auth-Fail VLAN後,該端口上認證失敗的用戶將被授權訪問Auth-Fail VLAN裏的資源。
當Auth-Fail VLAN中的用戶再次發起認證時,如果認證成功,則設備會根據認證服務器是否下發VLAN決定將該用戶加入到下發的授權VLAN中,或使其回到端口的缺省VLAN中;如果認證失敗,則該用戶仍然留在該Auth-Fail VLAN中。
802.1X Critical VLAN功能允許用戶在認證時,當所有認證服務器都不可達的情況下訪問某一特定VLAN中的資源,這個VLAN稱之為Critical VLAN。目前,隻采用RADIUS認證方式的情況下,在所有RADIUS認證服務器都不可達後,端口才會加入Critical VLAN。若采用了其它認證方式,則端口不會加入Critical VLAN。
根據端口的接入控製方式不同,Critical VLAN的生效情況有所不同。
在接入控製方式為Port-based的端口上配置Critical VLAN後,若該端口上有用戶認證時,所有認證服務器都不可達,則該端口會被加入到Critical VLAN,之後所有在該端口接入的用戶將被授權訪問Critical VLAN裏的資源。在用戶進行重認證時,若所有認證服務器都不可達,且端口指定在此情況下強製用戶下線,則該端口也會被加入到Critical VLAN。端口加入Critical VLAN的情況與加入授權VLAN相同,與端口鏈路類型有關,請參見“1.3.1 授權VLAN”的“表1-3”。
已經加入Critical VLAN的端口上有用戶發起認證時,如果所有認證服務器不可達,則端口仍然在Critical VLAN內;如果服務器可達且認證失敗,且端口配置了Auth-Fail VLAN,則該端口將會加入Auth-Fail VLAN,否則回到端口的缺省VLAN中;如果服務器可達且認證成功,則該端口加入VLAN的情況與認證服務器是否下發VLAN有關,具體如下:
· 若認證服務器下發了授權VLAN,則端口加入下發的授權VLAN中。
· 若認證服務器未下發授權VLAN,則端口回缺省VLAN中。
用戶下線後,若端口上配置了Guest VLAN,則加入Guest VLAN,否則加入缺省VLAN。
在接入控製方式為MAC-based的端口上配置Critical VLAN後,若該端口上有用戶認證時,所有認證服務器都不可達,則端口將允許Critical VLAN通過,用戶將被授權訪問Critical VLAN裏的資源。
當Critical VLAN中的用戶再次發起認證時,如果所有認證服務器不可達,則用戶仍然在Critical VLAN中;如果服務器可達且認證失敗,且端口配置了Auth-Fail VLAN,則該用戶將會加入Auth-Fail VLAN,否則回到端口的缺省VLAN中;如果服務器可達且認證成功,則設備會根據認證服務器是否下發授權VLAN決定將該用戶加入下發的授權VLAN中,或使其回到端口的缺省VLAN中。
802.1X Critical Voice VLAN功能允許語音用戶在認證時,當其采用的ISP域中的所有認證服務器都不可達的情況下訪問語音VLAN中的資源。目前,隻采用RADIUS認證方式的情況下,在所有RADIUS認證服務器都不可達後,端口才會加入Critical Voice VLAN。若采用了其它認證方式,則端口不會加入Critical Voice VLAN。
根據端口的接入控製方式不同,Critical Voice VLAN的生效情況有所不同。
在接入控製方式為Port-based的端口上配置Critical Voice VLAN後,當發現有認證服務器可達後,處於Critical Voice VLAN的端口會主動發送組播報文,觸發端口上的客戶端進行802.1X認證。
在接入控製方式為MAC-based的端口上配置Critical Voice VLAN後,當發現有認證服務器可達後,處於Critical Voice VLAN的端口會主動向已加入Critical Voice VLAN的MAC地址發送單播報文觸發其進行802.1X認證。
802.1X支持ACL(Access Control List,訪問控製列表)下發提供了對上線用戶訪問網絡資源的過濾與控製功能。當用戶上線時,如果RADIUS服務器上或接入設備的本地用戶視圖中指定了要下發給該用戶的授權ACL,則設備會根據下發的授權ACL對用戶所在端口的數據流進行過濾,與授權ACL規則匹配的流量,將按照規則中指定的permit或deny動作進行處理。
802.1X支持下發靜態ACL和動態ACL,兩種類型的ACL的區別如下:
· 靜態ACL可由RADIUS服務器或設備本地授權,且授權的內容是ACL編號。因此,設備上需要創建該ACL並配置對應的ACL規則。管理員可以通過改變授權的ACL編號或設備上對應的ACL規則來改變用戶的訪問權限。
· 動態ACL隻能由RADIUS服務器授權,且授權的內容是ACL名稱和對應的ACL規則。設備收到下發的動態ACL信息後,會自動根據該授權ACL的名稱和規則創建一個同名的動態ACL。如果設備上已存在相同名稱的靜態ACL,則動態ACL下發失敗,用戶上線失敗。當匹配該ACL的用戶都下線後,設備自動刪除該ACL。服務器下發的動態ACL隻能通過display dot1x connection或display acl命令查看,不能進行任何修改,也不能手工刪除。
802.1X認證可成功授權的ACL類型為基本ACL(ACL編號為2000~2999)、高級ACL(ACL編號為3000~3999)、二層ACL(ACL編號為4000~4999)和用戶自定義ACL(ACL編號為5000~5999)。但當下發的ACL不存在、未配置ACL規則或ACL規則配置了counting、established、fragment、source-mac或logging參數時,授權ACL不生效。有關ACL規則的具體介紹,請參見“ACL和QoS命令參考”中的“ACL”。
802.1X 支持User Profile下發提供了對上線用戶訪問網絡資源的過濾與控製功能。當用戶上線時,如果RADIUS服務器上或接入設備的本地用戶視圖中指定了要下發給該用戶的授權User Profile,則設備會根據服務器下發的授權User Profile對用戶所在端口的數據流進行過濾,僅允許User Profile策略中允許的數據流通過該端口。由於服務器上指定的是授權User Profile名稱,因此還需要在設備上創建該User Profile並配置該對應的User Profile策略。管理員可以通過改變授權的User Profile名稱或設備上對應的User Profile配置來改變用戶的訪問權限。
802.1X用戶采用基於MAC的接入控製方式時,且端口授權狀態為auto時,支持RADIUS擴展屬性下發重定向URL。802.1X用戶認證後,設備會根據RADIUS服務器下發的重定向URL屬性,將用戶的HTTP或HTTPS請求重定向到指定的Web認證頁麵。Web認證通過後,RADIUS服務器記錄802.1X用戶的MAC地址,並通過DM報文強製802.1X用戶下線。此後該用戶再次發起802.1X認證,由於RADIUS服務器上已記錄該用戶和其MAC地址的對應信息,用戶可以成功上線。
802.1X支持URL重定向功能和EAD快速部署功能互斥。設備對HTTPS報文進行重定向的內部偵聽端口號缺省為6654。如果需要修改該端口號,具體配置請參見“三層技術-IP業務配置指導”中的“HTTP重定向”。
802.1X重認證是指設備周期性對端口上在線的802.1X用戶發起重認證,以檢測用戶連接狀態的變化、確保用戶的正常在線,並及時更新服務器下發的授權屬性(例如ACL、VLAN等)。
認證服務器可以通過下發RADIUS屬性(session-timeout、Termination-action)來指定用戶會話超時時長以及會話中止的動作類型。認證服務器上如何下發以上RADIUS屬性的具體配置以及是否可以下發重認證周期的情況與服務器類型有關,請參考具體的認證服務器實現。
設備作為RADIUS DAE服務器,認證服務器作為RADIUS DAE客戶端時,後者可以通過COA(Change of Authorization)Messages向用戶下發重認證屬性,這種情況下,無論設備上是否開啟了周期性重認證功能,端口都會立即對該用戶發起重認證。關於RADIUS DAE服務器的詳細內容,請參見“安全配置指導”中的“AAA”。
802.1X用戶認證通過後,端口對用戶的重認證功能具體實現如下:
· 當認證服務器下發了用戶會話超時時長,且指定的會話中止動作為要求用戶進行重認證,則無論設備上是否開啟周期性重認證功能,端口都會在用戶會話超時時長到達後對該用戶發起重認證。
· 當認證服務器下發了用戶會話超時時長,且指定的會話中止動作為要求用戶下線時:
¡ 若設備上開啟了周期性重認證功能,且設備上配置的重認證定時器值小於用戶會話超時時長,則端口會以重認證定時器的值為周期向該端口在線802.1X用戶發起重認證;若設備上配置的重認證定時器值大於等於用戶會話超時時長,則端口會在用戶會話超時時長到達後強製該用戶下線。
¡ 若設備上未開啟周期性重認證功能,則端口會在用戶會話超時時長到達後強製該用戶下線。
· 當認證服務器未下發用戶會話超時時長時,是否對用戶進行重認證,由設備上配置的重認證功能決定。
· 對於已在線的802.1X用戶,要等當前重認證周期結束並且認證通過後才會按新配置的周期進行後續的重認證。
· 端口對用戶進行重認證過程中,重認證服務器不可達時端口上的802.1X用戶狀態均由端口上的配置決定。
在用戶名不改變的情況下,端口允許重認證前後服務器向該用戶下發不同的VLAN。
EAD(Endpoint Admission Defense,端點準入防禦)作為一個網絡端點接入控製方案,它通過安全客戶端、安全策略服務器、接入設備以及第三方服務器的聯動,加強了對用戶的集中管理,提升了網絡的整體防禦能力。但是在實際的應用過程中EAD客戶端的部署工作量很大,例如,需要網絡管理員手動為每一個EAD客戶端下載、升級客戶端軟件,這在EAD客戶端數目較多的情況下給管理員帶來了操作上的不便。
802.1X認證支持的EAD快速部署功能就可以解決以上問題,它允許未通過認證的802.1X用戶訪問一個指定的IP地址段(稱為Free IP),並可以將用戶發起的HTTP或HTTPS訪問請求重定向到該IP地址段中的一個指定的URL(重定向URL),實現用戶自動下載並安裝EAD客戶端的目的。
· Free IP:未通過認證的802.1X終端用戶可以訪問的IP地址段,該IP地址段中可以配置一個或多個特定服務器,用於提供EAD客戶端的下載升級或者動態地址分配等服務。
· 重定向URL:802.1X終端用戶在認證成功之前,如果使用瀏覽器訪問網絡,則設備會將用戶訪問的URL重定向到已配置的URL(例如,重定向到EAD客戶端下載界麵),這樣隻要用戶打開瀏覽器,就必須進入管理員預設的界麵。
EAD快速部署功能通過製定EAD規則(通常為ACL規則)來給予未通過認證的終端用戶受限製的網絡訪問權限。當大量用戶同時認證時,ACL資源將迅速被占用,如果沒有用戶認證成功,將出現ACL資源不足的情況,會導致一部分新接入的用戶無法認證。
管理員可以通過配置EAD規則的老化時間來控製用戶對ACL資源的占用,當用戶訪問網絡時該定時器開始計時,在定時器超時或者用戶下載客戶端並成功通過認證之後,該用戶所占用的ACL資源被刪除,在老化時間內未進行任何操作的用戶所占用的ACL資源會及時得到釋放。
由於通過配置端口安全特性也可以為用戶提供802.1X認證服務,且還可以提供802.1X和MAC地址認證的擴展和組合應用,因此在需要靈活使用以上兩種認證方式的組網環境下,推薦使用端口安全特性。無特殊組網要求的情況下,無線環境中通常使用端口安全特性。在僅需要802.1X特性來完成接入控製的組網環境下,推薦單獨使用802.1X特性。關於端口安全特性的詳細介紹和具體配置請參見“安全配置指導”中的“端口安全”。
在接口下配置802.1X功能時需要注意:
· 僅支持在二層以太網接口上配置802.1X認證功能,不支持在二層聚合組的成員端口上開啟802.1X認證功能。
· 當端口上配置的802.1X認證的Guest VLAN、Auth-Fail VLAN、Critical VLAN中存在用戶時,不允許切換該端口的鏈路類型。
當用戶認證成功後被授權重定向URL或設備上開啟EAD快速部署功能時,用戶報文進入的VLAN裏必須有三層接口(比如VLAN接口)存在,否則將導致HTTPS重定向失敗。
802.1X配置任務如下:
(1) 開啟802.1X
(2) 配置802.1X認證的基本功能
¡ (可選)配置端口的強製認證域
¡ (可選)配置802.1X認證超時定時器
¡ (可選)配置802.1X重認證功能
¡ (可選)配置802.1X靜默功能
(3) (可選)配置802.1X下發VLAN功能
¡ 配置802.1X Critical Voice VLAN
(4) (可選)配置802.1X接入模板
(5) (可選)配置802.1X相關參數的最大值
¡ 配置MAC地址認證成功用戶進行802.1X認證的最大嚐試次數
(6) (可選)配置802.1X其它功能
設備通過802.1X接入模板統一管理802.1X接入的相關配置。端口安全認證模板下綁定802.1X接入模板後,綁定該端口安全認證模板的接口就可以應用802.1X接入模板的配置完成用戶認證。
· 對於接口視圖下支持但接入模板視圖下不支持的配置,在接口下配置後仍會正常生效。
端口安全認證模板的詳細介紹請參見“安全配置指導”中的“端口安全”。
當端口安全認證模板綁定的802.1X接入模板已經生效,刪除該接入模板會導致在線用戶異常掉線。
一個802.1X接入模板可以被不同端口安全認證模板綁定,但一個端口安全認證模板隻能綁定一個802.1X接入模板,如需綁定其它802.1X接入模板,請先解除原有綁定。
dot1x access-profile name profile-name
僅部分功能支持在接入模板下配置,詳細支持情況請參見本模塊的命令手冊。
port-security authentication-profile name profile-name
dot1x access-profile profile-name
¡
¡ 配置向802.1X Auth-Fail VLAN用戶發送認證成功幀
¡ 配置向802.1X Critical VLAN用戶發送認證成功幀
¡ 配置認證觸發功能
對於不支持主動發送認證觸發報文的客戶端,可配置認證觸發功能,即設備主動向該端口上的客戶端發送認證請求來觸發802.1X認證。
¡ 配置為802.1X用戶添加IP Source Guard動態綁定表項
¡ 配置802.1X向服務器發送的EAP-TLS分片報文最大長度
當設備采用EAP中繼方式對802.1X客戶端進行認證,且認證方法為EAP-TLS時,可配置本功能來減小認證報文的長度。
在配置802.1X之前,需要完成以下任務:
· 配置802.1X用戶所屬的ISP認證域及其使用的AAA方案,即本地認證方案或RADIUS方案。
· 如果需要通過RADIUS服務器進行認證,則應該在RADIUS服務器上配置相應的用戶名和密碼。
· 如果需要本地認證,則應該在設備上手動添加認證的用戶名和密碼。配置本地認證時,用戶使用的服務類型必須設置為lan-access。
隻有同時開啟全局和端口的802.1X後,802.1X的配置才能在端口上生效。
在客戶端發送不攜帶Tag數據流的情況下,若設備的接入端口配置了Voice VLAN功能,則端口的802.1X功能不生效。關於Voice VLAN特性請參見“二層技術-以太網交換配置指導”中的“Voice VLAN”。
(1) 進入係統視圖。
system-view
(2) 開啟全局的802.1X功能。
dot1x
缺省情況下,全局的802.1X處於關閉狀態。
(3) 進入接口視圖。
interface interface-type interface-number
(4) 開啟端口的802.1X功能。
dot1x
缺省情況下,端口的802.1X處於關閉狀態。
設備上的802.1X係統采用的認證方法與設備對於EAP報文的處理機製有關,具體如下:
· 若指定authentication-method為eap,則表示設備采用EAP中繼認證方式。該方式下,設備端對客戶端發送的EAP報文進行中繼處理,並能支持客戶端與RADIUS服務器之間所有類型的EAP認證方法。
· 若指定authentication-method為chap或pap,則表示設備采用EAP終結認證方式,該方式下,設備端對客戶端發送的EAP報文進行本地終結,並能支持與RADIUS服務器之間采用CHAP或PAP類型的認證方法。
· 如果客戶端采用了MD5-Challenge類型的EAP認證,則設備端隻能采用CHAP認證;如果iNode 802.1X客戶端采用了“用戶名+密碼”方式的EAP認證,設備上可選擇使用PAP認證或CHAP認證,從安全性上考慮,通常使用CHAP認證。
· 如果采用EAP中繼認證方式,則設備會把客戶端輸入的內容直接封裝後發給服務器,這種情況下user-name-format命令的設置無效,user-name-format的介紹請參見“安全命令參考”中的“AAA”。
(1) 進入係統視圖。
system-view
(2) 配置802.1X係統的認證方法。
dot1x authentication-method { chap | eap | pap }
缺省情況下,設備啟用EAP終結方式,並采用CHAP認證方法。
通過配置端口的授權狀態,可以控製端口上接入的用戶是否需要經過認證來訪問網絡資源。端口支持以下三種授權狀態:
· 強製授權(authorized-force):表示端口始終處於授權狀態,允許用戶不經認證即可訪問網絡資源。
· 強製非授權(unauthorized-force):表示端口始終處於非授權狀態,不允許用戶進行認證。設備端不為通過該端口接入的客戶端提供認證服務。
· 自動識別(auto):表示端口初始狀態為非授權狀態,僅允許EAPOL報文收發,不允許用戶訪問網絡資源;如果用戶通過認證,則端口切換到授權狀態,允許用戶訪問網絡資源。這也是最常用的一種狀態。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置端口的授權狀態。
dot1x port-control { authorized-force | auto | unauthorized-force }
缺省情況下,端口的授權狀態為auto。
設備支持兩種端口接入控製方式:基於端口控製(portbased)和基於MAC控製(macbased)。
端口存在802.1X在線用戶時,切換接入控製方式會導致在線用戶立刻下線。
建議在端口綁定了端口安全認證模板後,避免再配置dot1x port-method portbased命令,否則可能會出現認證功能異常的情況。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置端口接入控製方式。
dot1x port-method { macbased | portbased }
缺省情況下,端口采用的接入控製方式為macbased。
在端口上指定強製認證域為802.1X接入提供了一種安全控製策略。所有從該端口接入的802.1X用戶將被強製使用指定的認證域來進行認證、授權和計費,從而防止用戶通過惡意假冒其它域賬號從本端口接入網絡。另外,管理員也可以通過配置強製認證域對不同端口接入的用戶指定不同的認證域,從而增加了管理員部署802.1X接入策略的靈活性。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 指定端口上802.1X用戶使用的強製認證域。
dot1x mandatory-domain domain-name
802.1X認證過程中會啟動多個定時器以控製客戶端、設備以及RADIUS服務器之間進行合理、有序的交互。可配置的802.1X認證定時器包括以下兩種:
· 客戶端認證超時定時器:當設備端向客戶端發送了EAP-Request/MD5 Challenge請求報文後,設備端啟動此定時器,若在該定時器設置的時長內,設備端沒有收到客戶端的響應,設備端將重發該報文。
· 認證服務器超時定時器:當設備端向認證服務器發送了RADIUS Access-Request請求報文後,設備端啟動該定時器,若在該定時器設置的時長內,設備端沒有收到認證服務器的響應,則802.1X認證失敗。
一般情況下,無需改變認證超時定時器的值,除非在一些特殊或惡劣的網絡環境下,才需要通過命令來調節。例如,用戶網絡狀況比較差的情況下,可以適當地將客戶端認證超時定時器值調大一些;還可以通過調節認證服務器超時定時器的值來適應不同認證服務器的性能差異。
建議將server-timeout的值設定為小於或等於設備發送RADIUS報文的最大嚐試次數(retry)與RADIUS服務器響應超時時間(timer response-timeout)之積。如果server-timeout的值大於retry與timer response-timeout之積,則可能在server-timeout設定的服務器超時時間到達前,用戶被強製下線。關於發送RADIUS報文的最大嚐試次數、RADIUS服務器響應超時時間的具體配置請參見“安全配置指導”中的“AAA”。
(1) 進入係統視圖。
system-view
(2) 配置客戶端認證超時定時器。
dot1x timer supp-timeout supp-timeout-value
缺省情況下,客戶端認證超時定時器的值為30秒。
(3) 配置認證服務器超時定時器。
dot1x timer server-timeout server-timeout-value
缺省情況下,認證服務器超時定時器的值為100秒。
· 對802.1X用戶進行周期性重認證時,設備將按照如下由高到低的順序為其選擇重認證時間間隔:服務器下發的重認證時間間隔、接口視圖下配置的周期性重認證定時器的值、係統視圖下配置的周期性重認證定時器的值、設備缺省的周期性重認證定時器的值。
· 強製端口上所有802.1X在線用戶進行重認證後,不論服務器是否下發重認證或端口下是否開啟了周期性重認證,強製重認證都會正常執行,端口上的所有在線802.1X用戶會依次進行重認證操作。
· 修改設備上配置的認證域或802.1X係統認證方法都不會影響在線用戶的802.1X重認證,隻對配置之後新上線的用戶生效。
(1) 進入係統視圖。
system-view
(2) 在係統視圖或接口視圖下配置周期性重認證定時器。
¡ 係統視圖下配置周期性重認證定時器。
dot1x timer reauth-period reauth-period-value
缺省情況下,周期性重認證定時器的值為3600秒。
¡ 依次執行以下命令在接口視圖下配置周期性重認證定時器。
interface interface-type interface-number
dot1x timer reauth-period reauth-period-value
quit
缺省情況下,端口上未配置802.1X周期性重認證定時器,使用係統視圖下的周期性重認證定時器的取值。
(3) 進入接口視圖。
interface interface-type interface-number
(4) 開啟周期性重認證功能。
dot1x re-authenticate
缺省情況下,周期性重認證功能處於關閉狀態。
(5) (可選)強製端口上所有802.1X在線用戶進行重認證。
dot1x re-authenticate manual
開啟本功能後,不論服務器是否下發重認證或端口下是否開啟了周期性重認證,強製重認證都會正常執行,端口上的所有在線802.1X用戶會依次進行重認證操作。
(6) (可選)配置重認證服務器不可達時端口上的802.1X用戶保持在線狀態。
dot1x re-authenticate server-unreachable keep-online
缺省情況下,端口上的802.1X在線用戶重認證時,若認證服務器不可達,則會被強製下線。
若配置保持用戶在線,當服務器在短時間內恢複可達,則可以避免用戶頻繁上下線;若處於缺省狀態,當服務器可達性在短時間內不可恢複,可避免用戶在線狀態長時間與實際不符。
當802.1X用戶認證失敗以後,設備需要靜默一段時間(通過命令dot1x timer quiet-period設置)後再重新發起認證,在靜默期間,設備不對802.1X認證失敗的用戶進行802.1X認證處理。
在網絡處在風險位置,容易受攻擊的情況下,可以適當地將靜默定時器值調大一些,反之,可以將其調小一些來提高對用戶認證請求的響應速度。
(1) 進入係統視圖。
system-view
(2) 開啟靜默定時器功能。
dot1x quiet-period
缺省情況下,靜默定時器功能處於關閉狀態。
(3) 配置靜默定時器。
dot1x timer quiet-period quiet-period-value
缺省情況下,靜默定時器的值為60秒。
· 在接入控製方式為MAC-based的端口上生成的Guest VLAN表項會覆蓋已生成的阻塞MAC表項,但如果端口因檢測到非法報文而關閉,則802.1X Guest VLAN功能無法生效。關於阻塞MAC表項和端口的入侵檢測功能的具體介紹請參見“安全配置指導”中的“端口安全”。
· 不同的端口可以指定不同的802.1X Guest VLAN,一個端口最多隻能指定一個802.1X Guest VLAN 。
· 如果用戶端設備發出的是攜帶Tag的數據流,且接入端口上使能了802.1X認證並配置了802.1X Guest VLAN,為保證各種功能的正常使用,請為Voice VLAN、端口的缺省VLAN和802.1X的Guest VLAN分配不同的VLAN ID。
· 為保證802.1X Guest VLAN功能正常使用,請不要與EAD快速部署功能同時配置。
· 端口類型為Hybrid時,請不要將指定的Guest VLAN修改為攜帶Tag的方式。
· Hybrid端口上同時使能Voice VLAN功能和配置802.1X Guest VLAN的情況下,語音流在Voice VLAN中轉發,而非語音流的源MAC地址可能會被加入到802.1X Guest VLAN中。
配置802.1X Guest VLAN之前,需要進行以下配置準備:
· 創建需要配置為Guest VLAN的VLAN。
· 在接入控製方式為MAC-based的端口上,保證端口類型為Hybrid,端口上的MAC VLAN功能處於使能狀態。MAC VLAN功能的具體配置請參見“二層技術-以太網交換配置指導”中的“VLAN”。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置端口的802.1X Guest VLAN。
dot1x guest-vlan guest-vlan-id
缺省情況下,端口上未配置802.1X Guest VLAN。
開啟802.1X認證,且端口的接入控製方式為MAC-based方式時,觸發802.1X認證後端口會立即被加入到802.1X Guest VLAN中。在這種情況下,如果配置了端口延遲加入802.1X Guest VLAN功能,端口會主動向觸發認證的源MAC地址單播發送EAP-Request報文。若在指定的時間內(通過命令dot1x timer tx-period設置)沒有收到客戶端的響應,則重發該報文,直到重發次數達到命令dot1x retry設置的最大次數時,若仍沒有收到客戶端的響應,才會加入到802.1X Guest VLAN中。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置端口延遲加入802.1X Guest VLAN的功能。
dot1x guest-vlan-delay { eapol | new-mac }
缺省情況下,端口延遲加入802.1X Guest VLAN的功能處於關閉狀態。
· 不同的端口可以指定不同的802.1X Auth-Fail VLAN,一個端口最多隻能指定一個802.1X Auth-Fail VLAN。
· 如果用戶端設備發出的是攜帶Tag的數據流,為保證各種功能的正常使用,請為Voice VLAN、端口的缺省VLAN和802.1X的Auth-Fail VLAN分配不同的VLAN ID。
· 在接入控製方式為MAC-based的端口上同時配置了802.1X Auth-Fail VLAN與MAC地址認證Guest VLAN時,若用戶首先進行MAC地址認證且失敗,則加入MAC地址認證的Guest VLAN中,之後若該用戶再進行802.1X認證且失敗,則會離開MAC地址認證Guest VLAN而加入802.1X Auth-Fail VLAN中;若用戶首先進行802.1X認證且失敗,之後除非成功通過MAC地址認證或者802.1X認證,否則會一直位於802.1X Auth-Fail VLAN中。
· 在接入控製方式為MAC-based的端口上生成的Auth-Fail VLAN表項會覆蓋已生成的阻塞MAC表項,但如果端口因檢測到非法報文而關閉,則802.1X的Auth-Fail VLAN功能無法生效。關於端口入侵檢測關閉功能的具體介紹請參考“安全配置指導”中的“端口安全”。
· 端口類型為Hybrid時,請不要將指定的Auth-Fail VLAN修改為攜帶Tag的方式。
配置802.1X Auth-Fail VLAN之前,需要進行以下配置準備:
· 創建需要配置為Auth-Fail VLAN的VLAN。
· 在接入控製方式為MAC-based的端口上,保證端口類型為Hybrid,端口上的MAC VLAN功能處於使能狀態。MAC VLAN功能的具體配置請參見“二層技術-以太網交換配置指導”中的“VLAN”。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置端口的802.1X Auth-Fail VLAN。
dot1x auth-fail vlan authfail-vlan-id
缺省情況下,端口沒有配置802.1X Auth-Fail VLAN。
· 不同的端口可以指定不同的802.1X Critical VLAN,一個端口最多隻能指定一個802.1X Critical VLAN。
· 如果用戶端設備發出的是攜帶Tag的數據流,為保證各種功能的正常使用,請為Voice VLAN、端口的缺省VLAN和802.1X的Critical VLAN分配不同的VLAN ID。
· 在接入控製方式為Port-based的端口上,若端口已經處於802.1X Auth-Fail VLAN,則當所有認證服務器都不可達時,端口並不會離開當前的VLAN而加入802.1X Critical VLAN。在接入控製方式為MAC-based的端口上,當處於Auth-Fail VLAN的用戶再次發起認證時,如果認證服務器不可達,則該用戶仍然留在該Auth-Fail VLAN中,不會離開當前的VLAN而加入802.1X Critical VLAN。
· 若端口已經處於802.1X Guest VLAN,則當所有認證服務器都不可達時,端口會離開當前的VLAN並加入802.1X Critical VLAN。
· 端口類型為Hybrid時,請不要將指定的Critical VLAN修改為攜帶Tag的方式。
配置802.1X Critical VLAN之前,需要進行以下配置準備:
· 創建需要配置為Critical VLAN的VLAN。
· 在接入控製方式為MAC-based的端口上,保證端口類型為Hybrid,端口上的MAC VLAN功能處於使能狀態。MAC VLAN功能的具體配置請參見“二層技術-以太網交換配置指導”中的“VLAN”。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置端口的802.1X Critical VLAN。
dot1x critical vlan critical-vlan-id
缺省情況下,端口沒有配置802.1X Critical VLAN。
· 若端口已經處於802.1X Auth-Fail VLAN,則當所有認證服務器都不可達時,端口並不會離開當前的VLAN而加入802.1X Critical Voice VLAN。
· 若端口已經處於802.1X Guest VLAN,則當所有認證服務器都不可達時,端口會離開當前的VLAN並加入802.1X Critical Voice VLAN。
配置802.1X Critical Voice VLAN之前,需要進行以下配置準備:
· 全局和端口的LLDP(Link Layer Discovery Protocol,鏈路層發現協議)已經開啟,設備通過LLDP來判斷用戶是否為語音用戶。有關LLDP功能的詳細介紹請參考“二層技術-以太網交換配置指導”中的“LLDP”。
· 端口的語音VLAN功能已經開啟。有關語音VLAN的詳細介紹請參考“二層技術-以太網交換配置指導”中的“VLAN”。
· 在該端口上配置了802.1X Critical VLAN。若端口上的語音用戶在認證時所有認證服務器都不可達,且端口暫未將其識別為語音用戶,則可以將其先加入Critical VLAN。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置端口的802.1X Critical Voice VLAN。
dot1x critical-voice-vlan
缺省情況下,端口802.1X Critical Voice VLAN功能處於關閉狀態。
設備通過802.1X接入模板統一管理802.1X接入的相關配置。端口安全認證模板下綁定802.1X接入模板後,綁定該端口安全認證模板的接口就可以應用802.1X接入模板的配置完成用戶認證。
接口綁定端口安全認證模板後:
· 對於接口視圖和802.1X接入模板視圖下均支持配置的功能(命令行形式可能存在差異),無論端口安全認證模板是否已綁定802.1X接入模板,接口視圖下的此類功能配置都會被立即刪除。如需使用上述功能,請在端口安全認證模板綁定的802.1X接入模板視圖下配置。
· 對於接口視圖下支持但接入模板視圖下不支持的配置,在接口下配置後仍會正常生效。
端口安全認證模板的詳細介紹請參見“安全配置指導”中的“端口安全”。
當端口安全認證模板綁定的802.1X接入模板已經生效,刪除該接入模板會導致在線用戶異常掉線。
一個802.1X接入模板可以被不同端口安全認證模板綁定,但一個端口安全認證模板隻能綁定一個802.1X接入模板,如需綁定其它802.1X接入模板,請先解除原有綁定。
(1) 進入係統視圖。
system-view
(2) 創建802.1X接入模板並進入接入模板視圖。
dot1x access-profile name profile-name
缺省情況下,不存在802.1X接入模板。
(3) 配置802.1X相關功能。
僅部分功能支持在接入模板下配置,詳細支持情況請參見本模塊的命令手冊。
(4) 進入端口安全認證模板視圖
port-security authentication-profile name profile-name
(5) 配置端口安全認證模板綁定802.1X接入模板。
dot1x access-profile profile-name
缺省情況下,端口安全認證模板下未綁定802.1X接入模板。
非認證成功VLAN的用戶是指,在端口上接入但由於未認證成功而加入到Auth-Fail VLAN、Critical VLAN或Guest VLAN的用戶。
開啟端口的非認證成功VLAN中802.1X用戶的老化功能後,如果到達老化時間,端口或用戶會離開對應的VLAN:
· 接入控製方式為Port-based的端口上開啟本功能後,當端口加入到Auth-Fail VLAN或Critical VLAN時,設備啟動用戶老化定時器,到達老化時間(通過dot1x timer user-aging命令配置)後,端口離開對應的VLAN。
· 接入控製方式為MAC-based的端口上開啟本功能後,當用戶加入到Auth-Fail VLAN、Critical VLAN或Guest VLAN時,設備啟動用戶老化定時器,到達老化時間(通過dot1x timer user-aging命令配置)後,用戶離開對應的VLAN。
當端口上非認證成功VLAN中的用戶需要遷移到其它端口接入時,請在當前接入端口開啟本功能,將當前接入端口上的用戶MAC地址老化刪除,否則用戶無法在其它端口正常接入。
當端口上非認證成功VLAN的用戶不需要遷移到其它端口接入時,建議在當前接入端口上關閉本功能,以免用戶老化退出後無法訪問對應VLAN中的資源。
(1) 進入係統視圖。
system-view
(2) 配置非認證成功VLAN的用戶老化定時器。
dot1x timer user-aging { auth-fail-vlan | critical-vlan | guest-vlan } aging-time-value
缺省情況下,非認證成功的VLAN用戶老化定時器的值為1000秒。
(3) 進入接口視圖。
interface interface-type interface-number
(4) 開啟端口的非認證成功VLAN的用戶老化功能。
dot1x unauthenticated-user aging enable
缺省情況下,端口的非認證成功VLAN的用戶老化功能處於開啟狀態。
某些通過DHCP方式獲取IP地址的802.1X客戶端進行認證時,在收到EAP-Failure報文後,不會發送DHCP請求申請IP地址,隻有在收到EAP-Success報文後才會發送DHCP請求申請IP地址。缺省情況下,當802.1X用戶因認證失敗而被加入Auth-Fail VLAN後,設備會向客戶端發送一個EAP-Failure報文,導致上述客戶端獲取不到IP地址,無法訪問Auth-Fail VLAN內的資源。為避免這種情況發生,設備支持通過命令行配置當802.1X用戶被加入到Auth-Fail VLAN後,向客戶端發送EAP-Success報文的功能。此類客戶端收到EAP-Success報文後,認為802.1X用戶上線成功,會向設備發送DHCP請求申請IP地址。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置當802.1X用戶被加入到Auth-Fail VLAN後,設備端向客戶端發送EAP-Success報文。
dot1x auth-fail eapol
缺省情況下,當802.1X用戶加入到Auth-Fail VLAN後,設備端向客戶端發送EAP-Failure報文。
802.1X用戶因認證服務器不可達而被加入Critical VLAN之後,設備端會向客戶端發送EAP-Failure報文。對於某些802.1X客戶端,在收到EAP-Failure報文後,不會再響應設備端後繼發送的EAP-Request/Identity報文,從而導致該類用戶的802.1X重認證無法成功。為解決此問題,設備支持通過命令行配置當802.1X用戶被加入到Critical VLAN後,向客戶端發送EAP-Success報文。客戶端收到該報文後認為802.1X用戶上線成功,此後可以繼續響應設備端發送的EAP-Request/Identity報文進行802.1X重認證。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置當802.1X用戶被加入到Critical VLAN後,設備端向客戶端發送EAP-Success報文。
dot1x critical eapol
缺省情況下,當802.1X用戶加入到Critical VLAN後,設備端向客戶端發送EAP-Failure報文。
當使用iMC RADIUS服務器對用戶進行802.1X認證時,設備支持在線用戶信息同步功能。開啟本功能後,當通過RADIUS服務器探測功能探測到服務器由不可達變為可達後,設備便主動對端口上的所有在線用戶依次向服務器發起認證請求,等到這些用戶均通過認證後,達到服務器上的在線用戶信息與該端口上的在線用戶信息一致的目的。RADIUS服務器探測功能的配置步驟請參見“安全配置指導”中的“AAA”。
在設備向RADIUS服務器同步802.1X在線用戶過程中,特殊情況處理如下:
· 如果在RADIUS服務器可達情況下,某用戶認證失敗,則設備強製該用戶下線。
· 如果在設備發起下一次RADIUS服務器探測前,RADIUS服務器變為不可達而導致用戶認證失敗,則用戶仍然保持在線。
· 如果有新用戶發起認證,則該認證用戶的信息不會向RADIUS服務器進行同步。
· 如果設備配置了周期性重認證功能,當重認證定時器超時時,設備不會對在線用戶發起重認證,而是對用戶進行同步操作。
802.1X認證的在線用戶信息同步功能隻能與iMC服務器配合使用。
當RADIUS服務器從不可達變為可達時,處於Critical VLAN中的用戶也會再次發起認證,在設備上802.1X在線用戶較多的情況下,如果配置了本功能,會因為同時進行認證的用戶數量較大,而導致用戶的上線時間變長。
本功能需要與RADIUS服務器探測功能配合使用,且RADIUS服務器探測周期必須小於RADIUS服務器恢複激活狀態時長(通過timer quiet (RADIUS scheme view)命令),以避免服務器恢複激活狀態定時器超時後將服務器的狀態變為active而產生誤報。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 開啟802.1X認證的在線用戶信息同步功能。
dot1x server-recovery online-user-sync
缺省情況下,802.1X認證的在線用戶信息同步功能處於關閉狀態。
對於不支持主動發送EAPOL-Start報文來發起802.1X認證的客戶端,設備支持配置認證觸發功能,即設備主動向該端口上的客戶端發送認證請求來觸發802.1X認證。設備提供了以下兩種類型的認證觸發功能:
· 組播觸發功能:啟用了該功能的端口會定期(間隔時間通過命令dot1x timer tx-period設置)向客戶端組播發送EAP-Request/Identity報文來檢測客戶端並觸發認證。
· 單播觸發功能:當啟用了該功能的端口收到源MAC地址未知的報文時,會主動向該MAC地址單播發送EAP-Request/Identity報文,若端口在指定的時間內(通過命令dot1x timer tx-period設置)沒有收到客戶端的響應,則重發該報文(重發次數通過命令dot1x retry設置)。
· 若端口連接的802.1X客戶端不能主動發起認證,則需要開啟組播觸發功能。
· 若端口連接的802.1X客戶端不能主動發起認證,且僅部分802.1X客戶端需要進行認證,為避免不希望認證或已認證的802.1X客戶端收到多餘的認證觸發報文,則需要開啟單播觸發功能。
· 若接口下配置了允許大量VLAN通過,由於組播報文會占用大量通信帶寬,因此建議此場景下關閉組播觸發功能。
· 建議組播觸發功能和單播觸發功能不要同時開啟,以免認證報文重複發送。
· 單播觸發功能建議隻在端口接入控製方式為MAC-based時配置;若在端口接入控製方式為Port-based時配置單播觸發功能,可能會導致用戶正常無法上線。
(1) 進入係統視圖。
system-view
(2) (可選)配置用戶名請求超時定時器。
dot1x timer tx-period tx-period-value
缺省情況下,用戶名請求超時定時器的值為30秒。
(3) 進入接口視圖。
interface interface-type interface-number
(4) 開啟認證觸發功能。
dot1x { multicast-trigger | unicast-trigger }
缺省情況下,組播觸發功能處於開啟狀態,單播觸發功能處於關閉狀態。
由於係統資源有限,如果當前端口上接入的用戶過多,接入用戶之間會發生資源的爭用。因此限製接入用戶數可以使屬於當前端口的用戶獲得可靠的性能保障。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置端口同時接入用戶數的最大值。
dot1x max-user [ preauth-domain | auth-fail-domain ] max-number
缺省情況下,端口同時接入用戶數的最大值為4294967295。
802.1X用戶接入率=當前端口上802.1X接入用戶數/802.1X最大接入用戶數(通過dot1x max-user命令配置)。
通過snmp-agent trap enable dot1x命令開啟端口的802.1X用戶接入率告警功能並設置上限告警閾值和恢複告警閾值後:
· 如果當前端口上802.1X用戶接入率首次達到上限閾值,或者從小於等於恢複閾值上升到上限閾值,則設備將輸出上限告警信息。
· 如果當前端口上802.1X用戶接入率從大於等於上限閾值下降到恢複閾值,則設備將輸出恢複提示信息。
當開啟告警功能前,端口下802.1X用戶接入率已達到或超過上限閾值,開啟告警功能後,新上線一個用戶或下線一個用戶後仍處於上限閾值時,才會發觸發上限告警。
(1) 進入係統視圖。
system-view
(2) 配置端口802.1X用戶接入率的告警門限閾值。
dot1x max-user-alarm trigger-threshold trigger-threshold clear-threshold clear-threshold
缺省情況下,端口802.1X用戶接入率的上限告警閾值為100%,恢複告警閾值為50%。
如果設備向用戶發送認證請求報文後,在規定的時間裏(可通過命令dot1x timer tx-period或者dot1x timer supp-timeout設定)沒有收到用戶的響應,則設備將向用戶重發該認證請求報文,若設備累計發送認證請求報文的次數達到配置的最大值後,仍然沒有得到用戶響應,則停止發送認證請求。
(1) 進入係統視圖。
system-view
(2) 配置設備向接入用戶發送認證請求報文的最大次數。
dot1x retry retries
缺省情況下,設備最多可向接入用戶發送2次認證請求報文。
802.1X認證過程中,當接入設備收到Radius服務器發送的認證通過報文(RADIUS Access-Accept)後,會向客戶端發送認證成功報文(EAP-Success),允許用戶通過相應端口訪問網絡。客戶端收到認證成功報文後,立即發起DHCP請求申請IP地址,但如果此時設備還未收到RADIUS服務器下發的授權信息,則客戶端將直接從現有訪問權限內的網段獲取到IP地址。當RADIUS服務器下發授權後,若現有權限網段與授權內的網段不一致,則客戶端無法上線。
配置本功能後,設備將在RADIUS服務器授權成功後再向客戶端發送認證成功報文,保證客戶端最終獲取的是授權網段內的IP地址。
配置本功能後,在RADIUS服務器或設備因處理的認證流程較多導致授權不及時時,客戶端將會因為認證回複超時而認證失敗,因此請根據實際應用場景中設備上業務流程的處理情況選擇是否配置本功能。
(1) 進入係統視圖。
system-view
(2) 配置授權成功後再向客戶端發送認證成功報文。
dot1x eap-success post-authorization
缺省情況下,接入設備在用戶認證成功後立即向客戶端發送認證成功報文。
在用戶的802.1X認證過程中,如果設備收到了該用戶重複的EAPOL-Start報文,為了避免服務器無法響應此類報文而導致用戶認證失敗,建議在用戶接入的端口上直接對其丟棄。
本特性僅在服務器無法響應冗餘EAPOL-Start報文的環境中推薦配置,其它情況下建議保持缺省情況。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置丟棄重複的802.1X EAPOL-Start報文。
dot1x duplicate-eapol-start discard
缺省情況下,設備不丟棄收到的合法EAPOL-Start報文。
開啟設備的在線用戶握手功能後,設備會定期(時間間隔通過命令dot1x timer handshake-period設置)向通過802.1X認證的在線用戶發送握手請求報文(EAP-Request/Identity),以定期檢測用戶的在線情況。如果設備連續多次(通過命令dot1x retry設置)沒有收到客戶端的應答報文(EAP-Response/Identity),則會將用戶置為下線狀態。
有些802.1X客戶端如果沒有收到設備回應的在線握手成功報文(EAP-Success),就會自動下線。為了避免這種情況發生,需要在端口上開啟發送在線握手成功報文功能。
在線用戶握手功能處於開啟狀態的前提下,還可以通過開啟在線用戶握手安全功能,來防止在線的802.1X認證用戶使用非法的客戶端與設備進行握手報文的交互,而逃過代理檢測、雙網卡檢測等iNode客戶端的安全檢查功能。開啟了在線用戶握手安全功能的設備通過檢驗客戶端上傳的握手報文中攜帶的驗證信息,來確認用戶是否使用iNode客戶端進行握手報文的交互。如果握手檢驗不通過,則會將用戶置為下線狀態。
· 部分802.1X客戶端不支持與設備進行握手報文的交互,因此建議在這種情況下,關閉設備的在線用戶握手功能,避免該類型的在線用戶因沒有回應握手報文而被強製下線。
· 在線用戶握手功能處於開啟狀態時,安全握手功能才會生效。
· 在線用戶握手安全功能僅能在iNode客戶端和iMC服務器配合使用的組網環境中生效。
· 隻有當802.1X客戶端需要收到在線握手成功報文時,才需要開啟端口發送在線握手成功報文功能。
· 當設備上在線用戶較多時,需要適當增加握手時間間隔(通過命令dot1x timer handshake-period設置)和向接入用戶發送認證請求報文的最大次數(通過命令dot1x retry設置),以免影響在線用戶的握手和新用戶的認證。
(1) 進入係統視圖。
system-view
(2) (可選)配置握手定時器。
dot1x timer handshake-period handshake-period-value
缺省情況下,握手定時器的值為15秒。
(3) 進入接口視圖。
interface interface-type interface-number
(4) 開啟在線用戶握手功能。
dot1x handshake
缺省情況下,在線用戶握手功能處於開啟狀態。
(5) (可選)開啟在線用戶握手安全功能。
dot1x handshake secure
缺省情況下,在線用戶握手安全功能處於關閉狀態。
(6) (可選)開啟端口發送在線握手成功報文功能。
dot1x handshake reply enable
缺省情況下,端口不發送在線握手成功報文。
開啟802.1X認證報文探測功能後,設備會每隔一個802.1X下線檢測定時器間隔向端口的802.1X認證在線用戶發送探測報文,在發送次數達到配置的最大值時,若下線檢測定時器間隔內仍未收到該802.1X認證用戶的回應報文,則認為報文探測超時將該用戶下線,同時通知RADIUS服務器停止對此用戶進行計費。
802.1X認證報文探測功能與802.1X認證下線檢測功能同時開啟時,如果802.1X認證下線檢測結果為用戶在線,則不會再向其發送探測報文;如果802.1X認證下線檢測結果為用戶下線,則不會立即下線用戶,設備仍會向客戶端發送探測報文,且會等到802.1X認證報文探測超時後再下線用戶。
802.1X認證IPv4用戶的探測報文是ARP請求報文,802.1X認證IPv6用戶的探測報文是NS報文。
報文探測過程秉持“先統計當前探測次數再判斷”的原則,探測次數隻會在判斷“未收到用戶回應”後減1,探測次數為0後停止探測,從用戶發送最後一個報文到下線總時長=(retries+1)T+X,如圖2-1所示,以探測最大次數配置為2為例。
本功能對正式用戶(前域/認證域/逃生域/失敗域用戶)以及操作用戶(Guest VLAN、Auth-Fail VLAN、Critical VLAN用戶)均生效。
開啟本功能後,當802.1X在線用戶的IP地址變化時,如果設備上未使能ARP Snooping和ND Snooping功能,則設備感知不到用戶IP地址變化,依舊會向原IP發送探測報文,最終導致報文探測超時而誤下線用戶。因此開啟本功能時,需要在設備上同時使能ARP Snooping和ND Snooping功能,確保設備能感知到用戶IP地址的變化情況。
(1) 進入係統視圖。
system-view
(2) 配置下線檢測定時器。
dot1x timer offline-detect offline-detect-value
缺省情況下,下線檢測定時器的值為300秒。
(3) 進入接口視圖。
interface interface-type interface-number
(4) 開啟802.1X認證報文探測功能。
dot1x packet-detect enable
缺省情況下,802.1X認證報文探測功能處於關閉狀態。
(5) 配置802.1X認證報文探測的最大次數。
dot1x packet-detect retry retries
缺省情況下,802.1X認證報文探測的最大次數為2。
缺省情況下,當ISP域下所有RADIUS認證服務器均不可達時,如果此時設備上同時開啟了802.1X認證下線檢測功能,若設備在一個下線檢測定時器間隔內未收到接口下某802.1X在線用戶的報文,則將切斷與該用戶的連接,導致該802.1X在線用戶下線。
當RADIUS認證服務器可達時,用戶需要使用802.1X下線檢測功能,同時又希望RADIUS認證服務器均不可達時,能夠保持802.1X用戶在線狀態,可在設備上開啟本功能。
配置本功能後,當RADIUS認證服務器不可達時,設備會自動關閉接口上的802.1X下線檢測功能,使得802.1X用戶保持在線狀態。
本功能隻適用於將RADIUS作為認證方法且不配置local/none作為備選認證方法的應用場景,否則可能導致用戶通過備選認證方法上線後下線檢測功能被自動關閉。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 開啟RADIUS認證服務器不可達時,802.1X在線用戶逃生功能。
dot1x auth-server-unavailable escape
缺省情況下,RADIUS認證服務器不可達時,802.1X在線用戶逃生功能處於關閉狀態。
每個接入用戶都屬於一個ISP域,該域是由用戶登錄時提供的用戶名決定的,若用戶名中攜帶域名,則設備使用該域中的AAA配置對用戶進行認證、授權和計費,否則使用係統中的缺省域;若設備指定了802.1X的強製認證域,則無論用戶名中是否攜帶域名,設備均使用指定的強製認證域。因此,設備能夠準確解析用戶名中的純用戶名和域名對於為用戶提供認證服務非常重要。由於不同的802.1X客戶端所支持的用戶名域名分隔符不同,為了更好地管理和控製不同用戶名格式的802.1X用戶接入,需要在設備上指定802.1X可支持的域名分隔符。
目前,802.1X支持的域名分隔符包括@、\、.、和/,對應的用戶名格式分別為username@domain-name, domain-name\username,username.domain-name和username/domain-name,其中username為純用戶名、domain-name為域名。如果用戶名中包含有多個域名分隔符字符,則設備僅將最後一個出現的域名分隔符識別為實際使用的域名分隔符,例如,用戶輸入的用戶名為123/22\@abc,設備上指定802.1X支持的域名分隔符為/、\,則識別出的純用戶名為@abc,域名為123/22。
· 如果用戶輸入的用戶名中不包含任何802.1X可支持的域名分隔符,則設備會認為該用戶名並未攜帶域名,則使用係統中的缺省域對該用戶進行認證。
· 若設備上指定發送給認證服務器的用戶名攜帶域名(user-name-format with-domain),則發送給認證服務器的用戶名包括三個部分:識別出的純用戶名、域名分隔符@、最終使用的認證域名。例如,用戶輸入的用戶名為121.123/22\@abc,指定802.1X支持的域名分隔符為/、\、.,最終使用的認證域為xyz,則發送給認證服務器的用戶名為@abc@xyz。user-name-format命令的具體介紹請參見“安全命令參考”中的“AAA”。
· 為保證用戶信息可在認證服務器上被準確匹配到,設備上指定的802.1X支持的域名分隔符必須與認證服務器支持的域名分隔符保持一致,否則可能會因為服務器匹配用戶失敗而導致用戶認證失敗。
(1) 進入係統視圖。
system-view
(2) 指定802.1X支持的域名分隔符。
dot1x domain-delimiter string
缺省情況下,僅支持域名分隔符@。
Hybrid端口開啟802.1X認證,若該端口上通過port hybrid vlan命令配置了轉發缺省VLAN報文攜帶VLAN Tag,則端口發送的缺省VLAN內的802.1X協議報文默認攜帶VLAN Tag。這種情況下,當終端發送的是不帶VLAN Tag的報文進行802.1X認證時,由於接收的是帶Tag的報文,會導致802.1X認證失敗。為了解決這個問題,設備支持配置端口發送802.1X協議報文時不帶VLAN Tag的功能。
配置端口發送802.1X協議報文不攜帶VLAN Tag之前,需要將開啟802.1X認證端口的鏈路類型配置為Hybrid。具體配置請參見“二層技術-以太網交換配置指導”中的“VLAN”。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置端口發送802.1X協議報文不攜帶VLAN Tag。
dot1x eapol untag
缺省情況下,端口發送802.1X協議報文攜帶VLAN Tag。
除非Hybrid端口上配置了轉發缺省VLAN報文攜帶VLAN Tag,而終端發送的是不帶VLAN Tag的報文進行802.1X認證,其它場景請不要開啟本功能,否則端口發送的所有802.1X報文都將去除VLAN Tag,可能導致正常用戶無法通過802.1X認證。
當端口上開啟了MAC地址認證和802.1X認證的情況下,若已經通過MAC地址認證的用戶向設備發送了EAP報文請求進行802.1X認證,缺省情況下,設備允許其進行802.1X認證。若該用戶通過了802.1X認證,設備將強製此MAC地址認證用戶下線,以802.1X用戶的身份上線;若該用戶未通過802.1X認證,則後續會進行多次802.1X認證嚐試。若並不希望此類用戶多次進行802.1X認證嚐試,則可以通過本命令限製MAC地址認證成功用戶進行802.1X認證的最大嚐試次數。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置MAC地址認證成功用戶進行802.1X認證的最大次數。
dot1x after-mac-auth max-attempt max-attempts
缺省情況下,不限製MAC地址認證成功的用戶進行802.1X認證的最大次數。
基於802.1X的IP Source Guard功能,需要802.1X客戶端支持上傳IP地址,設備會根據802.1X功能獲得的用戶IP地址和MAC地址等信息動態生成IP Source Guard綁定表項來過濾端口收到的IPv4報文。有關IP Source Guard的詳細介紹,請參考“安全配置指導”中的“IP Source Guard”。
為了防止802.1X用戶私自修改IP地址,設備支持為配置802.1X用戶IP地址凍結功能。開啟該功能後,設備首次獲取並保存了802.1X上線用戶的IP地址之後,不會隨著該用戶IP地址的變化而更新IP Source Guard動態綁定表中用戶的IP地址。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 開啟802.1X用戶IP地址凍結功能。
dot1x user-ip freeze
缺省情況下,802.1X用戶IP地址凍結功能處於關閉狀態。
缺省情況下,802.1X用戶認證成功後,如果用戶信息裏攜帶IP地址,設備會為802.1X用戶添加IP Source Guard的IPv4/IPv6動態綁定表項。
某些組網環境中,為提高安全性,要求隻允許用戶使用DHCP方式動態分配的IP地址的802.1X用戶訪問網絡,而不允許使用靜態IP地址的802.1X用戶訪問網絡。為實現這一目的,開啟IP Source Guard功能,同時關閉端口為802.1X用戶添加IP Source Guard動態綁定表項功能,使設備不對認證成功的802.1X用戶添加IP Source Guard的IPv4/IPv6動態綁定表項。與此同時,設備上需要配置DHCP Snooping功能,由IP Source Guard為通過DHCP方式動態獲取IP地址的用戶添加DHCP Snooping的綁定表項,這樣動態獲取IP地址的802.1X用戶就可以正常訪問網絡。
關於IP Source Guard的相關介紹請參見“安全配置指導”中的“IP Source Guard”。
為802.1X用戶添加IP Source Guard的IPv4/IPv6動態綁定表項功能由關閉狀態改為開啟狀態後,設備不會為已在線的802.1X用戶添加動態綁定表項,僅會為後續新上線的802.1X用戶添加動態綁定表項。如果已添加動態綁定表項的802.1X用戶IP地址發生了變化,設備會為該用戶更新動態綁定表項。
為802.1X用戶添加IP Source Guard的IPv4/IPv6動態綁定表項功能由開啟狀態改為關閉狀態後,設備對後續新上線的802.1X用戶不再添加動態綁定表項,但不會為已在線的802.1X用戶刪除動態綁定表項。如果已添加動態綁定表項的802.1X用戶IP地址發生了變化,設備會刪除該用戶對應的動態綁定表項。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 開啟為802.1X認證成功用戶添加IP Source Guard的IPv4/IPv6動態綁定表項功能。
dot1x { ip-verify-source | ipv6-verify-source } enable
缺省情況下,為802.1X認證成功用戶添加IP Source Guard的IPv4/IPv6動態綁定表項功能處於開啟狀態。
開啟802.1X認證的MAC地址綁定功能後,設備會將通過802.1X認證上線用戶的MAC地址與用戶接入端口綁定,自動生成802.1X認證用戶的MAC地址與接入端口的綁定表項。同時,設備也支持通過命令行手工配置802.1X認證的MAC地址綁定表項。這兩種方式產生的802.1X認證的MAC地址綁定表項都不會自動老化。因此,當這些MAC地址被綁定的用戶在其它開啟802.1X認證的MAC地址綁定功能的端口上進行802.1X認證時,將不能通過認證,實現了802.1X用戶通過設備的指定端口連接網絡,不能隨意更換接入端口的需求。
· 802.1X認證的MAC地址綁定功能僅在接入控製方式為MAC-based的端口上生效。
· 802.1X認證的MAC地址綁定表項不會自動老化,即使該用戶下線後或設備保存配置重啟後也不會刪除此綁定表項。可以通過undo dot1x mac-binding命令手工刪除表項。用戶在線時,不允許刪除此表項。
· 802.1X認證的MAC地址綁定功能受端口允許同時接入802.1X用戶數的最大值(通過dot1x max-user命令配置)影響。當綁定表項數等於端口允許同時接入802.1X用戶最大用戶數時, MAC地址綁定表項之外的用戶均會認證失敗。例如,如果開啟了802.1X認證的MAC地址綁定功能,並且配置了端口允許同時接入802.1X用戶數的最大值為1,此時隻能有一個用戶通過802.1X認證上線,並且此用戶下線後其MAC地址綁定表項不會老化,這種情況下該端口上其它用戶進行認證會提示認證失敗。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 開啟802.1X認證的MAC地址綁定功能。
dot1x mac-binding enable
缺省情況下,802.1X認證的MAC地址綁定功能處於關閉狀態。
(4) (可選)手工配置802.1X認證MAC地址綁定表項。
dot1x mac-binding mac-address
缺省情況下,端口上不存在802.1X認證的MAC地址綁定表項。
· EAD快速部署輔助功能和端口安全功能同時開啟時,EAD快速部署輔助功能對端口安全模式配置為autoLearn的接口不生效。
· 為使EAD快速部署功能生效,必須保證指定端口的授權模式為auto。
· MAC地址認證與Free IP配置互斥。
· 端口安全功能與Free IP配置互斥。
· 開啟EAD快速部署輔助功能可能導致802.1X Auth-Fail VLAN、Critical VLAN功能無法正常使用,此時可以通過配置dot1x ead-assistant permit authentication-escape命令,使802.1X用戶能夠正常訪問Auth-Fail VLAN、Critical VLAN。
· 當端口的接入控製方式為portbased時,EAD逃生功能(執行dot1x ead-assistant permit authentication-escape命令)不生效。
· 在同時配置了Free IP與Auth-Fail VLAN功能的情況下,請保證Free IP網段為Auth-Fail VLAN可允許訪問的網絡資源。這種情況下,用戶隻能訪問Free IP,不能訪問其它資源。
· 在同時配置了EAD快速部署功能和MAC地址認證功能的情況下,需要注意以下情況:
¡ 同時開啟EAD快速部署輔助功能和MAC地址認證功能時,MAC地址認證用戶認證失敗後,該用戶的MAC地址不會加入靜默MAC。若服務器上沒有相關的用戶信息,MAC地址認證用戶認證失敗後,需要等EAD表項老化之後,才能再次觸發認證。
¡ 開啟EAD快速部署輔助功能與MAC地址認證的Guest VLAN或Critical VLAN功能不建議同時配置,否則可能導致MAC地址認證的Guest VLAN或Critical VLAN功能無法正常使用。
¡ 同時開啟EAD快速部署輔助功能和MAC地址認證功能時,不建議同時配置Web認證或IP Source Guard功能,否則可能導致Web認證或IP Source Guard功能無法正常使用。
¡ 開啟EAD快速部署輔助功能後,對於在使能EAD快速部署輔助功能之前就加入靜默MAC的用戶,需要等靜默MAC老化後才能觸發EAD快速部署功能。
· 重定向URL必須處於Free IP網段內,否則無法實現重定向。
· 端口的接入控製方式為portbased時,如果同時配置EAD快速部署功能和802.1X單播觸發功能,則802.1X單播觸發功能不生效。
(1) 進入係統視圖。
system-view
(2) 開啟EAD快速部署輔助功能。
dot1x ead-assistant enable
缺省情況下,EAD快速部署輔助功能處於關閉狀態。
(3) 配置Free IP。
dot1x ead-assistant free-ip ip-address { mask-length | mask-address }
可通過重複執行此命令來配置多個Free IP。
(4) (可選)配置用戶HTTP或HTTPS訪問的重定向URL。
dot1x ead-assistant url url-string [ secondary ] [ track track-entry-number ]
缺省情況下,未配置802.1X用戶HTTP或HTTPS訪問的重定向URL。
設備對HTTPS報文進行重定向的內部偵聽端口號缺省為6654。如果需要修改該端口號,具體配置請參見“三層技術-IP業務配置指導”中的“HTTP重定向”。
(5) (可選)配置EAD規則老化時間。
dot1x timer ead-timeout ead-timeout-value
缺省情況下,EAD規則老化時間為30分鍾。
在接入用戶數量較多時,可以適當縮短EAD規則老化時間,以提高ACL的使用效率。
(6) (可選)配置當開啟EAD快速部署功能後,802.1X用戶能夠正常使用Auth-Fail VLAN或Critical VLAN功能。
dot1x ead-assistant permit authentication-escape
缺省情況下,開啟EAD快速部署功能後,802.1X Auth-Fail VLAN或Critical VLAN功能無法正常使用。
如果設備發送給RADIUS服務器的認證報文長度超過服務器能處理的最大長度,會因服務器無法處理報文而導致802.1X認證失敗。
當設備采用EAP中繼方式對802.1X客戶端進行認證,且認證方法為EAP-TLS時,會將EAP-TLS報文封裝在EAP-Message中,並將EAP-Message作為RADIUS屬性攜帶在RADIUS報文中發給RADIUS服務器。此種情況下,為避免RADIUS報文長度超過服務器所能處理的最大長度,可以通過配置本功能將EAP-TLS報文進行分片,並通過設置EAP-TLS分片報文的最大長度來改變單個RADIUS報文的長度。
配置本功能後,當設備發起認證時,會將攜帶EAP-TLS分片報文的RADIUS報文依次發送給服務器,服務器收到所有RADIUS報文後,會將這些報文中的認證信息拚接成一個完整的認證信息。
例如,當RADIUS服務器能處理的報文最大長度為1200字節的情況下,如果設備的RADIUS報文其它屬性以及固定字段總長度為800字節,則需要設置EAP-TLS分片報文的最大長度為小於400字節,這樣能保證RADIUS報文總長度小於1200字節。
隻有配置802.1X係統的認證方法為EAP中繼時,通過本功能配置的EAP-TLS分片報文最大長度才有效。關於802.1X係統的認證方法的詳細配置請參見“2.5 配置802.1X係統的認證方法”。
(1) 進入係統視圖。
system-view
(2) 配置設備向認證服務器發送的EAP-TLS分片報文最大長度。
dot1x eap-tls-fragment to-server eap-tls-max-length
缺省情況下,未配置EAP-TLS分片報文最大長度,即設備不對EAP-TLS報文進行分片。
單播觸發場景下,當收到源MAC地址未知的報文時,設備會主動向客戶端單播發送EAP-Request/Identity請求報文,如果在規定的時間內(dot1x timer tx-period)未收到客戶端的響應,則設備將向客戶端重發認證請求報文。若設備累計發送認證請求報文的次數達到配置的最大值(dot1x retry)後,仍然沒有得到客戶端響應,則設備端啟動此靜默定時器,在靜默期間,如果設備收到相同源MAC地址的報文,將不再主動向該MAC地址單播發送認證請求報文來觸發802.1X認證。
單播觸發靜默功能可能會影響802.1X用戶上線速率,請謹慎使用。
單播觸發靜默功能與Guest VLAN以及EAD快速部署功能不能同時配置。
(1) 進入係統視圖。
system-view
(2) 配置單播觸發靜默定時器。
dot1x timer unicast-trigger quiet-period quiet-period-value
缺省情況下,單播觸發靜默定時器的值為0秒,表示未開啟單播觸發靜默功能。
強製用戶下線後,設備會刪除對應的用戶信息,用戶再次上線時,需要重新進行802.1X認證。
在用戶視圖下執行如下命令。
reset dot1x access-user [ interface interface-type interface-number | mac mac-address | online-type { auth-fail-domain | critical-domain | preauth-domain | success } | username username | vlan vlan-id ]
802.1X接入用戶日誌信息是為了滿足網絡管理員維護的需要,對802.1X認證用戶的接入信息進行記錄。設備生成的802.1X接入用戶日誌信息會交給信息中心模塊處理,信息中心模塊的配置將決定日誌信息的發送規則和發送方向。關於信息中心的詳細描述請參見“網絡管理和監控配置指導”中的“信息中心”。
為了防止設備輸出過多的802.1X接入用戶日誌信息,一般情況下建議關閉此功能。
(1) 進入係統視圖。
system-view
(2) 開啟802.1X接入用戶日誌信息功能。
dot1x access-user log enable [ abnormal-logoff | failed-login | maxnum-clear-threshold | maxnum-trigger-threshold | normal-logoff | successful-login ] *
缺省情況下,802.1X接入用戶日誌信息功能處於關閉狀態。
配置本命令時,如果未指定任何參數,將同時開啟所有參數對應的日誌功能。
開啟802.1X模塊的告警功能後,該模塊會生成告警信息,用於報告該模塊的重要事件。生成的告警信息將發送到設備的SNMP模塊,通過設置SNMP中告警信息的發送參數,來決定告警信息輸出的相關屬性。有關告警信息的詳細介紹,請參見“網絡管理和監控配置指導”中的“SNMP”。
當開啟端口的802.1X用戶接入率告警功能並設置上限告警閾值和恢複閾值後:
· 如果當前端口上802.1X用戶接入率首次達到上限閾值,或者從小於等於恢複閾值上升到上限閾值,則設備將輸出上限告警信息。
· 如果當前端口上802.1X用戶接入率從大於等於上限閾值下降到恢複閾值,則設備將輸出恢複告警信息。
(1) 進入係統視圖。
system-view
(2) 開啟802.1X告警功能。
snmp-agent trap enable dot1x [ user-maxnum ]
缺省情況下,802.1X的告警功能處於關閉狀態。
在完成上述配置後,在任意視圖下執行display命令可以顯示配置後802.1X的運行情況,通過查看顯示信息驗證配置的效果。
在用戶視圖下,執行reset命令可以清除802.1X的相關信息。
表2-1 802.1X顯示和維護
操作 |
命令 |
顯示802.1X的會話連接信息、相關統計信息或配置信息 |
display dot1x [ sessions | statistics ] [ interface interface-type interface-number ] |
顯示802.1X接入模板的配置信息 |
display dot1x access-profile [ name profile-name ] |
顯示當前802.1X在線用戶的詳細信息 |
display dot1x connection [ open ] [ [ interface interface-type interface-number | online-type { auth-fail-domain | critical-domain | preauth-domain | success } | slot slot-number | user-name name-string ] | user-mac mac-address ] |
顯示指定類型的VLAN中的802.1X用戶的MAC地址信息 |
display dot1x mac-address { auth-fail-vlan | critical-vlan | guest-vlan } [ interface interface-type interface-number ] |
顯示802.1X的單播觸發靜默表項信息 |
display dot1x unicast-trigger quiet-mac [ interface interface-type interface-number ] |
清除Guest VLAN內802.1X用戶 |
reset dot1x guest-vlan interface interface-type interface-number [ mac-address mac-address ] |
清除802.1X的統計信息 |
reset dot1x statistics [ interface interface-type interface-number ] |
清除802.1X的單播觸發靜默表項 |
reset dot1x unicast-trigger quiet-mac [ interface interface-type interface-number | mac-address mac-address ] |
用戶通過Device的端口GigabitEthernet1/0/1接入網絡,設備對該端口接入的用戶進行802.1X認證以控製其訪問Internet,具體要求如下:
· 由兩台RADIUS服務器組成的服務器組與Device相連,其IP地址分別為10.1.1.1/24和10.1.1.2/24,使用前者作為主認證/計費服務器,使用後者作為備份認證/計費服務器。
· 端口GigabitEthernet1/0/1下的所有接入用戶均需要單獨認證,當某個用戶下線時,也隻有該用戶無法使用網絡。
· 認證時,首先進行RADIUS認證,如果RADIUS服務器沒有響應則進行本地認證。
· 所有接入用戶都屬於同一個ISP域bbb。
· Device與RADIUS認證服務器交互報文時的共享密鑰為name、與RADIUS計費服務器交互報文時的共享密鑰為money。
圖2-2 802.1X認證組網圖
下述配置步驟中包含了若幹AAA/RADIUS協議的配置命令,關於這些命令的詳細介紹請參考“安全命令參考”中的“AAA”。
(1) 配置RADIUS服務器,添加用戶賬戶,保證用戶的認證/授權/計費功能正常運行(略)
(2) 配置各接口的IP地址(略)
(3) 配置本地用戶
# 添加網絡接入類本地用戶,用戶名為localuser,密碼為明文輸入的123456TESTplat&!。(此處添加的本地用戶的用戶名和密碼需要與服務器端配置的用戶名和密碼保持一致,本例中的localuser僅為示例,請根據實際情況配置)
<Device> system-view
[Device] local-user localuser class network
[Device-luser-network-localuser] password simple 123456TESTplat&!
# 配置本地用戶的服務類型為lan-access。
[Device-luser-network-localuser] service-type lan-access
[Device-luser-network-localuser] quit
(4) 配置RADIUS方案
# 創建RADIUS方案radius1並進入其視圖。
[Device] radius scheme radius1
# 配置主認證/計費RADIUS服務器的IP地址。
[Device-radius-radius1] primary authentication 10.1.1.1
[Device-radius-radius1] primary accounting 10.1.1.1
# 配置備份認證/計費RADIUS服務器的IP地址。
[Device-radius-radius1] secondary authentication 10.1.1.2
[Device-radius-radius1] secondary accounting 10.1.1.2
# 配置Device與認證/計費RADIUS服務器交互報文時的共享密鑰。
[Device-radius-radius1] key authentication simple name
[Device-radius-radius1] key accounting simple money
# 配置發送給RADIUS服務器的用戶名不攜帶域名。
[Device-radius-radius1] user-name-format without-domain
[Device-radius-radius1] quit
發送給服務器的用戶名是否攜帶域名與服務器端是否接受攜帶域名的用戶名以及服務器端的配置有關:
· 若服務器端不接受攜帶域名的用戶名,或者服務器上配置的用戶認證所使用的服務不攜帶域名後綴,則Device上指定不攜帶用戶名(without-domain);
· 若服務器端可接受攜帶域名的用戶名,且服務器上配置的用戶認證所使用的服務攜帶域名後綴,則Device上指定攜帶用戶名(with-domain)。
(5) 配置ISP域
# 創建域bbb並進入其視圖。
[Device] domain bbb
# 配置802.1X用戶使用RADIUS方案radius1進行認證、授權、計費,並采用local作為備選方法。
[Device-isp-bbb] authentication lan-access radius-scheme radius1 local
[Device-isp-bbb] authorization lan-access radius-scheme radius1 local
[Device-isp-bbb] accounting lan-access radius-scheme radius1 local
[Device-isp-bbb] quit
# 開啟端口GigabitEthernet1/0/1的802.1X。
[Device] interface gigabitethernet 1/0/1
[Device-GigabitEthernet1/0/1] dot1x
# 配置端口的802.1X接入控製方式為MAC-based(該配置可選,因為端口的接入控製在缺省情況下就是基於MAC地址的)。
[Device-GigabitEthernet1/0/1] dot1x port-method macbased
# 指定端口上接入的802.1X用戶使用強製認證域bbb。
[Device-GigabitEthernet1/0/1] dot1x mandatory-domain bbb
[Device-GigabitEthernet1/0/1] quit
# 開啟全局802.1X。
[Device] dot1x
(7) 配置802.1X客戶端(略)
若使用iNode 802.1X客戶端,為保證備選的本地認證可成功進行,請確認802.1X連接屬性中的“上傳客戶端版本號”選項未被選中。
使用命令display dot1x interface可以查看端口GigabitEthernet1/0/1上的802.1X的配置情況。當802.1X用戶輸入正確的用戶名和密碼成功上線後,可使用命令display dot1x connection查看到上線用戶的連接情況。
如圖2-3所示,一台主機通過802.1X認證接入網絡,認證服務器為RADIUS服務器。Host接入Device的端口GigabitEthernet1/0/2在VLAN 1內;認證服務器在VLAN 2內;Update Server是用於客戶端軟件下載和升級的服務器,在VLAN 10內;Device連接Internet網絡的端口GigabitEthernet1/0/3在VLAN 5內。現有如下組網需求:
· 在端口上配置完Guest VLAN,則立即將該端口GigabitEthernet1/0/2加入Guest VLAN(VLAN 10)中,此時Host和Update Server都在VLAN 10內,Host可以訪問Update Server並下載802.1X客戶端。
· 配置QoS策略,在VLAN 10的出方向上過濾掉目的IP為Internet(5.1.1.1)的報文,以防止加入Guest VLAN的客戶端未通過認證私自訪問Internet。
· 用戶認證成功上線後,認證服務器下發VLAN 5,此時Host和連接Internet網絡的端口GigabitEthernet1/0/3都在VLAN 5內,Host可以訪問Internet。
圖2-3 Guest VLAN及VLAN下發組網圖
下述配置步驟中包含了若幹AAA/RADIUS協議的配置命令,關於這些命令的詳細介紹請參考“安全命令參考”中的“AAA”。
(1) 配置RADIUS服務器,添加用戶賬戶,指定要授權下發的VLAN(本例中為VLAN 5),並保證用戶的認證/授權/計費功能正常運行(略)
(2) 創建VLAN並將端口加入對應VLAN(端口GigabitEthernet1/0/2缺省在VLAN 1內)
<Device> system-view
[Device] vlan 10
[Device-vlan10] port gigabitethernet 1/0/1
[Device-vlan10] quit
[Device] vlan 2
[Device-vlan2] port gigabitethernet 1/0/4
[Device-vlan2] quit
[Device] vlan 5
[Device-vlan5] port gigabitethernet 1/0/3
[Device-vlan5] quit
(3) 配置QoS策略
# 定義高級ACL 3000,過濾目的IP地址為5.1.1.1的報文。
[Device] acl advanced 3000
[Device-acl-ipv4-adv-3000] rule permit ip destination 5.1.1.1 0.0.0.255
[Device-acl-ipv4-adv-3000] quit
# 定義類classifier_1,匹配高級ACL 3000。
[Device] traffic classifier classifier_1
[Device-classifier-classifier_1] if-match acl 3000
[Device-classifier-classifier_1] quit
# 定義流行為behavior_1,動作為流量過濾(deny),對數據包進行丟棄。
[Device] traffic behavior behavior_1
[Device-behavior-behavior_1] filter deny
[Device-behavior-behavior_1] quit
# 定義策略policy_1,為類classifier_1指定流行為behavior_1。
[Device] qos policy policy_1
[Device-qospolicy-policy_1] classifier classifier_1 behavior behavior_1
[Device-qospolicy-policy_1] quit
# 在VLAN 10的出方向應用策略policy_1。
[Device] qos vlan-policy policy_1 vlan 10 outbound
(4) 配置RADIUS方案
# 創建RADIUS方案2000並進入其視圖。
[Device] radius scheme 2000
# 配置主認證/計費RADIUS服務器及其共享密鑰。
[Device-radius-2000] primary authentication 10.11.1.1 1812
[Device-radius-2000] primary accounting 10.11.1.1 1813
[Device-radius-2000] key authentication simple abc
[Device-radius-2000] key accounting simple abc
# 配置發送給RADIUS服務器的用戶名不攜帶域名。
[Device-radius-2000] user-name-format without-domain
[Device-radius-2000] quit
(5) 配置ISP域
# 創建域bbb並進入其視圖。
[Device] domain bbb
# 配置802.1X用戶使用RADIUS方案2000進行認證、授權、計費。
[Device-isp-bbb] authentication lan-access radius-scheme 2000
[Device-isp-bbb] authorization lan-access radius-scheme 2000
[Device-isp-bbb] accounting lan-access radius-scheme 2000
[Device-isp-bbb] quit
(6) 配置802.1X
# 開啟端口GigabitEthernet1/0/2的802.1X。
[Device] interface gigabitethernet 1/0/2
[Device-GigabitEthernet1/0/2] dot1x
# 配置端口的802.1X接入控製的方式為Port-based。
[Device-GigabitEthernet1/0/2] dot1x port-method portbased
# 配置端口的802.1X授權狀態為auto。(此配置可選,端口的授權狀態缺省為auto)
[Device-GigabitEthernet1/0/2] dot1x port-control auto
# 配置端口的 802.1X Guest VLAN為VLAN10。
[Device-GigabitEthernet1/0/2] dot1x guest-vlan 10
[Device-GigabitEthernet1/0/2] quit
# 開啟全局802.1X。
[Device] dot1x
(7) 配置802.1X客戶端,並保證接入端口加入Guest VLAN或授權VLAN之後,802.1X客戶端能夠及時更新IP地址,以實現與相應網絡資源的互通(略)
可以通過命令display dot1x interface查看端口GigabitEthernet1/0/2上Guest VLAN的配置情況。
在端口上配置完Guest VLAN,則該端口會被立即加入其所屬的Guest VLAN,通過命令display vlan 10可以查看到端口GigabitEthernet1/0/2加入了配置的Guest VLAN(VLAN 10)。
在用戶認證成功之後,通過命令display interface可以看到用戶接入的端口GigabitEthernet1/0/2加入了認證服務器下發的VLAN 5中。
用戶通過Device的端口GigabitEthernet1/0/1接入網絡,Device對該端口接入的用戶進行802.1X認證以控製其訪問Internet,具體要求如下:
· 使用RADIUS服務器10.1.1.1/24作為認證/授權服務器,RADIUS服務器10.1.1.2/24作為計費服務器;
· 通過認證服務器下發ACL,禁止上線的802.1X用戶在工作日的工作時間(8:00~18:00)訪問IP地址為10.0.0.1/24的FTP服務器。
圖2-4 802.1X支持ACL下發典型組網圖
下述配置步驟中包含了若幹AAA/RADIUS協議的配置命令,關於這些命令的詳細介紹請參考“安全命令參考”中的“AAA”。
(1) 配置RADIUS服務器,添加用戶賬戶,指定要授權下發的ACL(本例中為ACL 3000),並保證用戶的認證/授權/計費功能正常運行(略)
(2) 配置各接口的IP地址(略)
(3) 配置RADIUS方案
<Device> system-view
[Device] radius scheme 2000
[Device-radius-2000] primary authentication 10.1.1.1 1812
[Device-radius-2000] primary accounting 10.1.1.2 1813
[Device-radius-2000] key authentication simple abc
[Device-radius-2000] key accounting simple abc
[Device-radius-2000] user-name-format without-domain
[Device-radius-2000] quit
(4) 配置ISP域的AAA方法
[Device] domain bbb
[Device-isp-bbb] authentication lan-access radius-scheme 2000
[Device-isp-bbb] authorization lan-access radius-scheme 2000
[Device-isp-bbb] accounting lan-access radius-scheme 2000
[Device-isp-bbb] quit
(5) 配置名為ftp的時間段,其時間範圍為每周工作日的8點到18點
[Device] time-range ftp 8:00 to 18:00 working-day
(6) 配置ACL 3000,拒絕用戶在工作日的工作時間內訪問FTP服務器10.0.0.1的報文通過
[Device] acl advanced 3000
[Device-acl-ipv4-adv-3000] rule 0 deny ip destination 10.0.0.1 0 time-range ftp
[Device-acl-ipv4-adv-3000] quit
(7) 配置802.1X
# 開啟全局802.1X。
[Device] dot1x
# 開啟端口GigabitEthernet1/0/1的802.1X。
[Device] interface gigabitethernet 1/0/1
[Device-GigabitEthernet1/0/1] dot1x
(8) 配置802.1X客戶端,並保證接入端口加入Guest VLAN或授權VLAN之後客戶端能夠及時更新IP地址,以實現與相應網絡資源的互通(略)
當用戶認證成功上線後,在工作日的工作時間Ping FTP服務器。
C:\>ping 10.0.0.1
Pinging 10.0.0.1 with 32 bytes of data:
Request timed out.
Request timed out.
Request timed out.
Request timed out.
Ping statistics for 10.0.0.1:
Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),
由以上過程可知,用戶無法ping通FTP服務器,說明認證服務器下發的ACL已對該用戶生效。
某公司用戶主機通過Device接入Internet,並通過DHCP服務器動態獲取IP地址。目前,公司部署EAD解決方案,要求所有用戶主機通過802.1X認證上網,因此需要所有主機上安裝配套的802.1X客戶端。由於網絡中的用戶主機數量較大,為減輕網絡管理員安裝以及升級802.1X客戶端的工作量,在192.168.2.0/24網段部署一台Web服務器專門提供客戶端軟件下載。具體要求如下:
· 未進行802.1X認證或者802.1X認證失敗的用戶,隻能訪問192.168.2.0/24網段,並可通過該網段內的DHCP服務器動態獲取192.168.1.0/24網段的IP地址。
· 未進行802.1X認證或者802.1X認證失敗的用戶通過瀏覽器訪問非192.168.2.0/24網段的外部網絡時,用戶訪問的頁麵均會被Device重定向至管理員預設的Web服務器頁麵,該Web服務器頁麵將提示用戶進行802.1X客戶端的下載。
· 用戶成功通過802.1X認證之後,可正常訪問網絡。
圖2-5 802.1X支持EAD快速部署典型配置組網圖
(1) 完成各服務器的配置
# 配置DHCP服務器,保證用戶可成功獲取192.168.1.0/24網段的IP地址(略)。
# 配置Web服務器,保證用戶可成功登錄預置的Web頁麵進行802.1X客戶端的下載(略)。
# 配置認證服務器,保證用戶的認證/授權/計費功能正常運行(略)。
(2) 配置各接口的IP地址(略)
(3) 配置DHCP中繼
# 使能DHCP服務。
<Device> system-view
[Device] dhcp enable
# 配置接口Vlan-interface2工作在DHCP中繼模式。
[Device] interface vlan-interface 2
[Device-Vlan-interface2] dhcp select relay
# 配置接口Vlan-interface2對應DHCP服務器組1。
[Device-Vlan-interface2] dhcp relay server-address 192.168.2.2
[Device-Vlan-interface2] quit
(4) 配置RADIUS方案和ISP域
# 配置RADIUS方案。
[Device] radius scheme 2000
[Device-radius-2000] primary authentication 10.1.1.1 1812
[Device-radius-2000] primary accounting 10.1.1.2 1813
[Device-radius-2000] key authentication simple abc
[Device-radius-2000] key accounting simple abc
[Device-radius-2000] user-name-format without-domain
[Device-radius-2000] quit
# 配置ISP域的AAA方法。
[Device] domain bbb
[Device-isp-bbb] authentication lan-access radius-scheme 2000
[Device-isp-bbb] authorization lan-access radius-scheme 2000
[Device-isp-bbb] accounting lan-access radius-scheme 2000
[Device-isp-bbb] quit
(5) 配置802.1X
# 配置Free IP。
[Device] dot1x ead-assistant free-ip 192.168.2.0 24
# 配置IE訪問的重定向URL。
[Device] dot1x ead-assistant url https://192.168.2.3
# 全局使能EAD快速部署功能。
[Device] dot1x ead-assistant enable
# 開啟全局802.1X。
[Device] dot1x
# 開啟端口GigabitEthernet1/0/1的802.1X。
[Device] interface gigabitethernet 1/0/1
[Device-GigabitEthernet1/0/1] dot1x
以上配置完成之後,執行命令display dot1x可以查看802.1X的配置情況。用戶主機成功獲得DHCP服務器分配的IP地址之後,在主機上執行ping Free IP中的地址,可驗證在802.1X認證成功之前是否可以訪問免認證網段192.168.2.0/24。
用戶在802.1X認證成功之前,通過瀏覽器訪問任何非Free IP的外部網站地址時,都會被重定向到Web server頁麵,此頁麵提供802.1X客戶端的下載服務。需要注意的是,地址欄內輸入的地址應該為非Free IP地址才有效,例如3.3.3.3或者https://3.3.3.3。
某公司用戶主機通過Device接入Internet,並通過DHCP服務器動態獲取IP地址。目前,公司部署EAD解決方案,要求所有用戶主機通過802.1X認證上網,因此需要所有主機上安裝配套的802.1X客戶端。由於網絡中的用戶主機數量較大,為減輕網絡管理員安裝以及升級802.1X客戶端的工作量,在192.168.2.0/24網段部署一台Web服務器專門提供客戶端軟件下載。具體要求如下:
· 未進行802.1X認證或者802.1X認證失敗的用戶,隻能訪問192.168.2.0/24網段。
· 未進行802.1X認證或者802.1X認證失敗的用戶通過瀏覽器訪問非192.168.2.0/24網段的外部網絡時,用戶訪問的頁麵均會被Device重定向至管理員預設的Web服務器頁麵,該Web服務器頁麵將提示用戶進行802.1X客戶端的下載。
· 用戶成功通過802.1X認證之後,可正常訪問網絡。
圖2-6 802.1X支持EAD快速部署典型配置組網圖
(1) 配置Web服務器,保證用戶可成功登錄預置的Web頁麵進行802.1X客戶端的下載(略)
(2) 配置認證服務器,保證用戶的認證/授權/計費功能正常運行(略)
(3) 配置各接口的IP地址(略)
(4) 配置DHCP服務器
# 使能DHCP服務。
<Device> system-view
[Device] dhcp enable
# 配置接口Vlan-interface2工作在DHCP服務器模式。
[Device] interface vlan-interface 2
[Device-Vlan-interface2] dhcp select server
[Device-Vlan-interface2] quit
# 配置DHCP地址池0的屬性:地址池動態分配的網段為192.168.1.0/24、網關地址為192.168.1.1。
[Device] dhcp server ip-pool 0
[Device-dhcp-pool-0] network 192.168.1.0 mask 255.255.255.0
[Device-dhcp-pool-0] gateway-list 192.168.1.1
[Device-dhcp-pool-0] quit
(5) 配置RADIUS方案和ISP域
# 配置RADIUS方案。
[Device] radius scheme 2000
[Device-radius-2000] primary authentication 10.1.1.1 1812
[Device-radius-2000] primary accounting 10.1.1.2 1813
[Device-radius-2000] key authentication simple abc
[Device-radius-2000] key accounting simple abc
[Device-radius-2000] user-name-format without-domain
[Device-radius-2000] quit
# 配置ISP域的AAA方法。
[Device] domain bbb
[Device-isp-bbb] authentication lan-access radius-scheme 2000
[Device-isp-bbb] authorization lan-access radius-scheme 2000
[Device-isp-bbb] accounting lan-access radius-scheme 2000
[Device-isp-bbb] quit
(6) 配置802.1X
# 配置Free IP。
[Device] dot1x ead-assistant free-ip 192.168.2.0 24
# 配置IE訪問的重定向URL。
[Device] dot1x ead-assistant url https://192.168.2.3
# 開啟EAD快速部署輔助功能。
[Device] dot1x ead-assistant enable
# 開啟全局802.1X。
[Device] dot1x
# 開啟端口GigabitEthernet1/0/1的802.1X。
[Device] interface gigabitethernet 1/0/1
[Device-GigabitEthernet1/0/1] dot1x
以上配置完成之後,執行命令display dot1x可以查看802.1X的配置情況。用戶主機成功獲得DHCP服務器分配的IP地址之後,在主機上執行ping Free IP中的地址,可驗證在802.1X認證成功之前是否可以訪問免認證網段192.168.2.0/24。
用戶在802.1X認證成功之前,通過瀏覽器訪問任何非Free IP的外部網站地址時,都會被重定向到Web server頁麵,此頁麵提供802.1X客戶端的下載服務。需要注意的是,地址欄內輸入的地址應該為非Free IP地址才有效,例如3.3.3.3或者https://3.3.3.3。
用戶在瀏覽器中輸入地址,但該HTTP訪問不能被正確重定向到指定的URL服務器。
· 用戶在瀏覽器地址欄內輸入了字符串類型的地址。由於用戶主機使用的操作係統首先會將這個字符串地址作為名字進行網絡地址解析,如果解析不成功通常會以非X.X.X.X形式的網絡地址發送ARP請求,這樣的請求不能進行重定向;
· 用戶在IE地址欄內輸入了Free IP內的任意地址。設備會認為用戶試圖訪問Free IP內的某台主機,而不對其進行重定向,即使這台主機不存在;
· 用戶在配置和組網時沒有將服務器加入Free IP,或者配置的URL為不存在的地址,或者該URL指向的服務器沒有提供Web服務。
· 地址欄內輸入的地址應該為X.X.X.X(點分十進製格式)的非Free IP地址才有效。
· 確保設備及服務器上的配置正確且有效。
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!