講得比較好的802.1x相關文章

實戰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!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章