本產品的文件集力求使用無偏見用語。針對本文件集的目的,無偏見係定義為未根據年齡、身心障礙、性別、種族身分、民族身分、性別傾向、社會經濟地位及交織性表示歧視的用語。由於本產品軟體使用者介面中硬式編碼的語言、根據 RFP 文件使用的語言,或引用第三方產品的語言,因此本文件中可能會出現例外狀況。深入瞭解思科如何使用包容性用語。
思科已使用電腦和人工技術翻譯本文件,讓全世界的使用者能夠以自己的語言理解支援內容。請注意,即使是最佳機器翻譯,也不如專業譯者翻譯的內容準確。Cisco Systems, Inc. 對這些翻譯的準確度概不負責,並建議一律查看原始英文文件(提供連結)。
本檔案將說明如何使用外部RADIUS伺服器設定無線LAN控制器(WLC)以進行可擴充驗證通訊協定(EAP) — 透過安全通道進行彈性驗證(FAST)驗證。此配置示例使用身份服務引擎(ISE)作為外部RADIUS伺服器來驗證無線客戶端。
本文檔重點介紹如何為無線客戶端配置匿名和身份驗證帶內(自動)保護訪問憑證(PAC)調配的ISE。
嘗試此組態之前,請確保符合以下要求:
輕量型存取點(LAP)和Cisco WLC組態的基本知識
CAPWAP協定基礎知識
瞭解如何配置外部RADIUS伺服器,例如思科ISE
關於通用EAP框架的功能知識
安全協定(如MS-CHAPv2和EAP-GTC)的基本知識以及數位證書知識
本文中的資訊係根據以下軟體和硬體版本:
Cisco 5520系列WLC(執行韌體版本8.8.111.0)
Cisco 4800系列AP
Anyconnect NAM。
思科安全ISE版本2.3.0.298
執行15.2(4)E1版的Cisco 3560-CX系列交換器
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路正在作用,請確保您已瞭解任何指令可能造成的影響。
EAP-FAST協定是思科開發的一種可公開訪問的IEEE 802.1X EAP型別,用於支援無法實施強密碼策略並且希望部署不需要數位證書的802.1X EAP型別的客戶。
EAP-FAST協定是一種客戶端 — 伺服器安全體系結構,它使用傳輸級安全(TLS)隧道加密EAP事務。EAP-FAST隧道建立基於使用者獨有的強機密。這些強金鑰稱為PAC,ISE使用只為ISE所知的主金鑰生成這些金鑰。
EAP-FAST分為三個階段:
Phase zero(自動PAC調配階段) - EAP-FAST階段0,可選階段是一種隧道安全方法,用於為請求網路訪問的使用者提供具有PAC的EAP-FAST終端使用者客戶端。向終端使用者客戶端提供PAC是零階段的唯一目的。
注意:零階段是可選的,因為PAC也可以手動調配給客戶端,而不是使用零階段。
有關詳細資訊,請參閱本文檔的PAC調配模式部分。
階段一 — 在第一階段,ISE和終端使用者客戶端基於使用者的PAC憑證建立TLS隧道。此階段要求為試圖獲得網路訪問許可權的使用者向終端使用者客戶端提供PAC,並且PAC基於尚未過期的主金鑰。EAP-FAST的第一階段未啟用任何網路服務。
階段2 — 在階段2,使用者身份驗證憑證使用EAP-FAST在TLS隧道內支援的內部EAP方法安全地傳遞到客戶端和RADIUS伺服器之間使用PAC建立的RADIUS。支援將EAP-GTC、TLS和MS-CHAP作為內部EAP方法。EAP-FAST不支援其他EAP型別。
有關詳細資訊,請參閱EAP-FAST的工作原理。
PAC是強大的共用金鑰,使ISE和EAP-FAST終端使用者客戶端能夠相互進行身份驗證,並建立TLS隧道用於EAP-FAST階段2。ISE通過使用主金鑰和使用者名稱生成PAC。
PAC包括:
PAC-Key — 繫結到客戶端(和客戶端裝置)和伺服器標識的共用金鑰。
PAC Opaque — 客戶端快取並傳遞到伺服器的不透明欄位。伺服器恢復PAC金鑰和客戶端身份以與客戶端相互進行身份驗證。
PAC-Info — 至少包含伺服器標識,以使客戶端能夠快取不同的PAC。或者,它包含其他資訊,如PAC的過期時間。
如前所述,零階段是一個可選階段。
EAP-FAST提供兩個選項來調配具有PAC的客戶端:
自動PAC調配(EAP-FAST第0階段或帶內PAC調配)
手動(帶外)PAC調配
帶內/自動PAC調配通過安全網路連線將新的PAC傳送到終端使用者客戶端。自動PAC調配不需要網路使用者或ISE管理員的干預,只要您配置ISE和終端使用者客戶端以支援自動調配。
最新的EAP-FAST版本支援兩種不同的帶內PAC調配配置選項:
匿名帶內PAC調配
經過身份驗證的帶內PAC調配
注意:本文檔將討論這些帶內PAC調配方法以及如何配置它們。
帶外/手動PAC調配要求ISE管理員生成PAC文件,然後必須將其分發到適用的網路使用者。使用者必須使用其PAC檔案配置終端使用者客戶端。
執行以下步驟以配置WLC進行EAP-FAST身份驗證:
設定WLC以透過外部RADIUS伺服器進行RADIUS驗證
為EAP-FAST身份驗證配置WLAN
需要設定WLC,才能將使用者認證轉送到外部RADIUS伺服器。然後,外部RADIUS伺服器使用EAP-FAST驗證使用者憑證,並提供對無線客戶端的訪問。
完成以下步驟,設定外部RADIUS伺服器的WLC:
從控制器GUI中選擇Security和RADIUS Authentication,以顯示「RADIUS Authentication Servers」頁面。接下來,按一下New以定義RADIUS伺服器。
在RADIUS Authentication Servers > New頁面上定義RADIUS伺服器引數。這些引數包括:
RADIUS伺服器IP位址
共用金鑰
連線埠號碼
伺服器狀態
本文檔使用IP地址為10.48.39.128的ISE伺服器。
接下來,配置客戶端用於連線到無線網路以進行EAP-FAST身份驗證的WLAN,並將其分配給動態介面。在此示例中配置的WLAN名稱為eap fast。此範例將此WLAN指派給管理介面。
完成以下步驟以設定eap fast WLAN及其相關引數:
從控制器的GUI中按一下「WLANs」,以顯示「WLANs」頁面。
此頁面列出控制器上存在的WLAN。
按一下New以建立一個新的WLAN。
在WLANs > New頁面上配置eap_fast WLAN SSID名稱、配置檔名稱和WLAN ID。然後,按一下「Apply」。
建立新的WLAN後,系統會顯示新WLAN的WLAN > Edit頁面。在此頁面上,您可以定義此WLAN的特定各種引數。這包括常規策略、RADIUS伺服器、安全策略和802.1x引數。
勾選General Policies索引標籤下的Admin Status覈取方塊以啟用WLAN。如果您希望AP在其信標幀中廣播SSID,請選中Broadcast SSID覈取方塊。
在「WLAN -> Edit -> Security -> AAA Servers」頁籤下,從RADIUS Servers下的下拉選單中選擇適當的RADIUS伺服器。
按一下「Apply」。
注意:這是需要在控制器上為EAP身份驗證配置的唯一EAP設定。EAP-FAST的所有其他配置需要在RADIUS伺服器和需要身份驗證的客戶端上完成。
執行以下步驟以配置RADIUS伺服器進行EAP-FAST身份驗證:
此示例將EAP-FAST客戶端的使用者名稱和密碼分別配置為<eap_fast>和<EAP-fast1>。
完成以下步驟,將控制器定義為ACS伺服器上的AAA使用者端:
通常,如果部署中沒有PKI基礎設施,則希望使用此類方法。
在對等體驗證ISE伺服器之前,此方法運行在已驗證Diffie-Hellman金鑰協定協定(ADHP)隧道中。
要支援此方法,我們需要在ISE的「身份驗證允許的協定」(Authentication Allowed Protocols)下啟用「Allow Anonymous In-band PAC Provisioning」:
注意:請確保您已允許密碼型別身份驗證,如用於EAP-FAST內部方法的EAP-MS-CHAPv2,因為顯然使用匿名帶內調配時,我們無法使用任何證書。
這是最安全和推薦的選項。TLS隧道基於由請求方驗證的伺服器證書構建,客戶端證書由ISE驗證(預設)。
該選項要求客戶端和伺服器具有PKI基礎架構,儘管它可能僅限於伺服器端或在兩端被跳過。
在ISE上,還有兩個用於身份驗證帶內調配的額外選項:
在ISE上,我們還為無線使用者定義簡單身份驗證策略集,以下示例使用裝置型別和位置以及身份驗證型別作為條件引數,匹配該條件的身份驗證流將根據內部使用者資料庫進行驗證。
此範例將顯示經過驗證的帶內PAC布建流程和網路存取管理員(NAM)組態設定以及各自的WLC偵錯。
要配置Anyconnect NAM配置檔案以使用EAP-FAST對ISE驗證使用者會話,需要執行以下步驟:
顯示EAP-FAST和PAC調配流的ISE身份驗證日誌可在「Operations -> RADIUS -> Live Logs」下檢視,並可使用「Zoom」圖示檢視更多詳細資訊:
在客戶端身份驗證期間,已在WLC上啟用以下調試:
客戶端已啟動dot1x身份驗證並提供對WLC的EAPoL身份響應
*Dot1x_NW_MsgTask_3: Feb 22 12:43:12.192: f4:8c:50:62:14:6b dot1x - moving mobile f4:8c:50:62:14:6b into Connecting state *Dot1x_NW_MsgTask_3: Feb 22 12:43:12.192: f4:8c:50:62:14:6b Sending EAP-Request/Identity to mobile f4:8c:50:62:14:6b (EAP Id 2) *Dot1x_NW_MsgTask_3: Feb 22 12:43:12.192: f4:8c:50:62:14:6b Sending 802.11 EAPOL message to mobile f4:8c:50:62:14:6b WLAN 3, AP WLAN 3 *Dot1x_NW_MsgTask_3: Feb 22 12:43:12.192: 00000000: 02 00 00 2a 01 02 00 2a 01 00 6e 65 74 77 6f 72 ...*...*..networ *Dot1x_NW_MsgTask_3: Feb 22 12:43:12.192: 00000010: 6b 69 64 3d 65 61 70 5f 66 61 73 74 2c 6e 61 73 kid=eap_fast,nas *Dot1x_NW_MsgTask_3: Feb 22 12:43:12.192: 00000020: 69 64 3d 6e 6f 2c 70 6f 72 74 69 64 3d 31 id=no,portid=1 *Dot1x_NW_MsgTask_3: Feb 22 12:43:13.720: f4:8c:50:62:14:6b Received 802.11 EAPOL message (len 46) from mobile f4:8c:50:62:14:6b *Dot1x_NW_MsgTask_3: Feb 22 12:43:13.720: 00000000: 02 00 00 0e 02 02 00 0e 01 61 6e 6f 6e 79 6d 6f .........anonymo *Dot1x_NW_MsgTask_3: Feb 22 12:43:13.720: 00000010: 75 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 us.............. *Dot1x_NW_MsgTask_3: Feb 22 12:43:13.720: 00000020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .............. *Dot1x_NW_MsgTask_3: Feb 22 12:43:13.720: f4:8c:50:62:14:6b Received EAPOL EAPPKT from mobile f4:8c:50:62:14:6b *Dot1x_NW_MsgTask_3: Feb 22 12:43:13.720: f4:8c:50:62:14:6b Received Identity Response (count=2) from mobile f4:8c:50:62:14:6b *Dot1x_NW_MsgTask_3: Feb 22 12:43:13.720: f4:8c:50:62:14:6b Resetting reauth count 2 to 0 for mobile f4:8c:50:62:14:6b *Dot1x_NW_MsgTask_3: Feb 22 12:43:13.720: f4:8c:50:62:14:6b EAP State update from Connecting to Authenticating for mobile f4:8c:50:62:14:6b *Dot1x_NW_MsgTask_3: Feb 22 12:43:13.720: f4:8c:50:62:14:6b dot1x - moving mobile f4:8c:50:62:14:6b into Authenticating state *Dot1x_NW_MsgTask_3: Feb 22 12:43:13.720: f4:8c:50:62:14:6b Entering Backend Auth Response state for mobile f4:8c:50:62:14:6b
在TLS建立階段期間使用的RADIUS請求中會顯示未受保護的身份使用者名稱
*Dot1x_NW_MsgTask_3: Feb 22 12:43:13.736: f4:8c:50:62:14:6b [BE-req] Sending auth request to 'RADIUS' (proto 0x140001), for RealmName anonymous (dot1xName :anonymous) *aaaQueueReader: Feb 22 12:43:13.736: AuthenticationRequest: 0x7f0289e32690 *aaaQueueReader: Feb 22 12:43:13.736: Callback.....................................0xd6ceb3ef00 *aaaQueueReader: Feb 22 12:43:13.736: protocolType.................................0x00140001 *aaaQueueReader: Feb 22 12:43:13.736: proxyState...................................F4:8C:50:62:14:6B-03:01 *aaaQueueReader: Feb 22 12:43:13.736: Packet contains 20 AVPs: *aaaQueueReader: Feb 22 12:43:13.736: AVP[01] User-Name................................anonymous (9 bytes)
客戶端成功完成身份驗證
*radiusTransportThread: Feb 22 12:43:13.891: f4:8c:50:62:14:6b Processed VSA 311, type 17, raw bytes 52, copied 32 bytes *radiusTransportThread: Feb 22 12:43:13.891: f4:8c:50:62:14:6b Access-Accept received from RADIUS server 10.48.39.128 (qid:11) with port:1812, pktId:0