ppp認證

詢問握手認證協議(CHAP)通過三次握手週期性的校驗對端的身份,在初始鏈路建立時完成,可以在鏈路建立之後的任何時候重複進行。
1. 鏈路建立階段結束之後,認證者向對端點發送“challenge”消息。
2. 對端點用經過單向哈希函數計算出來的值做應答。
3. 認證者根據它自己計算的哈希值來檢查應答,如果值匹配,認證得到承認;否則,連接應該終止。
4. 經過一定的隨機間隔,認證者發送一個新的 challenge 給端點,重複步驟 1 到 3 。
通過遞增改變的標識符和可變的詢問值,CHAP 防止了來自端點的重放***,使用重複校驗可以限制暴露於單個***的時間。認證者控制驗證頻度和時間。
特性
該認證方法依賴於只有認證者和對端共享的密鑰,密鑰不是通過該鏈路發送的。
雖然該認證是單向的,但是在兩個方向都進行 CHAP 協商,同一密鑰可以很容易的實現相互認證。
由於 CHAP 可以用在許多不同的系統認證中,因此可以用 NAME 字段作爲索引,以便在一張大型密鑰表中查找正確的密鑰,這樣也可以在一個系統中支持多個 NAME/ 密鑰對,並可以在會話中隨時改變密鑰。
CHAP 要求密鑰以明文形式存在,無法使用通常的不可回覆加密口令數據庫。
CHAP 在大型網絡中不適用,因爲每個可能的密鑰由鏈路的兩端共同維護。
密碼認證協議(PAP),是 PPP 協議集中的一種鏈路控制協議,主要是通過使用 2 次握手提供一種對等結點的建立認證的簡單方法,這是建立在初始鏈路確定的基礎上的。
完成鏈路建立階段之後,對等結點持續重複發送 ID/ 密碼給驗證者,直至認證得到響應或連接終止。
PAP 並不是一種強有效的認證方法,其密碼以文本格式在電路上進行發送,對於竊聽、重放或重複嘗試和錯誤***沒有任何保護。對等結點控制嘗試的時間和頻度。所以即使是更高效的認證方法(如 CHAP),其實現都必須在 PAP 之前提供有效的協商機制。
該認證方法適用於可以使用明文密碼模仿登錄遠程主機的環境。在這種情況下,該方法提供了與常規用戶登錄遠程主機相似的安全性。

PPP:點對點協議
(PPP:Point to Point Protocol)
點對點協議(PPP)爲在點對點連接上傳輸多協議數據包提供了一個標準方法。PPP 最初設計是爲兩個對等節點之間的 IP 流量傳輸提供一種封裝協議。在 TCP-IP 協議集中它是一種用來同步調製連接的數據鏈路層協議(OSI 模式中的第二層),替代了原來非標準的第二層協議,即 SLIP。除了 IP 以外 PPP 還可以攜帶其它協議,包括 DECnet 和 Novell 的 Internet 網包交換(IPX)。
PPP 主要由以下幾部分組成
封裝:一種封裝多協議數據報的方法。PPP 封裝提供了不同網絡層協議同時在同一鏈路傳輸的多路複用技術。PPP 封裝精心設計,能保持對大多數常用硬件的兼容性,克服了SLIP不足之處的一種多用途、點到點協議,它提供的WAN數據鏈接封裝服務類似於LAN所提供的封閉服務。所以,PPP不僅僅提供幀定界,而且提供協議標識和位級完整性檢查服務。
鏈路控制協議:一種擴展鏈路控制協議,用於建立、配置、測試和管理數據鏈路連接。
網絡控制協議:協商該鏈路上所傳輸的數據包格式與類型,建立、配置不同的網絡層協議; 
配置:使用鏈路控制協議的簡單和自制機制。該機制也應用於其它控制協議,例如:網絡控制協議(NCP)。
爲了建立點對點鏈路通信,PPP 鏈路的每一端,必須首先發送 LCP 包以便設定和測試數據鏈路。在鏈路建立,LCP 所需的可選功能被選定之後,PPP 必須發送 NCP 包以便選擇和設定一個或更多的網絡層協議。一旦每個被選擇的網絡層協議都被設定好了,來自每個網絡層協議的數據報就能在鏈路上發送了。
鏈路將保持通信設定不變,直到有 LCP 和 NCP 數據包關閉鏈路,或者是發生一些外部事件的時候(如,休止狀態的定時器期滿或者網絡管理員干涉)。
應 用:假設同樣是在Windows 98,並且已經創建好“撥號連接”。那麼可以通過下面的方法來設置PPP協議:首先,打開“撥號連接”屬性,同樣選擇“服務器類型”選項卡;然後,選擇默認的“PPP:Internet,Windows NT Server,Windows 98”,在高級選項中可以設置該協議其它功能選項;最後,單擊“確定”按鈕即可。
PPP工作流程
當用戶撥號接入 ISP 時,路由器的調制解調器對撥號做出確認,並建立一條物理連接(底層up)。  話流程[1] PC 機向路由器發送一系列的 LCP 分組(封裝成多個 PPP 幀)。
這些分組及其響應選擇一些 PPP 參數,和進行網絡層配置(此前如有PAP或CHAP驗證先要通過驗證),NCP 給新接入的 PC機分配一個臨時的 IP 地址,使 PC 機成爲因特網上的一個主機。
通信完畢時,NCP 釋放網絡層連接,收回原來分配出去的 IP 地址。接着,LCP 釋放數據鏈路層連接。最後釋放的是物理層的連接。
PPP和HDLC之間最主要的區別
PPP是面向字節的,HDLC是面向位的。
PPP的特點
PPP協議是一種點——點串行通信協議。PPP具有處理錯誤檢測、支持多個協議、允許在連接時刻協商IP地址、允許身份認證等功能,還有其他。PPP提供了3類功能:成幀;鏈路控制協議LCP;網絡控制協議NCP。PPP是面向字符類型的協議。
PPP協議的幀格式

標誌字段    地址字段    控制字段    協議    信息部 分    FCS    標誌字段
PPP應用範圍
PPP是一種多協議成幀機制,它適合於調制解調器、HDLC位序列線路、SONET和其它的物理層上使用。它支持錯誤檢測、選項協商、頭部壓縮以及使用HDLC類型幀格式(可選)的可靠傳輸。
PPP提供了三類功能:
1 成幀:他可以毫無歧義的分割出一幀的起始和結束。
2 鏈路控制:有一個稱爲LCP的鏈路控制協議,支持同步和異步線路,也支持面向字節的和麪向位的編碼方式,可用於啓動路線、測試線路、協商參數、以及關閉線路。
3 網絡控制:具有協商網絡層選項的方法,並且協商方法與使用的網絡層協議獨立。
PPP的兩種認證方式
一種是PAP,一種是CHAP。相對來說PAP的認證方式安全性沒有CHAP高。PAP在傳輸password是明文的,而CHAP在傳輸過程中不傳輸密碼,取代密碼的是hash(哈希值)。PAP認證是通過兩次握手實現的,而CHAP則是通過3次握手實現的。PAP認證是被叫提出連接請求,主叫響應。而CHAP則是主叫發出請求,被叫回復一個數據包,這個包裏面有主叫發送的隨機的哈希值,主叫在數據庫中確認無誤後發送一個連接成功的數據包連接
PPP 常見問題
1)什麼是LCP?
鏈路控制協議(LCP) LCP 建立點對點鏈路,是 PPP 中實際工作的部分。LCP 位於物理層的上方,負責建立、配置和測試數據鏈路連接。LCP 還負責協商和設置 WAN 數據鏈路上的控制選項,這些選項由 NCP 處理。
2)NCP是什麼?
PPP允許多個網絡協議共用一個鏈路,網絡控制協議 (NCP) 負責連接PPP(第二層)和網絡協議 (第三層)。對於所使用的每個網絡層協議,PPP 都分別使用獨立的 NCP來連接。例如,IP 使用 IP 控制協議 (IPCP),IPX 使用 Novell IPX 控制協議 (IPXCP)。
PPP配置方法
PPP基本配置
1, 啓用ppp
RouterTest#config terminal
Enter configuration commands,one per line. End with CNTL/Z.
RouterTest(config)#interface serial 0/0
RouterTest(config-if)#encapsulation ppp
RouterTest(config-if)#
2, 地址配置命令
RouterTest(config-if)#ip address 10.1.1.1 255.255.255.0
PAP配置實例
Router(config)#hostname RouterA
RouterA(config)#RouterB password itsasecret
RouterA(config)#interface Async 0
RouterA(config-if)#encapsulation ppp
RouterA(config-if)#ip address 10.0.0.1 255.255.255.0
RouterA(config-if)#dialer-map ip 10.0.0.2 name RouterB 5551234
RouterA(config-if)#username RouterA password itsasecret2
Router(config)#hostname RouterB
RouterB (config)#RouterA password itsasecret
RouterB (config)#interface Async 0
RouterB (config-if)#encapsulation ppp
RouterB (config-if)#ip address 10.0.0.2 255.255.255.0
RouterB (config-if)#dialer-map ip 10.0.0.1 name RouterA 5551234
RouterB (config-if)#username RouterB password itsasecret2
CHAP配置實例
Router(config)#hostname RouterA
RouterA(config)#RouterB password itsasecret
RouterA(config)#interface Async 0
RouterA(config-if)dialer in-band
RouterA(config-if)#encapsulation ppp
RouterA(config-if)#ppp authentication chap
RouterA(config-if)#ip address 10.0.0.1 255.255.255.0
RouterA(config-if)#dialer-map ip 10.0.0.2 name RouterB 5551234
RouterA(config-if)#username RouterA password itsasecret2
Router(config)#hostname RouterB
RouterB (config)#RouterA password itsasecret
RouterB (config)#interface Async 0
RouterB(config-if)dialer in-band
RouterB (config-if)#encapsulation ppp
RouterB (config-if)#ppp authentication chap
RouterB (config-if)#ip address 10.0.0.2 255.255.255.0
RouterB (config-if)#dialer-map ip 10.0.0.1 name RouterA 5551234
RouterB (config-if)#username RouterB password itsasecret2
同時啓用CHAP和PAP
Router(config-if)#ppp authentication chap pap
配置PPP回撥
使用壓縮
cisco支持的壓縮方法:
Predictor:先判斷數據是否已經被壓縮過。如果數據被壓縮過,則立即將其發送出去,而不浪費時間對已經壓縮過的數據進行壓縮。
Stacker:一種基於Lempel-Ziv(LZ)的壓縮算法,對每種數據類型,只發送一次有關其在數據流中的位置。接收方根據這些信息重新組織數據流。
MPPC:MPPC協議(RFC2118)讓cisco路由器器能夠與microsoft客戶端交換壓縮後的數據,它使用一種基於LZ的壓縮算法
TCP報頭壓縮:也叫Van Jacobson壓縮,只用於壓縮tcp報頭。
配置壓縮
Router(config)#interface serial2
Router(config-if)#compress {predictor|stac|mppc}
Or
Router(config)#interface async
Router(config-if)#ip tcp header-compression
Or
Router(config)#interface async
Router(config-if)#ip tcp header-compression passive
該命令告訴路由器,僅當從對方那裏收到壓縮後的報頭後,才使用tcp報頭壓縮。
多鏈路PPP
通過使用多鏈路PPP,可以將多條連接捆綁成一條虛擬連接。
Router(config-if)#ppp multilink
Router(config-if)#dialer load-threshold load [outbound | inbound | either]
命令dialer load-threshol load指定在什麼情況下將更多的B信道加入到MLP鏈路束中。當所有B信道的總負載超過指定的閥值後,撥號接口(BRI或PRI)將信道加入到多鏈路束中。
同樣,如果總負載低於閥值,將拆除B信道。
參數load是接口的平均負載,其取值爲1(沒有負載)到255(滿載)。
參數outbound(默認值)指定計算負載時只考慮出站數據流;參數inbound指定只考慮入站數據流;either指定計算負載時,選擇出站負載和入站負載中較大的那個。
PPP故障排查命令
debug ppp negotiation-確定客戶端是否可以通過PPP協商; 這是您檢查地址協商的時候。
debug ppp authentication-確定客戶端是否可以通過驗證。如果您在使用Cisco IOS軟件版本11.2之前的一個版本,請發出debug ppp chap命令。
debug ppp error - 顯示和PPP連接協商與操作相關的協議錯誤以及統計錯誤。
debug aaa authentication-要確定在使用哪個方法進行驗證(應該是RADIUS,除非RADIUS服務器發生故障),以及用戶是否通過驗證。
debug aaa authorization-要確定在使用哪個方法進行驗證,並且用戶是否通過驗證。
debug aaa accounting-查看發送的記錄。
debug radius-查看用戶和服務器交換的屬性。
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章