河南 許紅軍
在交換機中執行“en”,“authentication display config-mode”命令,如果顯示“Current configuration mode is legacy”行,說明處于傳統的配置模式。對于新版本的交換機來說,執行“authentication display new-style”命令,會顯示新版命令格式的說明信息。注意,IBNS2.0 和之前的命令格式不兼容。如果切換到IBNS2.0 新版的命令環境,沒有執行任何新的命令,是可以切換回老版命令環境中。
但如果執行了新版本的命令,則無法切換回去。IBNS2.0 有很好的靈活性,而且也更加復雜。ISBN2.0策略結構包括Control Policy、Event Type、Class(match criteria)和Action等部分。Control Policy 用來指定訂閱類型的Policy-Map,其中包含一些Event 事件,如會話開始,出現故障等。
在具體的Event 事件中包含一些Class,用來處理具體的情況,例如,找不到3A設備,3A 設備出現異常等。針對不同情況,執行對應的Action,例如,當找不到3A設備的話,就禁用Dot1X,推送合適的Service-Template等。
這其實類似于老版本IBNS 中 的“authentication event server dead action authorize vlan 100”之類的語句,即如果認證出現問題,則給客戶端設備授權指定的VLAN。
本例中使用某款思科交換機,在其GigabitEthernet 1/0/22 接口連接了一部電話語音設備,在該設備上串接了一臺客戶PC,分別屬 于VLAN10 和VLAN 20,VLAN 10 為Voice VLAN,IP范圍為192.168.10.0/24。VLAN 20 的IP 范圍為192.168.20.0/24。
電話語音設備只需配置MAB 認證,客戶端PC 主要配置DOTX 認 證。在GigabitEthernet 1/0/20 接口下連接了ISE 和DC 主機,ISE 作為3A 認證設備。該接口隸屬于VLAN100,IP 范圍為192.168.1.0/24,其中DC域控主機安裝了DHCP 服務,用來為上述VLAN 分配地址。
例如,執行“interface GigabitEthernet1/0/20”,“switchport access vlan 100”,“switchport mode access”,“spanning-tree portfast”命令,配置Vlan100,執行“interface vlan 100”,“ip address 192.168.1.254 255.255.255.0”命令,配置VLAN 的SVI 地址。VLAN 10的SVI 為192.168.10.254,VLAN 20 的SVI 為192.168.20.254。在交換機中執行“config t”命令,進入全局配置模式,執行“ip routing”命令,啟用路由功能,執行“vtp mode transparent”命令,將VTP 設置為透明模式,使交換機不受VTP 影響。
執行命令:

配置基本的AAA 認證信息。其中的“192.168.1.101”為ISE 設備的管理IP,“xxx”為認證密碼。
執行命令:


設置SNMP 管理參數。其中 的“ltpgroup”為 組 名,“ltpuser”為用戶名,“xxx”和“yyy”為具體的密碼。
執行命令:

啟用DOT1X 認證、授權和審計功能。
執行命令:


啟用CoA 功能。
CoA 主要用于設備識別和準入控制之用。當PC 等設備接入交換機后,會將其信息提交給AAA 服務器。如果AAA 服務器檢測到安全性無法滿足要求,就將其規劃到特殊的VLAN 中,該VLAN會受到嚴格的權限控制。當該機滿足了安全性要求,AAA服務器就可以將其指派到合法的VLAN 中。于是,通過Radius 主要推送相關的授權信息給交換機,來實現上述要求,執行“dot1x systemauth-control”命令,全局啟用Dot1X 認證功能,執行“device-sensor notify all-changes”命令,啟用Radius 設備識別功能。
執行“class-map type control subscriber matchall DONT-Find-AAA”命令,創建一個名為“DONT-Find-AAA”的Class-map 訂閱者,用來指定匹配的條件。在出現的提示欄中輸入“yes”,切換到新的命令格式,當切換之后是無法切換回IBNS 1.0等舊版本格式的。
執行“match method dot1x”,“match resulttype method dot1x aaatimeout”,“exit”命令,創建兩個匹配條件,即啟用了Dot1X,并且無法找到3A 設備。滿足了以上聊個條件后,才觸發指定的動作。
執行“class-map type control subscriber matchall DEV-NOT-AAA”命令,創建一個名為“DEV-NOTAAA”的Class-map 訂閱者,用來指定匹配的條件。執行“match method dot1x”,“match result-type method dot1x agent-not-found”,“exit”命令,創建兩個匹配條件,即啟用了Dot1X,并且連接的設備無法響應交換機發出的Dot1X 認證的要求,即無法發現需要進行認證的客戶端設備。
當然,這里僅僅是列舉簡單的情況來說明處理的方法,實際情況可能要復雜得多,需根據具體情況加以處理。執行“Service-template NOT-DOT1X-ACT”?!皏lan 30”命令,定義一個服務模版,用來在處理DOT1X 認證失敗的情況,即將連接的設備指派到VLAN 30 中。當然,該VLAN 需要在交換機上預先創建和配置好。
執行“policy-map type control subscriber DefaultDot1xOpenAuth_Mab”命令,定義一個名為“DefaultDot1xOpenAuth_Mab”的Policy-Map。
執行:event sessionstart match-all

定義一個會話開始事件,不管出現什么情況都需要執行DOT1X 認證,直到出現錯誤為止,嘗試進行認證的次數為2 次,間隔為0 秒,如果成功的話,DOT1X 獲取的授權優先級為10,優先級數字越小等級越高。
執行“event authentication -failure match-first”命令,定義一個處理認證失敗的事件,執行“10 class DONT-Find-AAA do-until-failure”,“10 terminate dot1x”,“20 activate servicestemplate NOT-DOT1X-ACT”命令,表示如果沒有出現沒有找到ISE 等3A 設備,就不進行Dot1X 認證,并將連接到交換機上的設備指派到VLAN 30 中。
執行:20 class DEVNOT-AAA do-until-failure


表示當出現連接的設備沒有響應DOT1X 認證要求的情況,則禁用DotX 認證,并啟用MAB 認證,將MAB 認證的授權優先級設置為20。
執行:30 class always do-until-failure


表示當出現其他失敗情況時,禁止進行Dot1X 和MAB認證,等待60 秒后重新執行以上處理步驟。
執行“event agentfound match-all”命令,定義一個找到客戶端設備的事件,執行:10 class always do-until-failure

表示執行DOTX 認證操作,并停止MAB 認證,并進行兩次Dot1X 認證,間隔時間為0 秒,當認證完成后獲取的授權優先級為10。
所謂MAB 認證,即MAC 地址旁路認證,也稱為靜態MAC認證。
因為在網絡中有些設備(例如語音電話、打印機、網絡攝像頭等)是無法進行DotX 認證的,但是這些較老的設備擁有MAC 地址,那么就可以將其擁有的MAC 地址作為賬戶名和密碼,提交給AAA 服務器進行認證處理。MAB 使用PAP/ASC Ⅱ或者可選的EAP-MD5 來進行哈希處理得到密碼,所以Radius 包處于明文狀態。
當然,使用基于MAC 地址進行認證的方法比較簡單,其安全性也是比較差的,但對于老設備的認證是很適用的。
另外,在很多情況下,需要同時進行設備認證和用戶認證,來提高安全性。
對于設備認證來說,使用的就是MAB 模式,而對于用戶認證來說,使用的就是DotX 模式,即采用內外雙層認證格式。
對于外層的MAB 認證來說,可以設計的比較寬泛,對于內層的用戶認證來說,可以設計的更加嚴格。
MAB 的優點在于具有設備可見性,實現局域身份的服務,易于在網絡便捷實現訪問控制,可以實現獨立或者輔助的認證,實現很好的設備認證功能。MAB 的缺點是必須得到MAC 地址數據庫的支持,認證會出現延時,無法實現用戶認證,認證的方式比較簡單。
在沒有執行MAB 認證之前,所有終端設備的身份是未知的,并且所有的流量都被禁止。交換機通過檢查數據包,來學習和認證源MAC地址。
當MAC 地址認證通過后,AAA 服務器就識別了對應的設備,就會允許所有來自該設備的所有流量,當然也會被接口訪問控制列表或者DACL 所管控。
執行“ip access-list extended ACL-DEFAULT”命令,創建名為“ACL-DEFAULT”的控制列表,放行基本流量。執行“permit udp any eq bootpc any eq bootps”命令,放行DHCP 流量。執行“permit udp any eq domain”命令,放行UDP 流量。執行“permit icmp any any”命令,放行ICMP 流量。執行“permit udp any any eq tftp”命令,放行TFTP 流量。
執行“deny ip any any”命令,攔截其他類型的流量。執行“ip accesslist extended WEBREDIRECT”,“deny udp any any eq domain”,“deny ip any host192.168.1.101”,“permit ip any any”命令,創建名為“WEB-REDIRECT”的控制列表,對于DNS 請求和去往ISE 設備的流量不進行重定向處理,其余的流量需要進行重定向,這主要用于Web 認證操作。
為了提高認證的靈活性,避免在不同接口下執行重復的配置操作,可以創建合適的模版來進行靈活配置。
執行“template DefaultDot1xOpenAuth_Mab_Template”命令,創建指定名稱的模版。執行“dot1x pae authenticator”命令,將交換機作為認證者。
執行:switchport access Vlan 20


執行諸如設置接口的模式,啟用多域認證,激活Dot1X認證,并執行周期性的認證行為,調用上述Polcy-Map。
注意,默認激活的是Open 認證模式,即如果認證失敗,可以通過指定的訪問控制列表放行基本流量。如果在其中添加了“accesssession closed”命令,那么表示使用的Close 認證模式,該模式下必須進行Dot1X或者MAB 認證。
所謂多域認證模式,表示在該接口下可以連接一臺語音電話,該電話的專用接口連接PC 等設備,這樣就出現了語音VLAN 和數據VLAN 兩種域模式。電話設備和PC 都可以通過該端口進行Dot1X 認證,但只能支持一臺電話和一臺PC 進行認證。執行“device-tracking policy IPDT”,“tracking enable”命令,創建 Device-Tracking 的Police,激活設備追蹤功能,之后便于在接口下進行調用。
執行:interface GigabitEthernet 1/0/22


在 GigabitEthernet 1/0/22 接口下執行調用上述模版,禁用自動宏操作,設置Dot1X 認證的超時時間、嘗試次數、放行默認流量等。
執行“show authentication sessions interface g1/0/22 details”命令,顯示該接口下詳細的配置信息。當然,還可以使用新的格式進行查詢。例如,執行“authentication display config-mode”命令,查看當前交換機的模式信息。執行“show access-session interface g1/0/2 2 detail”命令,查看指定端口的配置信息。執行“clear access session nterface g1/0/22”命令,清空指定接口下的配置信息。
在上述客戶PC 上打開網絡連接窗口,雙擊對應的網絡連接項目,在屬性窗口中選擇“身份驗證”→“啟用IEEE 802.11X 身份驗證”項,點擊“確定”激活DotX 身份驗證功能。在交換機上執行“show access-session interfaceg 1/0/2 2 detail”命令,在返回信息中可查看到認證用戶名、分配的地址、授權狀態、主機模式、匹配的ACL 等信息。在“Domain”欄中顯示“Data”,在“Vlan Group”欄中顯示“Vlan 10”,說明DOT1X 認證沒有問題。
當然,相關的認證和授權信息已在ISE 設備上進行了配置。當執行注銷操作但不登錄系統時,再次在交換機上執行上述命令,可在“User-Name”欄中顯示機器名稱,說明執行的MAB 認證,得到預設的的配置信息,同時連接在該接口上的電話語音設備也得到了合適的IP,匹配了預設的ACL,處于正常工作狀態。
上面是正常的認證過程。如果在上述客戶PC 上取消DotX 認證,重新插拔網線后,客戶機就不會響應交換機發出的認證要求,之后在交換機重新執行以上命令,可以看到和電話語音設備相關的Voice VLan 沒有問題,電話語音設備得到正確的配置信息??蛻魴C則執行的MAB 認證,如果ISE 設備出現故障,無法處理外界的認證請求,在交換機上再次執行上述命令,無法執行DotX 認證,和設備關聯的g1/0/22 接口被指派到VLAN 30 中。