同时启用chap和pap两种认证
- 格式:doc
- 大小:44.50 KB
- 文档页数:4
PPP的CHAP认证和PAP认证Chap 和pap 认证有很多种,有单项的,有双向的。
单项chap认证。
(R1作为服务器端)R1(config)#interface s4/0R1(config-if)#ip address 192.168.1.1 255.255.255.0R1(config-if)#encapsulation ppp \\封装PPP协议R1(config-if)#ppp authentication chap \\开启认证,认证方式为chap认证R1(config-if)#exitR1(config)#username R2 password 0 123456 \\创建用户R2 ,用于识别认证客户端R2(config)#interface s4/0R2(config-if)#ip address 192.168.1.2 255.255.255.0R2(config-if)#encapsulation ppp \\封装PPP协议R2(config-if)#exitR2(config)#username R1 password 0 123456 \\创建用户R1,用于识别想服务器端单项pap 认证。
(R1作为服务器端)R1(config)#interface s4/0R1(config-if)#ip address 192.168.1.1 255.255.255.0R1(config-if)#encapsulation ppp \\封装PPP协议R1(config-if)#ppp authentication pap \\开启认证,认证方式为pap (服务器断开启)R1(config-if)#exitR1(config)#username R2 password 0 123456 \\创建的用户为客户端的主机名R2(config)#interface s4/0R2(config-if)#ip address 192.168.1.2 255.255.255.0R2(config-if)#encapsulation pppR2(config-if)#ppp pap sent-username R2 password 0 123456 \\定义客户端所要发送的用户名和密码,一般是发送跟自己主机名一样的的用户。
linux下PPPD拨号研究pppd脚本简介pppd脚本拨号会涉及到4个脚本,和PPP连接关系密切的有两个脚本是chat和options 两个脚本另外两个是pppd认证的脚本:chap-secrets、pap-secrets。
其中,chap-secrets 和pap-secrets是两种不同的认证方式,chat脚本是用来进行AT呼叫和控制的脚本,而options脚本就影响PPP连接的,指定了连接使用的设备、使用的控制字符传输速率、指定了硬件加速、溢出控制等。
options脚本/dev/ttyUSB0 //指定连接使用的设备115200 //设置连接使用的控制字符传输速率crtscts //告诉ppp使用modem的硬件流量控制connect '/mnt/iRTK/bin/chat -s -v -f /etc/ppp/cc864sr-connect-chat'//指定了要使用的chat脚本的位置debug //加入调试信息nodetachipcp-accept-localipcp-accept-remoteusepeerdns //使用服务器端协商的DNSdefaultroute //使用默认线路user "card" //电信“card”,移动“cmnet”,联通3G“3gnet”chat脚本一个chat脚本都是由字符串对来组成的。
前面的字符串都是期望获取的串,紧跟的是发送的字符串。
TIMEOUT 15 //延时ABORT "DELAYED"//收到字符串“BUSY”、“NO ANSWER”、“RINGING”就退出执行ABORT "BUSY"ABORT "ERROR"ABORT "NO DIALTONE"ABORT "NO CARRIER"TIMEOUT 40'' \rATOK ATS0=0 //禁用自动接听OK ATE1 //打开回显OK ATDT#777 //所需的拨号号码为#777#OK AT+CGDCONT=1,"IP","CMNET"CONNECT ''不同的运行商拨号的中心号码是不同的,以下这个是每个运行商的拨号中心号码:认证脚本一般情况下,PPP连接是需要进行身份认证的。
PPP点对点协议(PPP)为在点对点连接上传输多协议数据包提供了一个标准方法。
PPP 最初设计是为两个对等节点之间的 IP 流量传输提供一种封装协议。
在 TCP-IP 协议集中它是一种用来同步调制连接的数据链路层协议(OSI 模式中的第二层),替代了原来非标准的第二层协议,即 SLIP。
除了 IP 以外 PPP 还可以携带其它协议,包括 DECnet 和 Novell 的Internet 网包交换(IPX)。
简介PPP:点对点协议(PPP:Point to Point Protocol)点对点协议(PPP)为在点对点连接上传输多协议数据包提供了一个标准方法。
PPP 最初设计是为两个对等节点之间的IP 流量传输提供一种封装协议。
在TCP-IP 协议集中它是一种用来同步调制连接的数据链路层协议(OSI 模式中的第二层),替代了原来非标准的第二层协议,即S LI P。
除了IP 以外 PPP 还可以携带其它协议,包括DECnet 和 Novell 的Internet 网包交换(IPX)。
PPP 主要由以下几部分组成封装:一种封装多协议数据报的方法。
PPP 封装提供了不同网络层协议同时在同一链路传输的多路复用技术。
PPP 封装精心设计,能保持对大多数常用硬件的兼容性,克服了SLIP不足之处的一种多用途、点到点协议,它提供的WAN数据链接封装服务类似于LAN所提供的封闭服务。
所以,PPP 不仅仅提供帧定界,而且提供协议标识和位级完整性检查服务。
链路控制协议:一种扩展链路控制协议,用于建立、配置、测试和管理数据链路连接。
网络控制协议:协商该链路上所传输的数据包格式与类型,建立、配置不同的网络层协议;配置:使用链路控制协议的简单和自制机制。
该机制也应用于其它控制协议,例如:网络控制协议(NCP)。
为了建立点对点链路通信,PPP 链路的每一端,必须首先发送LCP 包以便设定和测试数据链路。
在链路建立,LCP 所需的可选功能被选定之后,PPP 必须发送NCP 包以便选择和设定一个或更多的网络层协议。
1. 前言PAP和CHAP协议是目前的在PPP(MODEM或ADSL拨号)中普遍使用的认证协议,CHAP 在RFC1994中定义,是一种挑战响应式协议,双方共享的口令信息不用在通信中传输;PAP 在RFC1334中定义,是一种简单的明文用户名/口令认证方式。
2. PAPPAP全称为:Password Authentication Protocol(口令认证协议),是PPP中的基本认证协议。
PAP就是普通的口令认证,要求将密钥信息在通信信道中明文传输,因此容易被sniffer监听而泄漏。
PAP协商选项格式:0 1 2 30 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| Type | Length | Authentication-Protocol |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+对于PAP,参数为:Type = 3,Length = 4,Authentication-Protocol = 0xc023(PAP)PAP数据包格式:0 1 2 30 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| Code | Identifier | Length |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| Data ...+-+-+-+-+Code:1字节,表示PAP包的类型1 认证请求2 认证确认3 认证失败Identifier:ID号,1字节,辅助匹配请求和回应Length:2字节,表示整个PAP数据的长度,包括Code, Identifier, Length和Data字段。
点到点协议(Point to Point Protocol,PPP)是IETF(Internet Engineering Task Force,因特网工程任务组)推出的点到点类型线路的数据链路层协议。
它解决了SLIP中的问题,并成为正式的因特网标准。
PPP协议在RFC 1661、RFC 1662和RFC 1663中进行了描述。
PPP支持在各种物理类型的点到点串行线路上传输上层协议报文。
PPP有很多丰富的可选特性,如支持多协议、提供可选的身份认证服务、可以以各种方式压缩数据、支持动态地址协商、支持多链路捆绑等等。
这些丰富的选项增强了PPP的功能。
同时,不论是异步拨号线路还是路由器之间的同步链路均可使用。
因此,应用十分广泛。
下面是我查的关于PPP协议认证的一些知识1。
什么情况我们可以用show cdp nei看到自己直边的邻居呢,邻居的发现对我们在排查问题时很有帮助,我们可以通过我们左右的邻居,来判断是那台设备出现问题,只要我们在接口上把物理端口打开,然后DCE端配上时钟就可以发现邻居。
Router(config-if)#do sh cdp neiCapability Codes: R –Router, T –Trans Bridge, B –Source Route Bridge S – Switch, H – Host, I – IGMP, r – RepeaterDevice ID Local Intrfce Holdtme Capability Platform Port ID R2 Ser 1/0 159 R 7206VXR Ser 1/0在上图中R2为我们的邻居,本地Ser1/0与R2的Ser1/0相连,R2的设备型号为7206VXR,为Router.Router#debug cdp adjCDP neighbor info debugging is onEnter configuration commands, one per line. End with CNTL/Z.Router(config)#int s1/0Router(config-if)#shRouter(config-if)#*Jan 29 17:06:09.883: CDP-AD: Interface Serial1/0 going down 由于shutdown的原因使的邻居断开*Jan 29 17:06:09.911: CDP-AD: Interface Serial1/0 going down*Jan 29 17:06:11.887: %LINK-5-CHANGED: Interface Serial1/0, changed state to administratively down*Jan 29 17:06:12.887: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1/0, changed state to downRouter(config-if)#no shRouter(config-if)#*Jan 29 17:06:19.055: CDP-AD: Interface Serial1/0 coming up*Jan 29 17:06:21.015: %LINK-3-UPDOWN: Interface Serial1/0, changed state to up*Jan 29 17:06:21.019: CDP-AD: Interface Serial1/0 coming up*Jan 29 17:06:22.019: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1/0, changed state to upRouter(config-if)#do debug cdp pa cdp packet informationCDP packet info debugging is onRouter(config-if)#*Jan 29 17:06:56.167: CDP-PA: Packet received from R2 on interface Serial1/0*Jan 29 17:06:56.167: **Entry found in cache***Jan 29 17:06:58.415: CDP-PA: version 2 packet sent out on Serial1/0 2。
PAP认证和CHAP认证概述一、PAP认证协议(PasswordAuthenticationProtocol,口令认证协议):PAP认证过程非常简单,二次握手机制。
使用明文格式发送用户名和密码。
发起方为被认证方,可以做无限次的尝试(暴力破解)。
只在链路建立的阶段进行PAP认证,一旦链路建立成功将不再进行认证检测。
目前在PPPOE拨号环境中用的比较常见。
PAP认证过程:PAP认证过程图首先被认证方向主认证方发送认证请求(包含用户名和密码),主认证方接到认证请求,再根据被认证方发送来的用户名去到自己的数据库认证用户名密码是否正确,如果密码正确,PAP认证通过,如果用户名密码错误,PAP认证未通过。
二、CHAP认证协议(ChallengeHandshakeAuthenticationProtocol,质询握手认证协议)CHAP认证过程比较复杂,三次握手机制。
使用密文格式发送CHAP认证信息。
由认证方发起CHAP认证,有效避免暴力破解。
在链路建立成功后具有再次认证检测机制。
目前在企业网的远程接入环境中用的比较常见。
CHAP认证过程:CHAP认证第一步:主认证方发送挑战信息【01(此报文为认证请求)、id(此认证的序列号)、随机数据、主认证方认证用户名】,被认证方接收到挑战信息,根据接收到主认证方的认证用户名到自己本地的数据库中查找对应的密码(如果没有设密码就用默认的密码),查到密码再结合主认证方发来的id和随机数据根据MD5算法算出一个Hash值。
CHAP认证过程图:CHAP认证第二步:被认证方回复认证请求,认证请求里面包括【02(此报文为CHAP认证响应报文)、id(与认证请求中的id相同)、Hash值、被认证方的认证用户名】,主认证方处理挑战的响应信息,根据被认证方发来的认证用户名,主认证方在本地数据库中查找被认证方对应的密码(口令)结合id找到先前保存的随机数据和id根据MD5算法算出一个Hash值,与被认证方得到的Hash值做比较,如果一致,则认证通过,如果不一致,则认证不通过。
PPP验证一:配置步骤:1:检验每台路由器是否已经分配主机名。
要分配主机名,可在全局配置模式下输入hostname name此名称必须与链路另一端的身份验证路由器所期望的用户名匹配2:在每台路由器上使用username name password password全局配置命令定义期望从远程路由器获得的用户名和口令。
如:username R3 password cisco注意:R3为对端路由器的主机名,cisco为密码,两端的密码必须相同。
3:使用PPP authentication {chap | chap pap | pap chap | pap}接口配置命令配置PPP身份认证。
二:PPP证方式:PAP 和CHAPPAP是双向握手,它为远程节点提供了建立其身份标识的简单方法。
PAP仅在初始链路建立期间执行。
CHAP使用三次握手的CHAP发生在链路建立时,并在其后定期使用三次握手来检验远程节点的标识。
如果配置了PPP authentication chap pap路由器将尝试试使用chap验证所有的传入的PPP会话。
如果远程设备不支持chap,路由器将尝试使用pap验证ppp会话。
如果设备不支持chap也不支持pap,身份验证将失败。
并且ppp会话将关闭。
如果配置了PPP authentication pap chap路由器将尝试试使用pap验证所有的传入的PPP会话。
如果远程设备不支持pap,路由器将尝试使用chap验证ppp会话。
如果设备不支持任何一种协议,身份验证将失败。
并且ppp会话将关闭。
注:如果同时启用了两种方法,链路协商期间会要求使用指定的第一种方法。
如果对方提出要求使用第二种方法或拒绝第一种方法,则会尝试第二种方法。
三:配置实验环境:GNS 注:在模拟器下看不到debug输入设备:cisco c3600路由器两台R2配置:Hostname R2username R3 password ciscointerface Serial0/0ip address 10.1.1.1 255.255.255.0encapsulation pppserial restart-delay 0clock rate 64000 //需要在其中一个配置时钟ppp authentication chapR3配置:Hostname R3username R2 password ciscointerface Serial0/0ip address 10.1.1.2 255.255.255.0encapsulation pppserial restart-delay 0no fair-queueppp authentication chap四:检验身份验证通过debug ppp authentication查看认证协商过程,下面是协议配置错误时的输出(此时还没有配置两个路由器的主机名,也没有添加认证用户名和密码。
路由器配置——PAP与CHAP认证⼀、实验⽬的:掌握PAP与CHAP认证配置⼆、拓扑图:三、具体步骤配置:(1)R1路由器配置:Router>enable --进⼊特权模式Router#configure terminal --进⼊全局配置模式Enter configuration commands, one per line. End with CNTL/Z.Router(config)#hostname R1 --修改路由器名为R1R1(config)#interface l0 --进⼊回环端⼝R1(config-if)#ip address 192.168.1.254 255.255.255.0 --配置ip地址R1(config-if)#no shutdown --激活端⼝R1(config-if)#exit --返回上⼀级R1(config)#interface s0/0/0 --进⼊端⼝R1(config-if)#ip address 192.168.12.1 255.255.255.0 --为端⼝配置ip地址R1(config-if)#clock rate 64000 --设置时钟同步速率R1(config-if)#no shutdown --激活端⼝%LINK-5-CHANGED: Interface Serial0/0/0, changed state to downR1(config-if)#exit --返回上⼀级R1(config)#route rip --开启rip服务R1(config-router)#version 2 --版本2R1(config-router)#no auto-summary --关闭路由⾃动汇总R1(config-router)#network 192.168.1.0 --添加直连⽹段到ripR1(config-router)#network 192.168.12.0R1(config-router)#exit --返回上⼀级R1(config)#username abc1 password 456 --在中⼼路由器R1上为远程路由器R2设置⽤户名和密码R1(config)#interface s0/0/0 --进⼊端⼝R1(config-if)#encapsulation ppp --封装端⼝为pppR1(config-if)#ppp authentication pap --在R1上,配置PAP 验证R1(config-if)#ppp pap sent-username abc password 123 --在中⼼路由器R1上为远程路由器R2设置⽤户名和密码R1(config-if)#end --返回特权模式%LINK-5-CHANGED: Interface Loopback0, changed state to up%LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback0, changed state to upR1#%SYS-5-CONFIG_I: Configured from console by console%LINK-5-CHANGED: Interface Serial0/0/0, changed state to up%LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0/0/0, changed state to up(2)R2路由器配置:Router>enable --进⼊特权模式Router#configure terminal --进⼊全局配置模式Enter configuration commands, one per line. End with CNTL/Z.Router(config)#hostname R2 --修改路由器名为R2R2(config)#interface l0 --进⼊回环端⼝R2(config-if)#ip address 192.168.2.254 255.255.255.0 --配置ip地址R2(config-if)#no shutdown --激活端⼝R2(config-if)#exit --返回上⼀级R2(config)#interface s0/0/0 --进⼊端⼝R2(config-if)#ip address 192.168.12.2 255.255.255.0 --为端⼝配置ip地址R2(config-if)#no shutdown --激活端⼝R2(config-if)#interface s0/0/1 --进⼊端⼝R2(config-if)#ip address 192.168.24.2 255.255.255.0 --为端⼝配置ip地址R2(config-if)#clock rate 64000 --设置时钟同步速率R2(config-if)#no shutdown --激活端⼝%LINK-5-CHANGED: Interface Serial0/0/1, changed state to downR2(config-if)#exit --返回上⼀级R2(config)#route rip --开启rip协议R2(config-router)#version 2 --版本2R2(config-router)#no auto-summary --关闭路由⾃动汇总R2(config-router)#network 192.168.2.0 --添加直连⽹段到ripR2(config-router)#network 192.168.12.0R2(config-router)#network 192.168.24.0R2(config-router)#exit --返回上⼀级R2(config)#username abc password 123 --在R2上为R1设置⽤户名和密码R2(config)#username R3 password cisco --在R2上为R3设置⽤户名和密码(注意两端密码要相同)R2(config)#interface s0/0/0 --进⼊端⼝R2(config-if)#encapsulation ppp --封装端⼝为PPP协议R2(config-if)#ppp authentication pap --配置PAP验证R2(config-if)#ppp pap sent-username abc1 password 456 --在R2上为R1设置⽤户名和密码R2(config-if)#interface s0/0/1 --进⼊端⼝R2(config-if)#encapsulation ppp --封装端⼝为ppp协议R2(config-if)#ppp authentication chap --配置chap验证R2(config-if)#end --返回特权模式R2#%LINK-5-CHANGED: Interface Loopback0, changed state to up%LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback0, changed state to up%LINK-5-CHANGED: Interface Serial0/0/0, changed state to up%SYS-5-CONFIG_I: Configured from console by console%LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0/0/0, changed state to up R2#%LINK-5-CHANGED: Interface Serial0/0/1, changed state to up%LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0/0/1, changed state to up(3)R3路由器配置:Router>enable --进特权模式Router#configure terminal --进⼊全局配置模式Enter configuration commands, one per line. End with CNTL/Z.Router(config)#hostname R3 --修改路由器名为R3R3(config)#interface l0 --进⼊回环端⼝R3(config-if)#ip address 192.168.3.254 255.255.255.0 --为端⼝配置ip地址R3(config-if)#no shutdown --激活端⼝R3(config-if)#exit --返回上⼀级R3(config)#interface S0/0/0 --进⼊端⼝R3(config-if)#ip address 192.168.24.1 255.255.255.0 --为端⼝配置ip地址R3(config-if)#no shutdown --激活端⼝R3(config-if)#exit --返回上⼀级R3(config)#route rip --开启rip协议R3(config-router)#version 2 --版本2R3(config-router)#no auto-summary --关闭路由⾃动汇总R3(config-router)#network 192.168.3.0 --添加直连⽹段到ripR3(config-router)#network 192.168.24.0R3(config-router)#exit --返回上⼀级R3(config)#username R2 password cisco --在R3上为R2设置⽤户名和密码R3(config)#interface s0/0/0 --进⼊端⼝R3(config-if)#encapsulation ppp --封装端⼝为ppp协议R3(config-if)#ppp authentication chap --配置chap验证R3(config-if)#end --返回特权模式%LINK-5-CHANGED: Interface Loopback0, changed state to up%LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback0, changed state to up %LINK-5-CHANGED: Interface Serial0/0/0, changed state to up%LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0/0/0, changed state to up R3#%SYS-5-CONFIG_I: Configured from console by console四、验证测试:1、测试是否开启ppp认证(1)R1:(2)R2:(3)R3:2、查看R1的S0/0/0端⼝信息如图,红⾊标记处表⽰是PPP认证3、测试全⽹是否互通:(1)R1与R2(2)R2与R3(3)R3与R1结果:全⽹互通成功。