CHAP认证过程
 
 
PAP一样,CHAP认证可以在一方进行,即由一方认证另一方身份,也可以进行双向身份认证。这时,要求被认证的双方都要通过对方的认证程序,否则,无法建立二者之间的链路。我们以单方认证为例分析CHAP配置过程及诊断方法。
  当双方都封装了PPP协议且要求进行CHAP身份认证,同时它们之间的链路在物理层已激活后,认证服务器会不停地发送身份认证要求直到身份认证成功。和PAP不同的是,这时认证服务器发送的是"挑战"字符串。
CHAP配置_CHAP配置
 
 
当认证客户端(被认证一端)路由器RouterB发送了对"挑战"字符串的回应数据包后,认证服务器会按照摘要算法(MD5)验证对方的身份。如果正确,则身份认证成功,通信双方的链路最终成功建立。
  如果被认证一端路由器RouterB发送了错误的"挑战"回应数据包,认证服务器将继续不断地发送身份认证要求直到收到正确的回应数据包为止。
 
 
          
           CHAP认证服务器的配置
 
 
CHAP认证服务器的配置分为两个步骤:建立本地口令数据库、要求进行CHAP认证。
  建立本地口令数据库
  通过全局模式下的命令username username password password来为本地口令数据库添加记录。这里请注意,此处的username应该是对端路由器的名称,即routerb.如下所示:
  RouterAconfig#username routerb password samepass
  要求进行CHAP认证
  这需要在相应接口配置模式下使用命令ppp authentication chap来完成。如下所示:
  RouterAconfig#interface serial 0/0
  RouterAconfig-if#ppp authentication chap
  3.2.3   CHAP认证客户端的配置
  CHAP认证客户端的配置只需要一个步骤(命令),即建立本地口令数据库。请注意,此处的username应该是对端路由器的名称,即routera,而口令应该和CHAP认证服务器口令数据库中的口令相同。
  RouterBconfig-if#username routera password samepass
  3.2.4   CHAP的诊断
  对于CHAP身份认证中出现的问题也可以利用debug ppp authentication命令进行诊断。如图5所示,它表明认证客户端发送的"挑战"回应数据包没有通过认证服务器的认证。
 
CHAP配置_休闲_02
 
表明经过若干次认证要求后,认证服务器最终收到了认证客户端发送过来的正确的"挑战"回应数据包。此时,双方的链路将成功建立。
 
 
CHAP配置_CHAP配置_03
1CHAP认证过程中,口令是大小写敏感的。
  2、身份认证也可以双向进行,即互相认证。配置方法同单向认证类似,只不过需要将通信双方同时配置成为认证服务器和认证客户端。
  3、口令数据库也可以存储在路由器以外的AAATACACS+服务器上。限于篇幅,此处不再赘述。
  通信认证双方选择的认证方法可能不一样,如一方选择PAP,另一方选择CHAP,这时双方的认证协商将失败。为了避免身份认证协议过程中出现这样的失败,可以配置路由器使用两种认证方法。当第一种认证协商失败后,可以选择尝试用另一种身份认证方法。如下的命令配置路由器首先采用PAP身份认证方法。如果失败,再采用CHAP身份认证方法。
  RouterAconfig-if#ppp authentication pap chap
  如下的命令则相反,首先使用CHAP认证,协商失败后采用PAP认证。
  RouterAconfig-if#ppp authentication chap pap