ppp chap认证挑战包(challenge)结构图
第一步是被认证放发起认证请求 user dials in(用户拨入请求)
第二步:认证方 处理拨入请求并发起挑战包(challenge)挑战包由以下内容组成:ID(分配、区分连入进来的用户) 、随机数random、用户名 (默认不配置手工指定的 ppp chap hostname 情况下以自己的路由器hostnam名称作为用户名)
第三步:被认证方 接收到挑战报文后 将在自己数据库查找挑战包所对应的用户名的密码 将密码、 将随机数、ID 用HASH算法加密后
第四步:被认证放回答挑战包(Response) 将ID和HASH值和自己路由器hostname 名称 如果指定用户名将以指定优先(ppp chap hostname )发送给认证方
第五步 :认证方收到回答挑战包后将提取用户名并查找自己数据库是否有此用户 如没有认证失败 如果有将提取对应的用户名的密码与它发送的第一个自己原本就知道的挑战包的ID 、随机数 这三个元素也做HASH值运算 在将算出的结果与被认证方回答的挑战包内的hash值做对比 如果一样就认证通过 不一样就是非法用户认证失败 ,
注意 :配置过程中必须密码一致 用户名可用不相同密码必须相同
challenge挑战报文抓包
Response回应报文
命令:
R1
int s2/0 进入串行接口
ip add 192.168.1.1 配置IP地址
no sh 开启接口
encapsulation ppp 接口封装ppp
ppp authentication chap 开启验证chap模式
username R2 passwd 2612513 配置验证数据库(对端的hostname 名称和密码两端密码必须一样)
R2
int s2/0 进入串行接口
ip add 192.168.1.2 配置IP地址
no sh 开启接口
encapsulation ppp 接口封装ppp
ppp authentication chap 开启验证chap模式
username R1 passwd 2612513 配置验证数据库(对端的hostname 名称和密码2端密码必须一样)
如果配置了 ppp chap hostname 即使用指定账户名和密码认证