實戰802.1x端口認證

一.802.1x端口認證的原理:
IEEE 802.1x標準定義了WLAN用戶接入的認證過程;如今802.1x標準已經用於LAN,來實現基於交換機端口的認證過程.802.1x標準是一種基於基於客戶到服務器的訪問控制和認證協議,防止用戶在未經認證的狀況下接入到LAN.認證服務器對交換機每一個端口所連的客戶機進行認證.當客戶機被認證時,IEEE 801.1x標準只容許EAPOL,CDP和STP流量穿越該端口到達客戶機;認證經過後才容許常規流量穿越該端口.

IEEE 802.1x標準裏的設備角色以下圖:
1.客戶機:向LAN發起訪問請求的普通工做站,必須裝有和802.1x兼容的軟件(好比Windows XP).
2.認證服務器:實行認證功能,並響應給交換機.交換機充當認證代理,所以認證服務器對客戶機來講是透明的.認證服務器目前只支持RADIUS和EAP擴展.
3.交換機:能夠是普通的接入層交換機或無線AP.根據對用戶的認證狀態來決定用戶的物理訪問.交換機充當客戶機與認證服務器的認證代理.客戶機和交換機負責對EAP幀進行封裝和解封裝.
當交換機收到EAPOL幀後,把它中繼給認證服務器,將原先的以太網幀頭部信息給去掉,將EAP幀從新封裝成RADIUS支持的格式,在封裝過程當中,EAP幀不會被修改;當認證服務器返回EAP幀給交換機時,交換機去掉頭部信息,將EAP幀從新封裝以太網頭部信息並轉發給客戶機.

802.1x認證流程圖:
交換機啓用802.1x端口認證後,端口狀態首先處於未受權(unauthorized)狀態.在這種狀態下,只要該端口未配置成語音VLAN端口,那麼只容許EAPOL,CDP和STP流量;當客戶機認證成功後,端口將轉變成受權(authorized)狀態,容許全部的常規流量.若是端口被配置成了語音VLAN端口,在認證成功前還容許VoIP流量.交換機下能夠手動定義的3種端口狀態:
1.強制受權(force-authorized):禁用802.1x認證,在未經認證強制將端口轉換成受權狀態.這也是交換機的默認配置.
2.強制未受權(force-unauthorized):將端口處於未受權狀態,忽略客戶機發起的一切認證嘗試請求,而且交換機的該端口將不能向客戶機提供認證服務.
3.自動(auto):啓用802.1x認證,初始化端口處於未受權狀態,按照以前提到的認證流程進行認證;認證成功後,端口狀態轉換爲受權狀態.
還能夠將啓用了802.1x的端口指定爲單一主機(single-host)模式和多主機(multiple-hosts)模式.區別在於前者只能對其中一個客戶機進行認證;然後者只須要認證其中一臺客戶機,容許其餘客戶機在認證成功後訪問網絡資源.下圖的AP仍然是作爲客戶機:
RADIUS服務器維繫着一個用戶名到VLAN映射信息的數據庫,基於客戶機用戶名的分配VLAN:
1.若是RADIUS服務器上沒有提供VLAN信息,或者802.1x認證並未啓用,那麼端口所屬的VLAN是由你在劃分VLAN時手動指定的.
2.若是啓用了802.1x認證,可是RADIUS服務器上的VLAN信息無效(VLAN信息制定錯誤),端口將返回到未受權狀態,而且仍將處於你在劃分VLAN時手動指定的那個VLAN.
3.若是啓用了802.1x認證,RADIUS服務器上的VLAN信息也有效,認證成功後,端口將處於特定VLAN(根據用戶名到VLAN的映射信息決定).
4.若是端口啓用了多主機模式,當第一個主機認證成功後,全部主機將處於相同VLAN(根據用戶名到VLAN的映射信息決定).
5.若是端口同時啓用了802.1x認證和端口安全(port security)特性,端口將處於特定VLAN(根據用戶名到VLAN的映射信息決定).
用戶名到VLAN映射這一特性不支持trunk端口和動態VLAN端口.

能夠爲啓用了802.1x認證的端口定義客戶(guest)VLAN,在客戶VLAN裏只能作些有限的事情,好比這些客戶機一般是些不支持802.1x(如Windows 98)的客戶機.客戶VLAN支持單一主機和多主機模式.能夠把除了語音VLAN,RSPAN VLAN以及私有VLAN之外的任意VLAN指定爲客戶VLAN.客戶VLAN只支持接入端口,不支持trunk端口和可路由端口.

除了客戶VLAN,還能夠定義受限(restricted)VLAN,該VLAN是分配給沒法訪問客戶VLAN的服務受限的客戶機,一般是些支持802.1x,可是認證失敗的客戶機.若是沒有這一特性,當客戶機在屢次認證失敗後,STP將把該端口堵塞;而啓用這一特性後,交換機在3次認證失敗(默認狀況)以後,將端口定義到受限VLAN裏.能夠把除了語音VLAN,RSPAN VLAN以及私有VLAN之外的任意VLAN指定爲客戶VLAN.受限VLAN只支持單一主機模式和層2端口.

在某些CISCO IOS版本,好比CATALYST 3560系列CISCO IOS Release 12.2(25)SED及其後續版本,若是交換機沒法到達RADIUS服務器,那麼客戶機也將沒法被認證.這種狀況下能夠採用一種叫作臨界認證(critical authentication)的方法(即inaccessible authentication bypass),將客戶機鏈接到臨界(critical)端口來訪問網絡資源.當啓用該特性後,交換機將檢查認證服務器的狀態,若是服務器可用,那麼交換機將可以對客戶機認證;若是服務器不可用,交換機將受權客戶機訪問網絡的權限,並將端口設置爲臨界認證(critical-authentication)狀態.該特性依賴於:
1.若是在認證過程當中,RADIUS服務器忽然不可用,那麼交換機把端口設置爲臨界認證狀態直到下一次的認證嘗試的開始.
2.若是端口處於未受權狀態,當客戶機鏈接到臨界端口時RADIUS服務器不可用,那麼端口將進入臨界認證狀態,並處於用戶手動劃分VLAN時所指定的那個VLAN.
3.若是端口處於受權狀態,當客戶機鏈接到臨界端口,進行重認證的時候RADIUS服務器不可用,端口將進入臨界認證狀態,端口被定義到以前RADIUS服務器所指定的那個VLAN裏.

能夠基於MAC地址對客戶機進行認證(MAC authentication bypass特性),好比在鏈接到打印機的端口上啓用802.1x認證.甚至還能夠將端口安全特性和802.1x認證結合使用.

二.配置802.1x端口認證:
配置實例:
!
aaa new-model                                                      /---啓用AAA---/
aaa authentication dot1x default group radius           /---建立802.1x端口認證方式列表---/
dot1x system-auth-control                                      /---爲交換機全局啓用802.1x端口認證---/               
aaa authorization network default group radius         /---配置受權,好比VLAN的分配---/
radius-server host 1.1.1.1                                       /---定義和RADIUS服務器地址---/
radius-server key 91lab                                          /---定義和RADIUS服務器通訊的密碼---/
!
interface range fa0/1 – 24
switchport mode access                                          /---若是指定了RADIUS服務器,指定端口爲接入端口---/
dot1x port-control auto                                           /---在端口啓用802.1x端口認證---/
dot1x host-mode multi-host                                    /---定義客戶機機模式---/
dot1x guest-vlan 2                                                 /---定義客戶VLAN---/
dot1x auth-fail vlan 2                                             /---定義受限VLAN---/
!

三.實戰802.1x端口認證:
玩轉802.1x端口認證,如下是設備需求:
1.裝有英文版WIN2K Server(必須打SP4,IE6.0,還要裝JAVA虛擬機)的PC一臺作爲認證服務器,其實ACS 4.0的用中文版的WIN2K Server也是能夠的,我用的是VMWare.而後安裝CISCO Secure ACS軟件,我用的是ACS 4.0.PC配置越高越好.
2.CATALYST 3560交換機一臺,作爲認證代理.別的型號也行,只要支持802.1x便可.
3.客戶機系統爲Windows XP,再安裝ACS的客戶軟件(CISCO_SSC-XP2K-4.msi).

拓撲以下:
服務器端:
1.先新建個用戶:
2.配置AAA服務端(感謝大王同窗友情提供他的小黑):

3.配置AAA客戶端(其實就是802.1x的認證代理,即CATALYST 3560):

802.1x認證代理(CATALYST 3560)的配置以下:
!
aaa new-model
aaa authentication dot1x default group radius
aaa authorization network default group radius
!
dot1x system-auth-control
!
interface FastEthernet0/1
switchport mode access
dot1x port-control auto
!
interface Vlan1
ip address 192.168.0.3 255.255.255.0            
!
radius-server host 192.168.0.167
radius-server key 123456
!

驗證以下(認證經過後端口狀態會轉換爲AUTHORIZED):


客戶機:

採用EAP MD5認證:


 
開始自動鏈接:
提示用戶名以及密碼:



認證成功:
接下來就能夠訪問網絡資源了,All is done!

轉載請保留做者信息:
做者:紅頭髮(aka CCIE#15101/JNCIP Candidate)
出處:[url]http://www.91lab.com[/url]
 原文地址 [url]http://www.91lab.com:81/bbs/viewthread.php?tid=14683&extra=page%3D1[/url]
相關文章
相關標籤/搜索