一个办公室可以把同一个 IPsec 密钥发给每台笔记本,而每个人仍用自己的账号登录,所以「密钥正确」和「密码正确」可以同时成立,登录却仍然失败。L2TP 和 IPsec 在不同阶段认证不同的对象。比较这两层,并用区分它们的错误码来判断,比再把两个值都换一遍更快结案。这些阶段不能互换,你眼前的提示其实已经说明是哪一层在起作用。

两层,两种不同的身份

IPsec 的对端认证先运行。客户端与网关在保护任何隧道载荷之前,先用预共享密钥或证书互相证明身份。L2TP 会话内部的 PPP 交换随后进行,你的用户名和密码正是在那里对照服务器的账户库校验。

各阶段是独立的,所以 有效的用户账号救不了错误的 IPsec 密钥,正确的密钥也救不了过期的密码。在工单里把两者分开记录,诊断通常从第一条点明阶段的日志行就能得出。

Observed failureStage that rejected itField to touch
Security layer error 789 during initial negotiationIKE and IPsec peer authenticationThe pre-shared key or the certificate
Error 691, credentials not recognisedPPP user authenticationUser name, password, or account policy
Tunnel forms, then drops on the first packetNeither, usually routing or MTUAddress pool and interface configuration
Prompt repeats with no error textOften the client type selectionThe connection profile, not the secret

预共享密钥证明对端

预共享密钥是网关以及每个连接它的客户端共同持有的组凭据。它证明对端知道这个密钥,IKE 再由它派生出保护连接的各种密钥。那次交换中没有任何信息能识别坐在键盘前的人。同一个隧道里之所以还有第二层用户登录,原因正在于此。

这种设计对吊销有实际影响。丢失一台笔记本就意味着要为所有使用它的设备轮换密钥;除非部署改用证书,那样可以只移除单台设备而不动其余设备。这里的取舍是管理工作量与影响范围之比。

写进配置文件里的密钥也是最容易通过截图和聊天泄露的凭据。应当把它当作共享的基础设施材料,而不是个人密码,因为它本来就是。

登录属于 PPP

在 L2TP 会话内部,PPP 协商认证,并请服务器校验你输入的那一对值。在 Windows 上,它就是配置文件中请求的用户名和密码;在路由器上,则是 PPP 配置文件所引用的那对值。校验时对照的是账户库,而不是密钥。两个人可以共用一台笔记本和一把密钥,在这个阶段仍能被区分开。

因为这是用户认证,所以所有常规账户策略都适用:密码过期、账户锁定、拨入权限,或者必须带域名的名称。错误 691 报告的是这一组合被拒绝,所以在重新输入任何内容之前,先读服务器的计费记录。

让错误码来选字段

错误 789 指明的安全层,指向 IPsec 阶段。确认双方预共享密钥完全一致、网关期望的对端标识与客户端发送的一致,并且客户端配置的是 L2TP/IPsec 而不是别的类型。

错误 691 指明的凭据,指向 PPP。在改密钥之前先检查账户状态和准确的名字格式,因为同时改两者会毁掉你正在读的证据。

如果隧道起来了但流量依然中断,就彻底停止修改认证字段。去看地址池、回到客户端子网的路由以及 MTU:只有故障仍在两层之内时,比较这两层才有意义。

相关文章