我丢失了手机,并且没有GitLab 2FA的恢复代码。
因此,我无法登录我的账户。
我的选择是什么?
我丢失了手机,并且没有GitLab 2FA的恢复代码。
因此,我无法登录我的账户。
我的选择是什么?
我知道这是一个旧问题,但以下内容仅经过与gitlab.com免费托管帐户的测试,可能对遇到GitLab双因素认证问题的其他人有用。
如果
那么...
您可以通过ssh创建全新的一组恢复代码:
ssh git@gitlab.com 2fa_recovery_codes
回答问题并将恢复代码的列表保存在安全的地方!我承认我犯了以上所有问题,这个由GitLab提供的解决方案既简单又优雅。
nexus6的答案同样适用于使用GitLab 15.9(2023年2月)的自托管GitLab。
gitlab-sshd
是一个独立的SSH服务器,用Go语言编写,提供比OpenSSH更多的洞察力和控制能力。
它轻量级且包含最少的外部依赖。
如果您托管了自管理实例,从OpenSSH切换到gitlab-sshd
可以为您提供指标收集、详细日志记录和优雅关闭SSH连接。
与OpenSSH不同,它支持PROXY协议,并且在代理后操作时可以传递原始IP地址。这使您能够通过IP地址限制SSH访问当您的实例在代理后操作时。
GitLab.com自15.2版本以来一直使用gitlab-sshd
,100%的SSH流量都通过gitlab-sshd
。
要了解更多信息,请阅读此博客文章。 要了解如何启用它,请参阅文档。
gitlab-sshd
最初是由@lorenz社区贡献的。
非常感谢您的贡献!
这包括 生成新的2FA恢复代码:
$ ssh git@<hostname> 2fa_recovery_codes
Are you sure you want to generate new two-factor recovery codes?
Any existing recovery codes you saved will be invalidated. (yes/no)
yes
Your two-factor authentication recovery codes are:
...