接入與身份認證技術

接入與身份認證技術
認證機制:基於口令(包括OTP)、挑戰/響應(客戶端根據挑戰值和密鑰進行哈希,屬於一次性口令)、EAP、公鑰認證機制(驗證方用CA發佈的公鑰驗證數字簽名)。
認證協議:RADIUS(UDP,1812端口負責認證,1813端口負責計費工做)、TACACS(認證、受權、計費是分離的,可用TCP49端口)、Kerberos(解決分佈式網絡認證)、LDAP(基於X.500標準)。
認證技術:IEEE 802.1X(基於端口)、Portal接入(Web認證技術)、MAC接入、Triple接入(多種認證共存)。

1、RADIUS
一、使用場景:
當用戶想要經過某個網絡與NAS(網絡接入服務器)創建鏈接從而得到訪問其餘網絡的權利時,NAS能夠選擇在NAS上進行本地認證計費,或把用戶信息傳遞給RADIUS服務器,由RADIUS進行認證計費;RADIUS 協議規定了NAS與RADIUS 服務器之間如何傳遞用戶信息和計費信息,即二者之間的通訊規則;RADIUS服務器負責接收用戶的鏈接請求,完成認證,並把用戶所需的配置信息返回給NAS。用戶得到受權後,在其正常上線、在線和下線過程當中,RADIUS服務器還完成對用戶帳號計費的功能。
二、網絡安全:
採用MD5加密算法進行的,C/S之間保持祕鑰(不公開),RADIUS協議利用這個密鑰使用MD5算法對RADIUS中的數據進行加密處理。
1)在RADIUS包中,有16字節的驗證字(authenticator)、祕鑰用MD5對包進行簽名。
2)用戶的口令用祕鑰加密後傳輸;
3)radius C/S之間的驗證:
PAP驗證:Secret password =Password XOR MD5(Challenge + Key)(Challenge就是RADIUS報文中的Authenticator)(NAS階段是明文傳輸密碼,NAS與radius才密文傳輸。)
CHAP(挑戰握手)驗證:NAS發送challeng、CHAP ID、hostname給用戶,用戶用challenge和MD5對CHAP ID、用戶密碼生成secret password,和用戶名username一塊兒發送給NAS;NAS把用戶發回來的信息和challenge、CHAP ID發給radius服務器進行認證。(密文傳輸客戶端密碼)
三、RADIUS報文的交互流程:
1) 用戶輸入用戶名和口令;
2) RADIUS客戶端根據獲取的用戶名和口令,向RADIUS服務器發送認證請求包(Access-Request)。
3) RADIUS服務器將該用戶信息與Users數據庫信息進行對比分析,若是認證成功,則將用戶的權限信息以認證響應包(Access-Accept)發送給RADIUS客戶端;若是認證失敗,則返回Access-Reject響應包。
4) RADIUS客戶端根據接收到的認證結果接入/拒絕用戶。若是能夠接入用戶,則RADIUS客戶端向RADIUS服務器發送計費開始請求包(Accounting-Request),Status-Type取值爲start;
5) RADIUS服務器返回計費開始響應包(Accounting-Response);
6) RADIUS客戶端向RADIUS服務器發送計費中止請求包(Accounting-Request),Status-Type取值爲stop;
7) RADIUS服務器返回計費結束響應包(Accounting-Response)。
四、報文結構:
RADIUS採用UDP,經過定時器管理機制、重傳機制、備用服務器機制,確保消息正確收發。
報文包括:
Code:包類型
Identifier: 包標識,同一組請求包和響應包的Identifier應相同,值是序列增加的。
Length:包長度
Authenticator:驗證字域,16字節明文隨機數。請求驗證字、響應驗證字=MD5(Code+ID+length+請求驗證字+Attributes+Key)
Attributes:屬性域,攜帶詳細的認證、受權、信息和配置細節,採用(Type、length、Value)三元組的形式提供。26號屬性(Vender-Specific)被用來擴展以支持供應商本身定義的擴展屬性。

五、參地址:
http://www.h3c.com.cn/MiniSite/Technology_Circle/Net_Reptile/The_Seven/Home/Catalog/201309/797634_97665_0.htm


2、TACACS+(Terminal Access Controller Access Control System,終端訪問控制器控制系統協議)
一、採用客戶端/服務器模式實現NAS與TACACS+服務器之間的通訊.主要用於PPP和VPDN(Virtual Private Dial-up Network,虛擬私有撥號網絡)接入用戶及終端用戶的AAA。
二、與radius區別:
採用TCP更加可靠;
不只僅是對密碼字段進行加密,而是對整個報文加密;
認證和受權報文分離,使得認證、受權服務能夠分離在不一樣的安全服務器上實現;
用戶可以使用的命令行受到用戶級別和AAA受權的雙重限制。
三、加密方法以下:
1)將session_id、secret key, 版本號和sequence number一塊兒進行MD5運算(其中secret key 爲TACACS客戶端和服務器之間的共享祕密),計算結果爲MD5_1
2)後續的MD5運算將上次MD5運算的結果也歸入運算範圍,以下:
MD5_1 = MD5{session_id, key, version, seq_no}
MD5_2 = MD5{session_id, key, version, seq_no, MD5_1}
....
MD5_n = MD5{session_id, key, version, seq_no, MD5_n-1}
3)將全部的運算結果鏈接起來,直到總長度大於須要加密的數據的長度,而後截斷到實際數據的長度,獲得pseudo_pad:
pseudo_pad = {MD5_1 [,MD5_2 [ ... ,MD5_n]]} truncated to len(data)
4)隨後將須要加密的數據和上面的pseudo_pad進行XOR運算,獲得密文:
ENCRYPTED {data} == data ^ pseudo_pad因爲TACACS+對整個數據包進行加密,私密性要好於RADIUS,竊聽者沒法根據報文的內容來猜想網絡的配置和用戶的身份。
四、TACACS+共有7種類型的消息:Authentication_START、Authentication_CONTIUNE、Authentication_REPLY、Authorization_REQUEST、Authorization_RESPONSE、Accounting_REQUEST、Accounting_REPLY。全部的TACACS+數據包都使用12字節長的包頭,字段Type爲1表示認證,2表示受權,3表示計費。

3、LDAP(Lightweight Directory Access Protocol)
基於X.500標準的,與X.500不一樣的是,LDAP支持TCP/IP。
一、與unix目錄的比較:
LDAP沒有真正的根目錄,而unix有/;
目錄的每一個節點均可以包含數據,均可能做爲一個容器,文件系統的每一個節點或者是文件或者是目錄,但不能同時是兩者;
文件系統的表示方法是從根目錄到深層目錄一層一層表示,而LDAP則相反。
二、表示方法:
dn :Distinguished Name;惟一可區別的名稱,記錄了一條記錄的位置
dc :一條記錄所屬區域
ou :Organization Unit;一條記錄所屬組織
cn/uid:Common Name;可用來區分身份的屬性,等同於一條記錄的名字/ID
dn:cn=cc,ou=imcuser-test-ld,dc=zhjdtest,dc=com
三、目錄的模式(schema):屬性類型(attribute types)、對象類(object classes)、語法(syntaxes)、匹配規則(matching rules)、目錄信息樹內容規則(DIT

content rules)、目錄信息樹結構規則(DIT strctural rules)和命名形式(name forms)。
四、LDAP的認證分爲:無認證、基本認證、SSL/TLS三種。

4、Kerberos
Kerberos認證是一個三路處理過程,依賴稱爲密鑰分發中心(KDC)的第三方服務來驗證計算機相互的身份,並創建密鑰以保證計算機間安全鏈接。本質上每臺

計算機分享KDC一個祕鑰,而KDC有兩個部件:一個Kerberos 認證服務器和一個票據受權服務器。
一、Kerberos協議自己並不能徹底解決網絡安全性問題,它是創建在一些假定之上的:
不能對拒絕服務(Denial of Service)***進行防禦;
主體必須保證他們的私鑰的安全;
Kerberos沒法應付口令猜想***;
網絡上每一個主機的時鐘必須是鬆散同步的;
主體的標識不能頻繁地循環使用;
二、認證過程:
首先Client向KDC申請TGT,以後Client經過得到TGT向KDC申請用於訪問Server的票據,最後Client向Server提交票據用於認證。經過三個子協議來完成,它們

分別是:Authentication Service Exchange、Ticket GrantingService Exchange和Client/Server Exchange。
(1)首先Client須要先得到一個受權,被稱爲Ticket Granting Ticket(票據受權票據,簡稱TGT),TGT的分發仍然是KDC來完成.獲得TGT後,Client向KDC發

送一個對SServer-Client的申請,其中包括本身的信息以及但願訪問的Server的信息。KDC在接收到這個請求的時候,生成一個會話密鑰,並生成兩個拷貝,分

別被Client和Server使用。而後從數據庫中提取Client和Server的主密鑰分別對這兩個拷貝進行對稱加密。對於後者,和會話密鑰一塊兒被加密的還有一些

Client的信息。KDC有了兩個分別被Client和Server 的主密鑰加密過的會話密鑰,KDC會將這兩個被加密的拷貝一併發給Client,屬於Server的那一份將會由

Client發送給Server。
(2)Client使用本身的主密鑰對KDC加密的會話密鑰進行解密從而得到SServer-Client,隨後建立鑑別碼(關於Client的一些信息和當前時間的一個時間戳)

並用SServer-Client對其加密。最後連同從KDC得到的、被Server的主密鑰加密過的數據包一併發送到Server端。咱們把經過Server的主密鑰加密過的數據包稱

爲會話票據。
(3)Server接收到這兩組數據後,先使用他本身的主密鑰對會話票據進行解密,從而得到SServer-Client。隨後使用SServer-Client解密鑑別碼獲取時間戳,

同當前的時間進行比較,若是誤差超出一個能夠接受範圍,Server會直接拒絕該Client的請求。

三、優缺點:
一旦Client得到用於訪問某個Server的票據,則該Server就能根據票據實現對Client的驗證,再也不須要KDC的參與;
以進行雙向驗證;
加密和解密使用相同的密鑰,安全性有所下降;
Kerberos中身份認證服務和票據受權服務時集中式管理,系統的性能和安全性也過度依賴於這兩個服務的性能和安全。

5、EAP(Extensible Authentication Protocol)可擴展認證協議
該協議通常運行在數據鏈路層上,便可以直接運行於PPP或者IEEE 802之上,沒必要依賴於IP。EAP的架構很是靈活,容許協商認證方法,容許使用另外的認證服

務器,支持重傳機制。
EAP認證方法目前大約有40種,包括:EAP-MD五、 EAP-OTP、EAP-GTC、EAP-TLS、EAP-SIM和EAP-AKA。
一、封裝:
當PPP幀的協議字段是0xC227的時候,表示PPP幀的信息字段裏封裝了一個完整的EAP報文;
EAP在LAN的報文(簡稱EAPOL)數據幀格式Type域爲EAP-Packet時,Packet Body爲EAP數據報文。
二、EAP過程
(1)Authenticator發送請求報文EAP-Request給Supplicant(客戶端),代表EAP認證開始。該請求由一個字段標明須要請求的數據是什麼。
(2)Supplicant針對Authenticator發過來的請求迴應一個響應消息EAP-Response;
(3)Authenticator繼續發送EAP-Request消息,消息中包含具體EAP Type及其協議數據,Supplicant對此作出響應。根據EAP Method的不一樣,此步驟可能會交

互屢次。
每次只能處理一個EAP報文,在收到響應以前不能發送新的請求,即鎖步機制(Lockstep)。所以Authenticator要負責請求消息的重傳。
(4)交互屢次以後,會出現兩種情形:Authenticator不能確認Supplicant的接入權限,此時必須發送EAP-Failure,終結這次的EAP過程;或者確認接入權限

,此時必須發送EAP-Success消息。
Authenticator也能夠做爲Pass Through設備,透傳EAP報文。

6、802.1X技術
全稱爲Port-Based Networks Access Control,即基於端口的網絡訪問控制。
一、結構:
客戶端(Supplicant System):該終端系統一般須要安裝一個客戶端軟件,必須支持EAPOL。
認證系統(Authenticator System):也稱NAS(Network Access System,即網絡接入系統),一般爲支持802.1X協議的網絡設備。
認證服務器(Authentication Server System):一般爲Radius服務器,該服務器能夠存儲有關用戶的認證、計費、業務信息。
二、協議:
(1)客戶端和NAS之間:EAPOL(EAP over LANs)
(2)客戶端、NAS和認證服務器之間認證信息的交互:EAP(Extensible Authentication Protocol,可擴展認證協議)
三、認證的基本過程:
(1)802.1X的認證發起能夠由NAS發起,也能夠由客戶端主動發起。
當NAS探測到未通過認證的用戶使用網絡時,就會主動發起認證;用於支持不能主動發送EAPOL-Start報文的客戶端,例如Windows XP自帶的802.1X客戶端。
客戶端則能夠經過客戶端軟件主動向NAS發送EAPOL-Start報文發起認證:組播MAC地址:01-80-C2-00-00-03。
(2)認證過程:
EAP中繼方式:IEEE 802.1X標準規定的,其將EAP承載在其它高層協議中,如EAPOR(EAP over Radius),以便EAP報文穿越複雜的網絡到達認證服務器。須要

Radius服務器支持EAP屬性:EAP-Message(值爲79)和Message-Authenticator(值爲80)。
EAP終結方式:EAP報文在設備端終結並映射到Radius報文中,經過標準的Radius協議完成認證、受權和計費。CHAP密碼經過密文方式在客戶端和NAS之間傳輸,

而PAP密碼經過明文的方式傳輸。
EAP中繼方式與EAP終結方式的認證流程十分相似,不一樣之處主要在於加密字的生成處理及傳遞方式。在EAP中繼方式中,用來對用戶口令信息進行加密處理的隨

機加密字由認證服務器生成。EAP終結方式中,用來對用戶密碼信息進行加密處理的隨機加密字由NAS生成。
四、H3C公司對802.1X的擴展屬性
支持基於端口和基於MAC的不一樣認證方式
支持的下發業務包括VLAN業務、ACL業務和CAR(用戶流量控制)業務
按期握手機制取代了從新認證機制
獨特的代理用戶檢測



7、PORTAL
Portal在英語中是入口的意思。Portal認證一般也稱爲Web認證,通常將Portal認證網站稱爲門戶網站。
一、Portal的四大主要系統:
認證客戶端:
接入設備(BAS):交換機、路由器等寬帶接入設備的統稱。在認證以前,將用戶的全部HTTP請求都重定向到Portal服務器。在認證經過後,容許用戶訪問被管

理員受權的互聯網資源。
Portal服務器:提供免費門戶服務和基於Web認證的界面。Portal服務器經過PAP或CHAP的方式向接入設備傳遞用戶信息。接入設備獲取到用戶信息後,將該信

息經過AAA模塊完成認證。
認證/計費服務器:與接入設備進行交互,完成對用戶的認證和計費。
二、對EAD系統的支持
須要用戶在終端上安裝專用的Portal客戶端軟件,用戶在經過Portal認證後,安全策略服務器經過與Portal客戶端、接入設備進行交互,完成對用戶的安全認

證。若對用戶採用了安全策略,則用戶的安全檢測經過以後,安全策略服務器根據用戶的安全策略,受權用戶訪問非受限資源。
三、認證方式
二層認證方式:只容許源MAC地址經過認證的用戶才能訪問外部網絡資源,目前僅支持本地Portal認證,即接入設備做爲本地Portal服務器。
三層認證方式:直接認證方式、二次地址分配認證方式和跨三層認證方式。直接認證方式和二次地址分配認證方式下,認證客戶端必須經過二層直接鏈接到接

入設備。IP地址都是用戶的惟一標識。接入設備基於用戶的IP地址下發ACL對接口上經過認證的用戶報文轉發進行控制。

8、MAC地址認證
基於端口和MAC地址對用戶的網絡訪問權限進行控制的認證方法;
不須要用戶安裝任何客戶端軟件;
認證過程當中,不須要用戶手動輸入用戶名或者密碼;
若該用戶認證成功,則容許其經過端口訪問網絡資源,不然該用戶的MAC地址就被添加爲靜默MAC。在靜默時間內(可經過靜默定時器配置),來自此MAC地址的

用戶報文到達時,設備直接作丟棄處理。
一、MAC地址認證使用的用戶名格式分爲兩種類型:
使用用戶的MAC地址做爲認證時的用戶名和密碼,用戶名和密碼相同;
不論用戶的MAC地址爲什麼值,全部用戶均使用設備上指定的一個固定用戶名和密碼替代用戶的MAC地址做爲身份信息進行認證;
二、兩種MAC地址認證方式:
選用RADIUS服務器認證方式;
接入設備上進行本地認證;
三、認證觸發與下線:
下線檢測定時器(offline-detect):用來設置用戶空閒超時的時間間隔;
靜默定時器(quiet):用來設置用戶認證失敗之後,設備中止對其提供認證服務的時間間隔;
服務器超時定時器(server-timeout):設置設備同RADIUS服務器的鏈接超時時間;

MAC地址認證觸發,目前只有一種觸發方式:new-mac事件觸發,就是有了新的MAC到使能了MAC認證的端口,並被該端口學習到,便可觸發MAC地址認證。
四、擴展特性:
(1)一般將受限的網絡資源和用戶劃分到不一樣的VLAN。認證服務器(遠程或本地)受權下發VLAN功能。設備根據用戶接入的端口鏈路類型,按不一樣狀況爲端口

下發VLAN。經過認證便可訪問受權vlan。
(以太網端口有三種鏈路類型:access、trunk、hybird. Access類型的端口只能屬於1個VLAN,用於計算機; Trunk類型的端口能夠容許多個VLAN經過,用於

交換機; Hybrid類型的端口能夠容許多個VLAN經過,用於交換機和計算機。)
(2)從認證服務器(遠程或本地)下發的ACL被稱爲受權ACL,它爲用戶訪問網絡的權限提供了良好的過濾功能。
(3)MAC地址認證的Guest VLAN功能容許用戶在認證失敗的狀況下,訪問某一特定VLAN中的資源。

9、Triple認證
802.1X認證須要客戶端的配合,適用於安裝了802.1X客戶端的主機;移動終端如手機、PAD等能夠選擇Portal認證;而對於打印機、打卡器等終端,因爲自己往

往不支持認證交互,MAC地址又是已知且固定不變的,這類設備適合採用MAC認證。爲了知足不一樣用戶的需求,在同一端口上同時實現下掛不一樣的認證用戶,推

出了Triple認證。
Triple認證能夠支持在一個交換機二層端口上同時使能802.1X認證、MAC認證以及二層Portal認證,在Triple認證中採用基於MAC認證模式的802.1X。
一、幾種認證之間的覆蓋關係
對於接入用戶,只要經過其中一種認證,就能夠訪問相關權限。
客戶端啓動或者網卡接入時首先觸發MAC地址認證,經過了MAC認證之後,再使用802.1X客戶端觸發802.1X認證能夠認證成功,將覆蓋以前MAC認證信息,而當

802.1X認證失敗後又能夠從新經過new MAC事件來觸發MAC認證。
用戶經過MAC地址認證後,不會再觸發Portal認證。
二層Portal認證以及802.1X認證成功後不能被其餘認證覆蓋。
二、受權:
接入設備對認證成功的用戶能夠添加相應的受權VLAN。
Triple認證應用中採用基於MAC的VLAN技術來實現對於不一樣的用戶下發不一樣的權限。MAC-VLAN表項採用動態下發的方式,要求用戶端口採用hybrid口,端口上啓

用MAC-VLAN。
GUEST VLAN設置了用戶在認證成功前被授予的權限,在Triple認證中也是須要同MAC-VLAN結合實現的;
Auth-fail VLAN 劃分了在用戶認證失敗後可以訪問的資源。


10、EAD(Endpoint Admission Domination終端准入控制)方案介紹
其核心就是對終端用戶的准入和控制。它以接入認證技術爲載體,爲網絡提供一套立體的安全體系。EAD主要組件分爲終端用戶、接入控制設備、第三方補丁和

病毒服務器、安全策略服務器。邏輯上分爲隔離區和受權安全區域。
一、基本思想:
終端用戶首先經過接入認證技術進行身份認證,接入認證包括802.1X認證、PORTAL認證、L2TP認證。身份認證不經過,直接被拒絕,不能訪問網絡受保護資源

。若是身份認證經過,則首先要把用戶放到隔離區,而後進行安全檢查,若是安全檢查不合格,則用戶將一直被隔離,只能訪問隔離區域,直到自動修復或手

工修復完成。若是安全檢查合格,則用戶會被動態受權,進入安全區域,能夠訪問受保護網絡資源,但僅限於受權的網絡資源,不能越權訪問。此後用戶在線

過程當中,其行爲能夠被約束,當打開或者安裝禁止的進程或程序時,用戶會被要求下線,禁止訪問網絡。
二、接入認證技術能夠是PORTAL、802.1X和L2TP(×××),並且這三種接入技術分別適合不一樣的應用場景。
三、在安全檢查階段不能符合預約的安全策略,EAD系統會針對該用戶啓動安全措施。默認的安全模式5種,分別是:隔離模式、監控模式、VIP模式(提醒模式

)、下線模式、訪客模式。
四、EAD 802.1X認證流程:
(1)和普通802.1X認證不一樣之處在於後續的EAD認證過程,在用戶身份認證經過後,策略服務器經過radius-access-accept報文告知接入認證NAS設備該用戶認

證經過,同時包含filter-id(下發ACL)和策略服務器地址等信息。接入認證NAS設備把該屬性封裝爲eap報文後透傳給客戶端。
(2)iNode客戶端收到透傳的EAP報文後,解析出策略服務器的地址、端口等信息,開始發起EAD認證。
1號報文是認證請求,包含主要內容以下:認證用戶名、IP地址(可選)、客戶端監聽端口號、客戶端版本號等;
2號報文是服務器迴應的安全檢查報文,它須要通知客戶端哪些安全項須要進行檢查而且上報;
3號報文是用於向策略服務器反饋終端PC的一些安全檢查結果的。
若是安全檢查經過,則直接向客戶端發送EAD4號報文。如是隔離模式,以後會發生radius的session-control報文,經過filter-id向接入認證通告該用戶應該

被受權下發的ACL,經過ACL的約束來達到對用戶受權的目的。
若是安全檢查不經過,則向終端PC發送EAD 6號報文。
在用戶下線前,EAD終端PC和策略服務器會經過EAD 11號報文和12號報文來維持心跳保活。
當用戶主動請求下線時,向策略服務器發送EAD13號報文,策略服務器會迴應EAD14號報文,其攜帶屬性和EAD11號報文大體相同。
五、PORTAL EAD的認證流程
與802.1X相同,當用戶身份認證經過後,若是用戶安全策略的模式是隔離模式,那麼radius服務器會經過access-accept報文中的filter-id屬性下發隔離ACL。

PORTAL服務器經過CODE-PP-LOGIN-RESPONS 報文通了結端PC的iNode安全策略服務器的IP地址、端口號等。算法

相關文章
相關標籤/搜索