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

Windows10转发SSH密钥克隆GitHub私有仓库时遇权限拒绝问题

解决SSH代理转发后远程服务器无法克隆GitHub私有仓库的问题

以下是针对性的排查和解决步骤:

1. 检查远程Ubuntu服务器的SSH代理转发配置

登录远程服务器,编辑SSH服务配置文件:

sudo nano /etc/ssh/sshd_config

找到AllowAgentForwarding项,确保其值为yes(如果被注释,去掉注释并修改为yes)。修改完成后重启SSH服务:

sudo systemctl restart sshd

2. 测试远程服务器与GitHub的SSH连通性

在远程服务器执行以下命令,查看密钥验证的详细过程:

ssh -vT git@github.com

重点关注输出中是否出现类似以下内容:

debug1: Offering public key: ED25519 SHA256:xxx agent

如果没有这行,说明远程服务器没有使用转发的代理密钥,需要继续排查。

3. 强制远程SSH仅使用代理转发的密钥

如果远程服务器本地存在其他SSH密钥,SSH可能会优先尝试本地密钥而非转发的代理密钥。可以在远程用户的~/.ssh/config文件中添加以下配置(如果文件不存在则创建):

nano ~/.ssh/config

写入内容:

Host github.com
    IdentityFile /dev/null
    IdentitiesOnly yes

保存退出后,再次尝试克隆仓库。

4. 确认本地Windows的SSH代理转发配置

虽然你使用了ssh -A参数开启代理转发,也可以检查本地~/.ssh/config文件(若存在)是否包含对应服务器的转发配置:

Host serverip
    ForwardAgent yes

确保配置正确,避免因本地配置覆盖命令行参数导致的问题。

5. 验证GitHub公钥权限

再次确认你的SSH公钥已添加到GitHub账户,且该账户拥有目标私有仓库的访问权限(比如是仓库所有者、协作者,或者所属组织有仓库访问权限)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 19:57:42