您好,登錄后才能下訂單哦!
PPP中的認證方式有pap和chap兩種,這兩種認證既可以單獨使用也可以結
合使用。并且既可以進行單向認證也可以進行雙向認證。
pap是兩次握手,認證首先由被認證方發起認證請求,將自己的用戶名和密碼以
明文的方式發送給主認證方。然后,主認證方接受請求,并在自己的本地用戶數據庫里查找是否有對應的條目,如果有就接受請求。如果沒有,就拒絕請求。這種認證方式是不安全的,很容易引起密碼的泄露,但是,相對于CHAP認證方式來說,節省了寶貴的鏈路帶寬。比如說現在的Internet撥號認證接入方式就是PAP認證。
chap是三次握手,認證首先由主認證方發起認證請求,向被認證方發送“挑戰”
字符串(一些經過摘要算法加工過的隨機序列)。然后,被認證方接到主認證方的認證請求后,將用戶名和密碼(這個密碼是根據“挑戰”字符串進行MD5加密的密碼)發回給主認證方。最后,主認證方接收到回應“挑戰”字符串后,在自己的本地用戶數據庫中查找是否有對應的條目,并將用戶名對應的密碼根據“挑戰”字符串進行MD5加密,然后將加密的結果和被認證方發來的加密結果進行比較。如果兩者相同,則認為認證通過,如果不同則認為認證失敗 先來講下pap 認證
1、單向認證
R1只做如下配置(驗證服務端)
在配置模式下設定用戶名和密碼(用戶名和密碼隨意)
R1(config)#username a password 123
在端口模式下進行協議的封裝和認證方式的指定
R1(config-if)#encapsulation ppp R1(config-if)#ppp authentication pap R2只做如下配置(驗證客戶端)
在端口模式下進行協議的封裝和發送驗證信息(對方設置的用戶名和密碼)
R2(config-if)#encapsulation ppp
R2(config-if)#ppp pap sent-username a password 123
這樣就可以完成pap的單向認證
2、雙向認證
(其實做完上面的步驟仔細一想,如果兩邊既是服務端又是客戶端口,這樣就是雙向認證了,不必看下面的也知道該怎么配雙向認證了)
R1只做如下配置(既是驗證服務端又是客戶端)
在配置模式下設定用戶名和密碼(用戶名和密碼隨意)
R1(config)#username a password 123
在端口模式下進行協議的封裝、認證方式的指定和發送驗證信息(對方設置的用戶名和密碼)
R1(config-if)#encapsulation ppp R1(config-if)#ppp authentication pap
R1(config-if)#ppp pap sent-username b password 456 R2只做如下配置(既是驗證服務端又是客戶端)
在配置模式下設定用戶名和密碼(用戶名和密碼隨意)
R2(config)#username b password 456
在端口模式下進行協議的封裝、認證方式的指定和發送驗證信息(對方設置的用戶名和密碼)
R2(config-if)#encapsulation ppp R2(config-if)#ppp authentication pap
R2(config-if)#ppp pap sent-username a password 123
這樣即可完成pap的雙向認證 再來說說chap認證
1、單向認證
R1只做如下配置(驗證服務端)
在配置模式下設定用戶名和密碼(用戶名和密碼隨意)
R1(config)#username a password 123
在端口模式下進行協議的封裝和認證方式的指定
R1(config-if)#encapsulation ppp R1(config-if)#ppp authentication chap R2只做如下配置(驗證客戶端)
在端口模式下進行協議的封裝和認證時的用戶名和密碼指定(記住這里不發送用戶名和密碼,而是發送一個經過加密密碼的一個字符串)
R2(config-if)#encapsulation ppp R2(config-if)#ppp chap hostname a R2(config-if)#ppp chap password 123
這樣就可以完成chap的單向認證
2、雙向認證
(這里和pap有所有同,請注意)
R1只做如下配置(既是驗證服務端又是客戶端)
在配置模式下設定用戶名和密碼(用戶名可隨意且可以不同但密碼一定相同,因為最終核對的是同一個密碼加密后散列函數,如果密碼都不同,認證肯定失敗)
R1(config)#username a password 123
在端口模式下進行協議的封裝和認證方式的指定
R1(config-if)#encapsulation ppp R1(config-if)#ppp authentication chap
R1(config-if)#ppp chap hostname b //這里只需指定用戶名就可以,因為密
碼雙方都知道
R2只做如下配置(既是驗證服務端又是客戶端)
在配置模式下設定用戶名和密碼(同上)
R2(config)#username b password 123
在端口模式下進行協議的封裝和認證時的用戶名和密碼指定(記住這里不發送用戶名和密碼,而是發送一個經過加密密碼的一個字符串,也可以解釋為什么這里沒有sent-username命令)
R2(config-if)#encapsulation ppp R2(config-if)#ppp authentication chap R2(config-if)#ppp chap hostname a //同上
這樣即可完成chap的雙向認證
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。