PPP中的pap和chap认证

 
实验拓扑:
R1------------R2
 
实验说明:PPP中的认证方式有pap和chap两种,这两种认证既可以单独使用也可以结合使用。并且既可以进行单向认证也可以进行双向认证。
                
                 pap是通过验证远端的用户名和密码是否匹配来进行验证
chap则是发送一个挑战包,然后远端通过自己的数据库的用户名和密码利用md5进行计算后返还一个数值,然后在发送方验证这个数值是否和自己计算出来的数值是否一致进行验证
 
基本配置:
 
R1:
!
hostname R1----------------------------------------------------------设置主机名为“R1”
!
interface Serial1/0
 ip address 1.1.1.1 255.255.255.0
 encapsulation ppp-------------------------------------------------设置封装为ppp
 
R2:
hostname R2
!
interface Serial1/0
 ip address 1.1.1.2 255.255.255.0
 encapsulation ppp
 
通过上面的配置,在没有启用任何认证的情况下,链路是通的。
 
配置步骤:
 
1.       在两台路由器上进行pap认证:
如果我们进行单项认证的话配置应该如下
R1为认证的服务器端,需要建立本地口令数据库,并且开始pap认证。
R1(config)#username R2 password gairuhe------------------------建立本地口令数据库
R1(config)#int s1/0
R1(config-if)#ppp authentication pap--------------------------------要求进行PAP认证
   在这样的配置下,我们可以看到链路已经down了:
   R1(config-if)#
*Aug 23 16:45:12.639: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1/0, changed state to down
 
R2为认证的客户端,需要发送用户名和密码来匹配服务器端的口令数据库
此时我们在R2上加上如下的配置:
 
   R2(config)#int s1/0
R2(config-if)#ppp pap sent-username R2 password gairuhe------发送用户名和密码
R2(config-if)#
*Aug 23 16:47:48.635: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1/0, changed state to up
 
此时链路已经起来,我们仅在R1上做了认证,而在R2上没有进行认证。这就是pap的单向认证。
 
Pap的双向认证:
 
Pap的双向认证其实就是将两端同时都配置为认证服务器端和认证客户端。在上面实验的基础上,我们只要将R2配置成服务器端,将R1配置成客户端即可。
 
R2(config)#username R1 password  gairuhe    
R2(config)#int s1/0
R2(config-if)#ppp authentication pap
R2(config-if)#
*Aug 23 16:52:29.843: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1/0, changed state to down
 
R1(config-if)#int s1/0
R1(config-if)#ppp pap sen
R1(config-if)#ppp pap sent-username R1 password gairuhe
R1(config-if)#
*Aug 23 16:53:08.343: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1/0, changed state to up
 
2.在上面实验的基础上,将R1改为chap认证,而R2不变。
  打开debug ppp authentication信息。在R1上进行如下的改变
 
R1(config-if)#no ppp authentication pap
R1(config-if)#no ppp pap sent-username R1 password gairuhe
R1(config-if)#ppp authentication chap
 
我们发现,链路状态并没有改变,而且也没有任何的debug信息产生。这就是说明了在链路已经建立起来后,是无需进行再次的认证的。
 
我们把R1的是s1/0口shut down 后在no shut down,看看情况
R1(config-if)#shut
R1(config-if)#no shut
R1#
*Aug 23 17:00:19.663: Se1/0 PPP: Authorization required
 
此时发现链路已经断开,并且要求需要PPP的认证
 
3.在两台路由器上进行chap认证
首先将R2的pap认证关闭
R2(config-if)#no ppp authen pap
R2(config-if)#no ppp pap sent-username R2 password gairuhe
   我们通过debug信息看到
   R1#  
*Aug 23 17:07:24.031: Se1/0 PPP: Authorization required
*Aug 23 17:07:24.063: Se1/0 CHAP: O CHALLENGE id 42 len 23 from "R1"
*Aug 23 17:07:24.095: Se1/0 CHAP: I RESPONSE id 42 len 23 from "R2"
*Aug 23 17:07:24.099: Se1/0 PPP: Sent CHAP LOGIN Request
*Aug 23 17:07:24.103: Se1/0 PPP: Received LOGIN Response FAIL
*Aug 23 17:07:24.107: Se1/0 CHAP: O FAILURE id 42 len 25 msg is "Authentication failed"
 
我们看到chap认证是通过发送一个challenge信息来进行认证。在R2上启用chap认证
 
R2(config)#int s1/0
R2(config-if)#ppp authentication chap
R2(config)#
*Aug 23 17:11:41.839: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1/0, changed state to up
这个时候链路就已经通了。
 
4.两种认证同时启用
  使用的命令为:
  R2(config-if)#ppp authentication chap pap  或者
R2(config-if)#ppp authentication pap chap
如果同时启用了两种验证协议,则在配置中指定的第一种验证方式在链路协商过程中将被请求。如果另一端设备建议使用第二种验证方法,或者第一种验证方法没有通过,那么两台设备之间就开始尝试第二种验证方法。
这两个认证同时启用是只需要一种认证通过即可建立起链路通信。
总结:
pap是通过发送用户名和密码进行匹配,我们就必须使用sent-username  ** password **这条命令,并且这个用户名和密码可以通过抓包软件抓到,是明文传输的
chap的认证过程(单向认证,R2为服务器端,R1为客户端)
R2首先发一个挑战包给R1,包的内容包括:01(标识符,表示挑战分组)+ID(序列号)+随机数+自己的用户名(R2)
R1接收到这个包后,将挑战包的用户名(R2),随机数,ID和本地数据库的密码gairuhe进行计算,得出MD5的值,然后发送给R2
这个回应的分组包括:02(回应标识符)+ID(和R2的一样)+hash(MD5的计算值)+自己的用户名(R1)
R2收到后,通过ID找到它发送的挑战包,然后把ID,随机数,以及密码(通过本地数据库查找R1对应的密码)进行计算,得出MD5的值
然后验证
因此chap的安全性高于pap

PPP中的pap和chap认证相关推荐

  1. PAP和CHAP认证方式

    目录 一.实验目的和要求 二.实验原理 三.主要仪器设备和实验环境 四.实验内容及步骤 4.2基础实验(PAP认证): 4.3基础实验(CHAP认证): 4.3扩展实验(三台路由器之间的CHAP认证) ...

  2. PAP与CHAP认证

    一.PPP介绍 PPP(point-to-point protocol)是一种点到点链路层协议,主要用于在全双工的同异步链路上进行点到点的数据传输. ##在PPP中主要由三类协议簇组成 1.链路控制协 ...

  3. PAP和CHAP认证是什么

    简介 PAP(口令验证协议 Password Authentication Protocol)是一种简单的明文验证方式.NAS(网络接入服务器,Network Access Server)要求用户提供 ...

  4. PAP认证、CHAP认证

    概述 实验目标 掌握PAP.chap认证方式的配置与验证方法 实验描述 路由器(带串口) 2 台 V.35 线缆(DTE/DCE) 1 对 2技术分析 PPP 协议位于 OSI 七层模型的数据链路层, ...

  5. pap认证过程_PPP中的PAP认证

    PPP中的PAP认证 一.PAP认证介绍 PAP全称为:Password Authentication Protocol(口令认证协议),是PPP中的基本认证协议.PAP就是普通的口令认证,要求将密钥 ...

  6. 在CISCO路由器上实现CHAP认证

    在配置PPP验证时有PAP和CHAP的选择,其中PAP为明文传送用户名和口令,不安全:而CHAP则采用哈希值进行验证,口令不会在网上传送,所以安全性比较高.          网络拓扑图如下所示:   ...

  7. 计算机网络进阶 ---- 网络类型 ---- 二层封装协议 ---- HDLC ---- PPP ---- pap认证 ---- chap认证 ---- 详解

    一.网络类型: [1]点到点 (Peer to Peer – p2p) ---- 在一个网段中,只能部署两个节点: [2]MA(Multiple Access) ---- 多路访问 ---- 一个网段 ...

  8. 华为ccie网络工程师中技术要点PPP中PAP和CHAP的区别

    华为ccie网络工程师中技术要点PPP中PAP和CHAP的区别,PPP(点到点协议)协议:是为在同等单元之间传输数据包这样的简单链路设计的链路层协议.这种链路提供全双工操作,并按照顺序传递数据包.设计 ...

  9. PPP原理 PAP认证 CHAP认证

    目录 PPP的基本构架 PPP主要由三类协议族组成 PPP应用场景 PPP缺省配置 配置PAP认证 操作步骤 配置认证方 配置被认证方 配置CHAP认证 操作步骤 配置认证方 配置被认证方 认证方没有 ...

最新文章

  1. 被神话的大数据——从大数据(big data)到深度数据(deep data)思维转变
  2. php读取远程二进制文件,php 读取二进制文件
  3. [C#参考]锁定lock
  4. canal mysql重置_canal: 首先装完阿里的canal,然后数据库同步,仅供学习参考
  5. 年末裁员事件背后的启示录(2)
  6. Centos 7 docker 拉取镜像慢
  7. Fiori应用deploy到云上后在Chrome开发者工具里Source标签页的外观
  8. python rgb led控件_Raspberry Pi-用树莓派实现RGB LED的颜色控制——Python版本-电路城论坛 - 电子工程师学习交流园地...
  9. 【转】带你玩转Visual Studio——02.带你新建一个工程
  10. URL中使用IPv4,IPv6和主机名
  11. Java内嵌Groovy脚本引擎进行业务规则剥离(一)
  12. 重大网络教育计算机基础章节答案,网络教育计算机基础1答案
  13. 【人脸识别】基于matlab GUI人脸实时检测与跟踪【含Matlab源码 673期】
  14. 刷课在线支付系统(新手入门编写,大佬勿喷)
  15. c语言质数咋求,C语言求质数的方法
  16. apt-get autoremove remove 新手收割者
  17. 你每天应该吃多少水果?
  18. 麒麟V10SP1的国产化Qt适配
  19. 跑步耳机怎么选、最好用的跑步专用耳机分享
  20. java的markword_【转帖】Java工具结构与锁实现原理及MarkWord详解

热门文章

  1. 计算机图形学 实验二 三维模型读取与控制【OpenGL】
  2. 机器学习与分布式机器学习_机器学习治疗抑郁症
  3. Istio-PilotDiscovery服务的创建
  4. Node课程(3,2,1,8,3)
  5. blender中文三维立体文字制作方法
  6. vim中Ctrl+t和Ctrl+o快捷键的区别
  7. win 10 取消用户帐户控制
  8. 好系统教你如何更改Windows 10中的用户帐户控制(UAC)设置
  9. win11系统用户账户控制总是弹出来?
  10. 若是所有散户都不去打新会怎样?