密码验证协议 (PAP)
验证 PPP 链路的方法只有两种,即密码验证协议 (PAP) 和质询握手验证协议 (CHAP)。
从这两种身份验证协议来看,PAP 的安全性较低,因为密码以明文形式发送并且仅在初始链接建立时执行。
密码验证协议 (PAP) –
PAP 是 PPP 链接用来验证用户的密码验证协议。 PAP 认证要求呼叫设备输入用户名和密码。如果凭证与被调用设备的本地数据库或远程 AAA 数据库匹配,则允许访问,否则被拒绝。
特征 -
PAP的一些特点是:
- 密码以明文形式发送。
- 所有网络操作系统都支持 PAP。
- 它使用双向握手协议。
- 它是非交互式的。
- PAP 支持单向认证(单向)和双向认证(双向)。
配置 -
有一个小型拓扑,其中有 2 个路由器,即 R1 和 R2。 R1 在 s0/0 上的 IP 地址为 10.1.1.1/30,R2 在 s0/0 上的 IP 地址为 10.1.1.2/30。
首先,我们将通过提供用户名和密码在 R1 上创建一个本地数据库:
R1(config)#username Router1 password GeeksforGeeks
在 R2 上配置本地数据库:
R2(config)#username Router2 password GeeksforGeeks
请记住,默认情况下,在 Cisco 路由器上配置 HDLC,因此首先我们必须将封装更改为 PPP 并启用 PAP。
R1(config)# int s0/0
R1(config-if)#encapsulation ppp
R1(config-if)#ppp authentication pap
R1(config-if)#ppp pap sent-username Router2 password GeeksforGeeks
在 R2 上启用 PAP:
R2(config)# int s0/0
R2(config-if)#encapsulation ppp
R2(config-if)#ppp authentication pap
R2(config-if)#ppp pap sent-username Router1 password GeeksforGeeks
在这里,请注意用户名和密码区分大小写。此外,在路由器 R1 上,我们必须提供用户名和密码。
笔记 -
在单向认证的情况下,该命令也可用于想要认证的路由器(主叫路由器),即只有主叫路由器将进行认证。
如果双向验证,即客户端和远程设备都将相互验证,那么我们必须创建一个本地数据库并在两个设备上使用此命令。
另外,如果我们想在 CHAP 失败时先使用 CHAP,再使用 PAP 作为备份,我们可以通过命令进行配置。
R1(config)#int s0/0
R2(config-if)#ppp authentication chap pap
此外,如果我们希望 CHAP 作为备份,请使用该命令。
R1(config)#int s0/0
R2(config-if)#ppp authentication pap chap
何时使用 PAP –
PAP通常用于以下场景:
- 当应用程序不支持 CHAP 时。
- 需要发送纯文本密码以在被叫设备(远程主机)上模拟登录的情况。
- 当 CHAP 的不同供应商之间发生不兼容时。
CHAP 优于 PAP –
一些优点是:
- CHAP 比 PAP 更安全。
- CHAP 可以定期提供身份验证,以识别访问 PPP 链路的用户是否相同。
- 在 CHAP 中,真正的密码永远不会在链接上共享,而是计算和传输它的哈希值。
PAP 优于 CHAP –
PAP 与 CHAP 相比的唯一优势是它受到所有网络操作系统供应商的支持,因此可以说在不支持 CHAP 的地方使用 PAP。但如果支持 CHAP,则建议使用 CHAP,因为它更安全。