簡介
本文說明如何在Cisco Catalyst 9800系列無線控制器上設定具有802.1X安全性的WLAN。
必要條件
需求
思科建議您瞭解以下主題:
採用元件
本文中的資訊係根據以下軟體和硬體版本:
- Catalyst 9800無線控制器系列(Catalyst 9800-CL)
- Cisco IOS® XE直布羅陀版17.3.x
- Cisco ISE 3.0
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
設定
網路圖表
WLC配置
9800 WLC上的AAA配置
GUI:
步驟 1.宣告RADIUS伺服器。導航到 Configuration > Security > AAA > Servers / Groups > RADIUS > Servers > + Add 並輸入RADIUS伺服器資訊。
如果您計畫將來使用中央Web身份驗證(或任何需要授權更改[CoA]的安全型別),請確保啟用對CoA的支援。
步驟 2.將RADIUS伺服器增加到RADIUS組。導航到 Configuration > Security > AAA > Servers / Groups > RADIUS > Server Groups > + Add. 為組指定名稱,並移動之前在清單中建立的伺服器 Assigned Servers.
步驟 3.建立驗證方法清單。導覽至 Configuration > Security > AAA > AAA Method List > Authentication > + Add.
輸入以下資訊:
CLI:
# config t # aaa new-model # radius server <radius-server-name> # address ipv4 <radius-server-ip> auth-port 1812 acct-port 1813 # timeout 300 # retransmit 3 # key <shared-key> # exit # aaa group server radius <radius-grp-name> # server name <radius-server-name> # exit
# aaa server radius dynamic-author
# client <radius-server-ip> server-key <shared-key>
# aaa authentication dot1x <dot1x-list-name> group <radius-grp-name>
有關AAA Dead-Server檢測的注意事項
設定RADIUS伺服器後,您就可以檢查它是否視為「ALIVE」:
#show aaa servers | s WNCD Platform State from WNCD (1) : current UP Platform State from WNCD (2) : current UP Platform State from WNCD (3) : current UP Platform State from WNCD (4) : current UP ...
可以在WLC上配置 dead criteria, 和 deadtime ,特別是在使用多個RADIUS伺服器的情況下。
#radius-server dead-criteria time 5 tries 3 #radius-server deadtime 5
注意: dead criteria 是用來將RADIUS伺服器標籤為停機的標準。它包括:1.逾時(秒),代表從控制器上次從RADIUS伺服器收到有效封包的時間到伺服器標示為停機的時間,所必須經過的時間。2.一個計數器,代表在RADIUS伺服器被標籤為失效之前必須在控制器上發生的連續超時次數。
注意: deadtime指定在停頓條件將其標籤為停頓後,伺服器保持停頓狀態的時間(以分鐘為單位)。一旦死期過期,控制器將伺服器標籤為UP (ALIVE),並通知已註冊的客戶端有關狀態更改的資訊。如果狀態標籤為UP後仍無法訪問伺服器,並且滿足dead條件,則在死區時間間隔內伺服器將再次標籤為dead。
WLAN配置檔案配置
GUI:
步驟 1.建立WLAN。導覽至「組態」>「無線」>「WLAN」>「+ 新增」,並依需要設定網路。
步驟 2.輸入無線區域網資訊
步驟 3.導航到安 全
性頁籤,然後選擇所需的安全方法。在本示例中,WPA2 + 802.1x。
步驟 4.從 Security > AAA 頁籤中,從9800 WLC上的AAA配置部分選擇第3步中建立的身份驗證方法。
CLI:
# config t # wlan <profile-name> <wlan-id> <ssid-name> # security dot1x authentication-list <dot1x-list-name> # no shutdown
原則設定檔組態
在策略配置檔案中,您可以決定要將客戶端分配到哪個VLAN,以及其他設定(如訪問控制清單[ACL]、服務品質[QoS]、移動錨點、計時器等)。
您可以使用預設策略配置檔案,也可以建立新配置檔案。
GUI:
導航到配置>標籤和配置檔案> 策略配置檔案,配置您的預設策略配置檔案或建立新配置檔案。
確認設定檔已啟用。
此外,如果您的存取點(AP)處於本地模式,請確保策略配置檔案已啟用集中交換和集中身份驗證。
在Access Policies頁籤中選擇需要分配客戶端的VLAN。
如果您計畫在Access-Accept like VLAN分配中包含ISE返回屬性,請在 Advanced 頁籤中啟用AAA覆蓋:
CLI:
# config # wireless profile policy <policy-profile-name>
# aaa-override # central switching # description "<description>" # vlan <vlanID-or-VLAN_name> # no shutdown
原則標籤組態
策略標籤用於將SSID與策略配置檔案連結。您可以建立新的原則標籤,或使用 default-policy-tag。
注意: default-policy-tag會自動將WLAN ID介於1和16之間的任何SSID對映到預設策略配置檔案。無法修改或刪除。 如果您的WLAN的ID為17或更高,則不能使用default-policy-tag。
GUI:
如果需要,請導航到Configugation > Tags & Profiles > Tags > Policy 並增加新的日誌。
將 WLAN 設定檔連結至想要的原則設定檔。
CLI:
# config t # wireless tag policy <policy-tag-name> # wlan <profile-name> policy <policy-profile-name>
原則標籤指定
指派原則標籤至需要的 AP。
GUI:
要將標籤分配給一個AP,請導航至 Configuration > Wireless > Access Points > AP Name > General Tags, 分配相關策略標籤,然後按一下 Update & Apply to Device.
注意:請注意,當AP上的策略標籤發生更改時,它將斷開與9800 WLC的關聯,並在稍後重新加入。
要將同一策略標籤分配給多個AP,請導航至 Configuration > Wireless Setup > Advanced > Start Now > Apply.
選擇要為其分配標籤的AP,然後按一下 + Tag APs
為策略、站點和RF選擇適用的標籤,然後按一下Save & Apply to Device
CLI:
# config t # ap <ethernet-mac-addr> # policy-tag <policy-tag-name> # end
ISE 組態
在ISE上宣告WLC
步驟 1.打開ISE控制檯並導航到 Administration > Network Resources > Network Devices > Add 如圖所示。
步驟 2.配置網路裝置。
或者,它可以是指定的型號名稱、軟體版本、說明,並根據裝置型別、位置或WLC分配網路裝置組。
這裡的IP位址對應到傳送驗證要求的WLC介面。預設情況下,這是管理介面,如下圖所示:
有關 Network Device Groups 的更多資訊,請參閱《思科身份服務引擎管理員指南》中的「管理網路裝置」一章:網路裝置組
在 ISE 上建立新使用者
步驟 1.導覽 Administration > Identity Management > Identities > Users > Add 至如下圖所示:
步驟 2.輸入使用者的資訊。在此範例中,此使用者屬於名為ALL_ACCOUNTS的群組,但可依需要加以調整,如下圖所示:
建立授權設定檔
Authorization Profile 包含一組屬性,這些屬性在條件匹配時返回。授權配置檔案確定客戶端是否可以訪問網路、推送訪問控制清單(ACL)、VLAN覆蓋或任何其他引數。本示例中顯示的授權配置檔案為客戶端傳送訪問接受並將客戶端分配給VLAN 1416。
步驟 1.導航到 Policy > Policy Elements > Results > Authorization > Authorization Profiles 並按一下 Add 按鈕。
步驟 2.輸入如圖所示的值。此處我們可以返回AAA覆蓋屬性,如VLAN。WLC 9800接受使用VLAN ID或名稱的隧道屬性64、65、81,並且也接受使用 AirSpace-Interface-Name 屬性。
建立策略集
策略集定義身份驗證和授權規則的集合。要建立策略集,請轉至 Policy > Policy Sets,按一下清單中第一個策略集的齒輪,然後選擇 Insert new row above 如下圖所示:
為此策略集配置名稱並建立條件。在本範例中,條件指定我們比對來自WLC的流量:
Radius:NAS-IP-Address EQUALS X.X.X.X // X.X.X.X is the WLC IP address
請確定 Default Network Access 在 Allowed Protocols / Server Sequence底下已選取。
建立身份驗證策略
要配置身份驗證和授權策略,您需要輸入策略集配置。如果您按一下 Policy Set 行右側的藍色箭頭,即可完成此作業:
身份驗證策略用於驗證使用者的憑證是否正確(驗證使用者是否真正是其所言者)。在 Authenticaton Policy, 下,建立身份驗證策略並將其配置,如此圖所示。此示例中使用的策略條件是:
RADIUS:Called-Station-ID ENDS_WITH <SSID> // <SSID> is the SSID of your WLAN
同時,選擇此身份驗證策略的 Use 頁籤下的Internal Users。
建立授權策略
在同一頁上,轉到 Authorization Policy 並
建立一個新目錄。此授權策略的條件為:
RADIUS:Called-Station-ID ENDS_WITH <SSID> // <SSID> is the SSID of your WLAN
在此策略的 Result > Profiles 頁籤下,選擇 Authorization Profile 您之前建立的。如果使用者透過身份驗證,ISE會向WLC傳送正確的屬性。
此時,WLC和ISE的所有配置均已完成,您現在可以嘗試連線客戶端。
有關ISE允許協定策略的更多資訊,請檢視「思科身份服務引擎管理員指南」中的「管理身份驗證策略」一章管理身份驗證策略
有關ISE身份源的詳細資訊,請檢視《思科身份服務引擎管理員指南:身份源》中的「管理使用者和外部身份源」一章
驗證
使用以下命令可驗證當前配置:
# show run wlan // WLAN configuration # show run aaa // AAA configuration (server, server group, methods) # show aaa servers // Configured AAA servers # show ap config general // AP's configurations # show ap name <ap-name> config general // Detailed configuration of specific AP
# show ap tag summary // Tag information for AP'S
# show wlan { summary | id | name | all } // WLAN details
# show wireless tag policy detailed <policy-tag name> // Detailed information on given policy tag
# show wireless profile policy detailed <policy-profile name>// Detailed information on given policy profile
疑難排解
註:外部負載均衡器的用途良好。但是,透過使用calling-station-id RADIUS屬性,確保負載均衡器針對每個客戶端運行。依賴UDP源埠不是用於平衡來自9800的RADIUS請求的受支援機制。
對WLC進行故障排除
WLC 9800提供永遠開啟追蹤功能。這可確保所有與客戶端連線相關的錯誤、警告和通知級別消息持續記錄,並且您可以在事件發生後檢視事件或故障條件的日誌。
這取決於生成的日誌量,但通常,您可以返回幾小時到幾天。
為了檢視9800 WLC預設收集的跟蹤,您可以透過SSH/Telnet連線到9800 WLC並執行以下步驟:(確保將會話記錄到文本檔案中)。
步驟 1.檢查WLC目前時間,以便您可以追蹤問題發生時的記錄。
# show clock
步驟 2.根據系統配置的指示,從WLC緩衝區或外部系統日誌收集系統日誌。如此可快速檢視系統健全狀況和錯誤(如有)。
# show logging
步驟 3.驗證是否啟用了任何調試條件。
# show debugging IOSXE Conditional Debug Configs: Conditional Debug Global State: Stop IOSXE Packet Tracing Configs: Packet Infra debugs: Ip Address Port ------------------------------------------------------|----------
注意:如果發現列出任何條件,則意味著所有遇到啟用條件(mac地址、ip地址等)的進程的跟蹤將記錄到調試級別。這將增加日誌的量。因此,建議在不主動調試時清除所有條件。
步驟 4.假設測試的mac地址未列為步驟3中的條件,收集特定mac地址的always-on通知級別跟蹤:
# show logging profile wireless filter { mac | ip } { <aaaa.bbbb.cccc> | <a.b.c.d> } to-file always-on-<FILENAME.txt>
您可以顯示作業階段上的內容,也可以將檔案複製到外部TFTP伺服器:
# more bootflash:always-on-<FILENAME.txt>
or
# copy bootflash:always-on-<FILENAME.txt> tftp://a.b.c.d/path/always-on-<FILENAME.txt>
條件式偵錯和無線電主動式追蹤
如果永遠線上的追蹤無法提供足夠資訊來判斷觸發調查中問題的原因,您可以啟用條件式偵錯並擷取「無線電作用中(RA)」追蹤,此追蹤會為與指定條件(此案例為使用者端mac位址)互動的所有處理作業提供偵錯層級追蹤。您可以透過GUI或CLI執行此操作。
CLI:
要啟用條件調試,請執行以下步驟:
步驟 5.確保未啟用調試條件。
# clear platform condition all
步驟 6.為要監控的無線客戶端MAC地址啟用調試條件。
此指令會開始監控提供的mac位址長達30分鐘(1800秒)。您可以選擇將此時間增加至2085978494秒。
# debug wireless mac <aaaa.bbbb.cccc> {monitor-time <seconds>}
附註:若要同時監控多個用戶端,請針對每個 MAC 位址執行 debug wireless mac <aaaa.bbbb.cccc> 指令。
注意:您不會在終端會話中看到客戶端活動的輸出,因為所有內容都在內部進行緩衝以便以後檢視。
步驟 7.重現您要監控的問題或行為。
步驟 8.如果在預設或配置的監控時間過去之前重現問題,則停止調試。
# no debug wireless mac <aaaa.bbbb.cccc>
當監控時間結束或偵錯無線停止後,9800 WLC 會產生本機檔案,名稱如下:
ra_trace_MAC_aaaabbbbcccc_HHMMSS.XXX_timezone_DayWeek_Month_Day_year.log
步驟 9. 收集 MAC 位址活動的檔案。 您可以將ra trace.log複製到外部伺服器,或直接在螢幕上顯示輸出。
檢查 RA 追蹤檔案的名稱:
# dir bootflash: | inc ra_trace
將檔案複製到外部伺服器:
# copy bootflash:ra_trace_MAC_aaaabbbbcccc_HHMMSS.XXX_timezone_DayWeek_Month_Day_year.log tftp://a.b.c.d/ra-FILENAME.txt
顯示內容:
# more bootflash:ra_trace_MAC_aaaabbbbcccc_HHMMSS.XXX_timezone_DayWeek_Month_Day_year.log
步驟 10.如果根本原因仍不明顯,請收集內部日誌,這是調試級別日誌的更詳細檢視。我們進一步詳細檢視已收集並內部儲存的調試日誌,因此您無需再次調試客戶端。
# show logging profile wireless internal filter { mac | ip } { <aaaa.bbbb.cccc> | <a.b.c.d> } to-file ra-internal-<FILENAME>.txt
注意:此命令輸出返回所有進程的所有日誌級別的跟蹤,而且數量非常大。請聯絡 Cisco TAC 協助剖析此類追蹤。
您可將 ra-internal-FILENAME.txt 複製到外部伺服器,或將輸出內容直接顯示於螢幕上。
將檔案複製到外部伺服器:
# copy bootflash:ra-internal-<FILENAME>.txt tftp://a.b.c.d/ra-internal-<FILENAME>.txt
顯示內容:
# more bootflash:ra-internal-<FILENAME>.txt
步驟 11.移除偵錯條件。
# clear platform condition all
注意:請確保在排除會話故障後始終刪除調試條件。
GUI:
步驟 1.轉到 Troubleshooting > Radioactive Trace > + Add 並指定要進行故障排除的客戶端的MAC/IP地址。
步驟 2.按一下Start。
步驟 3.重現問題。
步驟 4. 按一下停止。
步驟 5.按一下 Generate 按鈕,選擇要獲取日誌的時間間隔,然後按一下 Apply to Device. In this example, the logs for the last 10 minutes are requested.
步驟 6.將放射性跟蹤下載到您的電腦上,然後按一下「下載」按鈕並進行檢查。
在ISE上進行故障排除
如果遇到客戶端身份驗證問題,您可以驗證ISE伺服器上的日誌。轉到 Operations > RADIUS > Live Logs 並看到身份驗證請求清單、匹配的策略集、每個請求的結果等。按一下每行 Details 頁籤下的放大鏡,可以獲得更多詳細資訊,如圖所示: