PPP-PAP原理与配置
1; PPP概述
点到点协议(Point to Point Protocol,PPP)是IETF(Internet Engineering Task Force,因特网工程任务组)推出的点到点类型线路的数据链路层协议。它解决了SLIP中的问题,并成为正式的因特网标准。
PPP协议在RFC 1661、RFC 1662和RFC 1663中进行了描述。
PPP支持在各种物理类型的点到点串行线路上传输上层协议报文。PPP有很多丰富的可选特性,如支持多协议、提供可选的身份认证服务、可以以各种方式压缩数据、支持动态地址协商、支持多链路捆绑等等。这些丰富的选项增强了PPP的功能。同时,不论是异步拨号线路还是路由器之间的同步链路均可使用。因此,应用十分广泛。
本文我们主要介绍PPP的身份认证功能。
2; PAP原理
PPP提供了两种可选的身份认证方法:口令验证协议PAP(PassWord Authentication Protocol,PAP)和质询握手协议(Challenge Handshake Authentication Protocol,CHAP)。假如双方协商达成一致,也可以不使用任何身份认证方法。
PAP是一个简单的、实用的身份验证协议。如图1所示。
图1PAP
PAP认证进程只在双方的通信链路建立初期进行。假如认证成功,在通信过程中不再进行认证。假如认证失败,则直接释放链路。
PAP的弱点是用户的用户名和密码是明文发送的,有可能被协议分析软件捕捉而导致安全问题。但是,因为认证只在链路建立初期进行,节省了宝贵的链路带宽。
3; PAP配置
3.1; PPP基本配置
对于同步串行接口,默认的封装格式是HDLC(Cisco私有实现)。可以使用命令encapsulation ppp将封装格式改为PPP.如图2所示。
图2PPP串行封装
当通信双方的某一方封装格式为HDLC,而另一方为PPP时,双方关于封装协议的协商将失败。此时,此链路处于协议性关闭(protocol down)状态,通信无法进行。如图3所示。
图3两端路由器串行接口封装格式不一致
这时,在路由器RouterA与路由器RouterB的链路没有成功建立之前,路由器RouterA及RouterB的路由表将为空。
3.2; PAP配置
3.2.1; PAP认证过程
PAP认证可以在一方进行,即由一方认证另一方身份,也可以进行双向身份认证。这时,要求被认证的双方都要通过对方的认证程序。否则,无法建立二者之间的链路。我们以单方认证为例分析PAP配置过程及诊断方法。
如图4所示。当双方都封装了PPP协议且要求进行PAP身份认证,同时它们之间的链路在物理层已激活后,认证服务器会不停地发送身份认证要求直到身份认证成功。
图4PAP认证过程
在图4中,当认证客户端(被认证一端)路由器RouterB发送了用户名或口令后,认证服务器会将收到的用户名或口令和本地口令数据库中的口令信息比对,假如正确则身份认证成功,通信双方的链路最终成功建立。
假如被认证一端路由器RouterB发送了错误的用户名或口令,认证服务器将继续不断地发送身份认证要求直到收到正确的用户名和口令为止。
3.2.2; PAP认证服务器的配置
PAP认证服务器的配置分为两个步骤:建立本地口令数据库、要求进行PAP认证。
●建立本地口令数据库
通过全局模式下的命令username username password password来为本地口令数据库添加记录。如下所示:
RouterA(config)#username routera password rapass
●要求进行PAP认证
这需要在相应接口配置模式下使用命令ppp authentication pap来完成。如下所示。
RouterA(config)#interface serial 0/0
RouterA(config-if)#ppp authentication pap
3.2.3; PAP认证客户端的配置
PAP认证客户端的配置只需要一个步骤(命令),即将用户名和口令发送到对端,如下所示:
RouterB(config-if)#ppp pap sent-username routera pass rapass
3.2.4; PAP的诊断
假如通信双方的链路因为身份认证的原因而没有建立成功,利用debug ppp authentication命令可以很轻易发现问题所在。如图5所示,它表明认证客户端发送的用户名和口令没有通过认证服务器的认证。
图5命令debug ppp authentication的输出
图6表明经过若干次认证要求后,认证服务器最终收到了认证客户端发送过来的正确的用户名和口令组合。此时,双方的链路将成功建立。
图6链路成功建立
注重:
1、PAP认证过程中,口令是大小写敏感的。
2、身份认证也可以双向进行,即互相认证。配置方法同单向认证类似,只不过需要将通信双方同时配置成为认证服务器和认证客户端。
3、口令数据库也可以存储在路由器以外的AAA或TACACS+服务器上。限于篇幅,此处不再赘述。