![无法访问服务器,2FA 拒绝验证码和备用码不起作用](https://linux22.com/image/1145014/%E6%97%A0%E6%B3%95%E8%AE%BF%E9%97%AE%E6%9C%8D%E5%8A%A1%E5%99%A8%EF%BC%8C2FA%20%E6%8B%92%E7%BB%9D%E9%AA%8C%E8%AF%81%E7%A0%81%E5%92%8C%E5%A4%87%E7%94%A8%E7%A0%81%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8.png)
我刚刚为我的服务器配置了 google-authenticator 2FA,现在无法登录,因为连接被拒绝。
我收到以下消息:
收到来自服务器的断开连接:2:用户身份验证失败次数过多
我尝试多次将密钥添加到验证器,但密钥和备份代码都无法验证。这不是时间问题,因为服务器的时间正确,而且据我所知,无论时间如何,备份代码都可以正常工作。
任何帮助都将非常有帮助,令人恼火的是,我忘了添加额外的用户,因为我前几天重置了服务器,所以盒子上只有一个用户。
答案1
最后我不得不删除并重建我正在使用的服务器实例。这是因为 root 用户的默认设置阻止了除 SSH-Key 身份验证之外的任何其他形式的身份验证,因此我被锁定在服务器之外。
这意味着在 scaleway 构建的 Ubuntu 默认设置下,无法为 root 用户设置 2FA。但是,对于创建的用户,可以按照 Duo 或 Google 双因素的说明进行操作。
我以后会使用 Duo,因为它允许推送到应用程序进行 2FA,并且只需单击“接受”按钮,而无需输入验证密钥。只需确保在保持 SSH 连接打开的同时测试配置,以防止因错误而被锁定。