You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GitLab免费账户生成2FA恢复码遇Permission denied错误求助

解决GitLab 2FA恢复码生成失败(Permission denied (publickey))的问题

原因分析

你用GitExtensions能正常执行fetch/push,说明它采用的是HTTPS协议+存储的凭据完成认证,而非SSH密钥认证。你的本地SSH密钥并未配置到GitLab账户中,所以执行SSH命令时会被拒绝。

解决步骤

1. 检查本地SSH密钥是否存在

打开终端执行:

ls -la ~/.ssh

若能看到id_rsa(私钥)和id_rsa.pub(公钥)文件,说明已有密钥;若没有,生成新密钥:

ssh-keygen -t rsa -b 4096 -C "你的GitLab绑定邮箱"

全程按回车使用默认设置即可。

2. 将SSH公钥添加到GitLab账户

  • 复制公钥内容:
    cat ~/.ssh/id_rsa.pub
    
  • 登录GitLab网页(你能通过GitExtensions操作,说明账户可正常登录,用HTTPS方式登录即可),进入用户设置 → SSH密钥,粘贴复制的公钥,设置标题后保存。

3. 验证SSH连接有效性

执行:

ssh -T git@gitlab.com

若输出Welcome to GitLab, @你的用户名!,说明SSH认证成功。

4. 生成新的2FA恢复码

再次执行命令:

ssh git@gitlab.com 2fa_recovery_codes

按提示确认后即可获取新的恢复码,务必将这些恢复码存到安全位置。

备选方案(SSH配置有困难时)

直接通过GitLab网页操作:

  • 登录GitLab后,进入用户设置 → 账户 → 两步验证
  • 点击生成新的恢复码,按页面提示操作即可(前提是你当前能正常登录账户,而你能使用GitExtensions操作,说明账户登录无问题)

内容的提问来源于stack exchange,提问作者Chris

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 15:08:11