【问题标题】:'ssh -T git@github.com' says I am authenticated for the correct user, but running git commands says permission denied (publickey)'ssh -T git@github.com' 表示我已通过正确用户的身份验证,但运行 git 命令表示权限被拒绝(公钥)
【发布时间】:2021-11-28 18:30:46
【问题描述】:

我正在尝试在 digitalocean 上运行的 ubuntu 服务器上设置与 github 的 SSH 密钥连接。

到目前为止,我已经完成了以下工作:

  • 在 ~/.ssh/id_rsa 的 ubuntu 服务器上生成 SSH 密钥,无需密码
  • 使用ssh-add id_rsa 为代理添加了密钥
  • 在 github 中,将公钥添加到用户设置的 SSH 密钥中

通过SSH登录服务器,我可以运行ssh -T git@github.com,我会得到响应:

Hi username! You've successfully authenticated, but GitHub doesn't provide shell access

然后我尝试从 github 拉取并得到以下响应:

git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

我认为这与 shell 访问信息有关,但我认为我一直都是这样做的!当我在本地运行 ssh -T git@github.com 时,我得到了关于 git 不允许 shell 访问的相同信息,但它仍然允许我在尝试它们时执行所有正常的 pull/push 命令。

有人有什么建议吗?

--------- 编辑 -------------

我认为这是 sudo/非 sudo 权限的问题。我需要使用 sudo 运行所有 git 命令,但是我的 ssh 密钥不是使用 sudo 创建的,所以我认为它的访问权限错误?

我尝试使用sudo ssh-keygen 创建一个新密钥,但是现在我无法将它添加到我的代理中

如果我正常运行 eval 'ssh-agent' 然后尝试添加 sudo 生成的密钥 ssh-add sudokey,我收到一个错误,我无权对密钥执行任何操作。

如果我运行 sudo ssh-add key,我会收到一个错误,提示它无法与代理建立连接

那么我想,通过运行sudo eval 'ssh-agent' 在 sudo 下打开一个代理,然后我收到错误 sudo: eval: command not found

【问题讨论】:

  • 这意味着无论您在 on 上运行什么,服务器都无法访问密钥对。当您登录服务器并运行时,您已授予服务器(及其 ssh)访问您的密钥对的权限。当您登录到服务器时,您在做什么,以便让服务器(及其 ssh)访问您的密钥对?
  • 我想我发现 sudo 似乎没有与非 sudo 用户相同的密钥对访问权限。例如,如果我运行sudo ssh -T git@github.com,它将无法工作。但是如何授予 sudo 访问权限?我尝试使用sudo ssh key-generate 创建一个新的密钥对,但我仍然遇到同样的问题。它也不允许我 ssh 添加一个 sudo 创建的 ssh 密钥,如果我尝试 sudo ssh-add keysudo eval 'ssh-agent' 我得到一个错误,即 sudo eval 不是命令
  • @torek 我用我尝试过的方法编辑了帖子
  • 啊——当然:sudo 表示以其他用户身份运行,而其他用户是具有其他权限的某个其他用户。将密钥放入 用户可以访问的东西中,并可能为该用户启动一个 ssh 代理。请注意,sudo 只运行一个命令。要运行多个命令,一个命令本身需要成为一个将运行多个命令的命令。不过,一般来说,使用 sudo 的正确方法是“不要使用它”:如果有某种方法可以使用它,那就改用它。

标签: git ubuntu github version-control


【解决方案1】:

使用

GIT_SSH_COMMAND="ssh -vvv" git comman

检查后台发生的事情。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2020-01-04
  • 2011-11-25
  • 1970-01-01
  • 1970-01-01
  • 2013-08-08
  • 2020-07-02
  • 1970-01-01
相关资源
最近更新 更多