802.1x

利用不可控邏輯埠完成的協議

802.1x協議是基於Client/Server的訪問控制和認證協議。它可以限制未經授權的用戶、設備通過接入埠(access port)訪問LAN/WLAN。在獲得交換機LAN提供的各種業務之前,802.1x對連接到交換機埠上的用戶、設備進行認證。802.1X提供安全的接入認證,但數據(包括操作系統)存儲於本地,數據可能有失竊的危險。

協議信息


802.1x
802.1x
802.1x協議是基於Client/Server的訪問控制和認證協議。它可以限制未經授權的用戶/設備通過接入埠(access port)訪問LAN/WLAN。在獲得交換機或LAN提供的各種業務之前,802.1x對連接到交換機埠上的用戶/設備進行認證。在認證通過之前,802.1x只允許EAPoL(基於區域網的擴展認證協議)數據通過設備連接的交換機埠;認證通過以後,正常的數據可以順利地通過乙太網埠。
網路訪問技術的核心部分是EAP(埠訪問實體)。在訪問控制流程中,訪問實體包含3部分:認證者--對接入的用戶/設備進行認證的埠;請求者--被認證的用戶/設備;認證伺服器--根據認證者的信息,對請求訪問網路資源的用戶/設備進行實際認證功能的設備。
乙太網的每個物理埠被分為受控和不受控的兩個邏輯端。
802.1x協議的基本原理,一種日趨流行的基於埠的訪問控制協議,並給出了一個基於802.1x協議的具體的認證應用方案,它採用了Windows XP+ Cisco3550+ Freeraius+ MySQL的應用模型。此認證方案在實際的應用中已被證明是簡單高效的。 
802.1x協議的體系結構包括3個重要部分:客戶端(supplicant system)、認證系統(authenticator system)、認證伺服器(authentication server system)。 
作為一種先進的寬頻網接入認證方式,802.1x已經得到了廣泛的重視和應用。而隨著無線網路技術、無線網路產品的不斷發展,無線網的不斷普及,作為專門為無線區域網設計的802.1x憑藉著高安全性、更強的數據加密、低成本、高性能等優勢,其影響將越來越大,應用將越來越廣。

工作過程


(1.當用戶有上網需求時打開802.1X客戶端程序,輸入已經申請、登記過的用戶名和口令,發起連接請求。此時,客戶端程序將發出請求認證的報文給交換機,開始啟動一次認證過程。
(2.交換機收到請求認證的數據幀后,將發出一個請求幀要求用戶的客戶端程序將輸入的用戶名送上來。
(3.客戶端程序響應交換機發出的請求,將用戶名信息通過數據幀送給交換機。交換機將客戶端送上來的數據幀經過封包處理後送給認證伺服器進行處理。
(4.認證伺服器收到交換機轉發上來的用戶名信息后,將該信息與資料庫中的用戶名表相比對,找到該用戶名對應的口令信息,用隨機生成的一個加密字對它進行加密處理,同時也將此加密字傳送給交換機,由交換機傳給客戶端程序。
(5.客戶端程序收到由交換機傳來的加密字后,用該加密字對口令部分進行加密處理(此種加密演演算法通常是不可逆的),並通過交換機傳給認證伺服器。
(6.認證伺服器將送上來的加密后的口令信息和其自己經過加密運算后的口令信息進行對比,如果相同,則認為該用戶為合法用戶,反饋認證通過的消息,並向交換機發出打開埠的指令,允許用戶的業務流通過埠訪問網路。否則,反饋認證失敗的消息,並保持交換機埠的關閉狀態,只允許認證信息數據通過而不允許業務數據通過。

環境特點


(1)交換式乙太網路環境
對於交換式乙太網路中,用戶和網路之間採用點到點的物理連接,用戶彼此之間通過VLAN隔離,此網路環境下,網路管理控制的關鍵是用戶接入控制,802.1x不需要提供過多的安全機制。
(2)共享式網路環境
當802.1x應用於共享式的網路環境時,為了防止在共享式的網路環境中出現類似“搭載”的問題,有必要將PAE實體由物理埠進一步擴展為多個互相獨立的邏輯埠。邏輯埠和用戶/設備形成一一對應關係,並且各邏輯埠之間的認證過程和結果相互獨立。在共享式網路中,用戶之間共享接入物理媒介,接入網路的管理控制必須兼顧用戶接入控制和用戶數據安全,可以採用的安全措施是對EAPoL和用戶的其它數據進行加密封裝。在實際網路環境中,可以通過加速WEP密鑰重分配周期,彌補WEP靜態分配秘鑰導致的安全性的缺陷。

認證優勢


綜合IEEE802.1x的技術特點,其具有的優勢可以總結為以下幾點。
簡潔高效:純乙太網技術內核,保持了IP網路無連接特性,不需要進行協議間的多層封裝,去除了不必要的開銷和冗餘;消除網路認證計費瓶頸和單點故障,易於支持多業務和新興流媒體業務。
容易實現:可在普通L3、L2、IPDSLAM上實現,網路綜合造價成本低,保留了傳統AAA認證的網路架構,可以利用現有的RADIUS設備。
安全可靠:在二層網路上實現用戶認證,結合MAC、埠、賬戶、VLAN和密碼等;綁定技術具有很高的安全性,在無線區域網網路環境中802.1x結合EAP-TLS,EAP-TTLS,可以實現對WEP證書密鑰的動態分配,克服無線區域網接入中的安全漏洞。
行業標準:IEEE標準,和乙太網標準同源,可以實現和乙太網技術的無縫融合,幾乎所有的主流數據設備廠商在其設備,包括路由器、交換機和無線AP上都提供對該協議的支持。在客戶端方面微軟WindowsXP操作系統內置支持,Linux也提供了對該協議的支持。
應用靈活:可以靈活控制認證的顆粒度,用於對單個用戶連接、用戶ID或者是對接入設備進行認證,認證的層次可以進行靈活的組合,滿足特定的接入技術或者是業務的需要。
易於運營:控制流和業務流完全分離,易於實現跨平台多業務運營,少量改造傳統包月制等單一收費制網路即可升級成運營級網路,而且網路的運營成本也有望降低。

認證標準


Template:Expand IEEE 802.1X是IEEE制定關於用戶接入網路的認證標準(注意:此處X是大寫,詳細請參看IEEE關於命名的解釋)。它的全稱是“基於埠的網路接入控制”。於2001年標準化,之後為了配合無線網路的接入進行修訂改版,於2004年完成。
IEEE 802.1X協議在用戶接入網路(可以是乙太網,也可以是Wi-Fi網)之前運行,運行於網路中的MAC層。EAP協議RADIUS協議。cs:IEEE 802.1X de:IEEE 802.1x en:IEEE 802.1X es:IEEE 802.1X fi:802.1x fr:IEEE 802.1X it:IEEE 802.1x pl:802.1X
IEEE802.1x協議具有完備的用戶認證、管理功能,可以很好的支撐寬頻網路的計費、安全、運營和管理要求,對寬頻IP城域網等電信級網路的運營和管理具有極大的優勢。IEEE802.1x協議對認證方式和認證體系結構上進行了優化,解決了傳統PPPOE和WEB/PORTAL認證方式帶來的問題,更加適合在寬頻乙太網中的使用。

認證方式


類型代碼身份驗證協議說明
4MD5 challengeEAP中類似於CHAP的認證方式
6GTC原本打算與RSA SecurID之類的令牌卡一起使用
13EAP-TLS以數字證書相互認證
18EAP-SIM以行動電話的SIM卡(用戶識別模塊卡)進行身份驗證
21TTLS隧道式TLS;以TLS加密保護較弱的身份驗證方式
25PEAP防護型EAP;以TLS加密保護較弱的EAP認證方式
29MS-CHAP-V2微軟的經加密的密碼身份驗證,與windows域兼容
OSV ,Cisco 2960 Windows NPS的聯合認證
802.1X提供安全的接入認證,但數據(包括操作系統)存儲於本地,數據可能有失竊的危險,比如富士康和比亞迪的官司,在比如陳冠希事件。一些對數據安全要求比較高的企業,政府,一直尋求,即要管好接入端的安全,又要管好數據端安全,做到本地無存儲,對數據隨需所取的PC應用環境。
OSV配合自己實現的802.1X認證客戶端,即實現了對網路接入的數據安全性要求,也實現了對PC的IO虛擬化,通過對數據實現虛擬化派發,用戶桌面環境的認證派發,和數據的集中存儲,集中管理。通過windows AD 伺服器,對用戶帳戶進行統一管理。
實施準備
1,支持802.1X認證交換機一台 實驗環境:Cisco 2960 (ip:192.168.88.249 netmask 255.255.255.0)
2, Windows 2008 r2 AD 域伺服器一台(ip: 192.168.88.188 Netmask:255.255.255.0 )
3, Windows 2008 r2 NPS伺服器一台 (ip: 192.168.88.189 Netmask:255.255.255.0 DNS:192.168.88.188)
4,客戶機一台
5,已安裝,配置好的OSV 伺服器一台(IP:192.168.88.10)
Cisco 交換機配置
cisco>en 進入特權模式
Password:
cisco#configure terminal 進入全局配置模式
cisco(config)#interface vlan1 進入介面配置模式,配置Vlan1
cisco(config-if)#ip address 192.168.88.249 255.255.255.0 配置Vlan1的IP
cisco(config-if)#exit 退出
cisco(config)#aaa new-model
cisco(config)#aaa authentication dot1x default group radius
cisco(config)#aaa authorization network default group radius
cisco(config)#dot1x system-auth-control
cisco(config)#radius-server host 192.168.88.251 auth-port 1812 acct-port 1813 key OSV 配置802.1X的認證伺服器IP,密鑰為OSV 記住此密鑰,配置RADIUS時用到。
cisco(config)#interface fastEthernet 0/X 配置需要進行認證的埠
cisco(config-if)#switchport mode access
cisco(config-if)# authentication port-control auto
cisco(config-if)#dot1x port-control auto
cisco(config-if)#dot1x reauthentication
cisco(config-if)#dot1x timeout reauth-period 300
cisco(config-if)#authentication host-mode multi-auth/multi-host/signal-host/mulit-domain 交換機埠下連接多台PC時(通過Hub或交換機)需要配置這個命令,默認只支持對一台PC認證。
cisco(config-if)#authentication violation shutdown/pretect/replace/restrict 802.1X shutdown規則
cisco(config-if)#dot1x pae both
cisco(config-if)#spanning-tree portfast 打開埠的快速轉發cisco(config-if)#exit
cisco(config)#exit
註:配置完成後,要測試交換機與RADIUS是否可通信,可在交換機上ping RADIUS伺服器進行判斷。
802.1x
802.1x

認證特點


基於乙太網埠認證的802.1x協議有如下特點:IEEE802.1x協議為二層協議,不需要到達三層,對設備的整體性能要求不高,可以有效降低建網成本;借用了在RAS系統中常用的EAP(擴展認證協議),可以提供良好的擴展性和適應性,實現對傳統PPP認證架構的兼容;802.1x的認證體系結構中採用了"可控埠"和"不可控埠"的邏輯功能,從而可以實現業務與認證的分離,由RADIUS和交換機利用不可控的邏輯埠共同完成對用戶的認證與控制,業務報文直接承載在正常的二層報文上通過可控埠進行交換,通過認證之後的數據包是無需封裝的純數據包;可以使用現有的後台認證系統降低部署的成本,並且有豐富的業務支持;可以映射不同的用戶認證等級到不同的VLAN;可以使交換埠和無線LAN具有安全的認證接入功能。

安全性


802.1x協議中,有關安全性的問題一直是802.1x反對者攻擊的焦點。實際上,這個問題的確困擾了802.1x技術很長一段時間,甚至限制了802.1x技術的應用。但技術的發展為這個問題給出了答案:802.1x結合EAP,可以提供靈活、多樣的認證解決方案。

認證模式


(1 埠認證模式
該模式下只要連接到埠的某個設備通過認證,其他設備則不需要認證,就可以訪問網路資源。
(2 MAC認證模式
該模式下連接到同一埠的每個設備都需要單獨進行認證。

交換機


(config)#aaa new-model '啟動AAA。
(config)#radius-server host 192.168.1.100 key netdigedu '配置RADIUS伺服器地址及密鑰。
(config)#aaa authentication dot1x default group radius '配置802.1x默認認證方法為RADIUS。
(config)#dot1x system-auth-control '在交換機上全局啟用802.1x認證。
(config)#int fa0/24
(config-if)#switchport mode access
(config-if)#dot1x port-control auto '設置介面的802.1x狀態。
這個命令一定要注意;
狀態有三種:
force-authorized:埠始終處於認證狀態並轉發流量,這個是默認狀態。
force-unauthorized:埠始終處於未認證狀態並不能轉發流量。
auto:埠通過使用802.1x與客戶端交換消息在認證和未認證狀態間切換。這個是我們需要的,所以dot1x port-control 命令后一定要用auto。
(config-if)#dot1x host-mode multi-host '交換機埠下連接多台PC時(通過Hub或交換機)需要配置這個命令,默認只支持對一台PC認證。
#show dot1x all '查看802.1x配置。