git push permission denied (by quqi99)

作者:张华 发表于:2026-10-09
版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明

今天运行下列命令时总是报: Permission denied (publickey)

复制代码
git push git+ssh://xxx@git.launchpad.net/~xxx/ubuntu/+source/resource-agents jammy-iscsi-target-missing

排查后的根本原因有两个:

  • ssh-agent 缓存了过多密钥(11 个): 本地 ssh-agent 中加载了 11 个不同机器的私钥。
  • 当连接git.launchpad.net 时,SSH 默认会逐个尝试这些密钥。而 Launchpad 服务器对认证尝试次数有限制,在试到Launchpad 登记的正确密钥之前,连接就因为"尝试次数过多(Too many authenticationfailures)"被直接切断了(表现为 Connection closed 或 Permission denied)。
  • OpenSSH 默认禁用了老旧的 ssh-rsa 签名算法:Launchpad 绑定的 RSA 密钥(hua@mi)在较新的 OpenSSH(9.6+)中,如果不显式指PubkeyAcceptedAlgorithms +ssh-rsa,OpenSSH 会拒绝使用该算法完成挑战应答。

Fix是在 ~/.ssh/config中添加下列配置:

复制代码
Host *.launchpad.net upload.ubuntu.com git.qastaging.paddev.net
  User xxx
  IdentityFile ~/.ssh/id_rsa
  IdentitiesOnly yes
  PubkeyAcceptedAlgorithms +ssh-rsa
相关推荐
microxiaoxiao6 小时前
MobaXterm vs Aeroshell
linux·运维·ssh
qetfw1 天前
Debian SSH 安全配置:端口、来源限制与免密登录
linux·安全·debian·ssh
Julien20042 天前
管理 Ansible 配置文件
linux·运维·服务器·ssh·学习方法
超级大福宝3 天前
VS Code Remote-SSH 因 RemoteForward 端口冲突导致连接失败的排查与解决
运维·服务器·windows·vscode·ssh
Lucas_coding3 天前
SSH 常见用法(四):使用 SCP 和 SFTP 远程传输文件
运维·ssh
酣大智4 天前
H3C MSR3600 交换机配置 SSH
网络·ssh·智能路由器
ai小陈7 天前
GPU服务器租用存储验收:检查点写入与磁盘吞吐实战
运维·服务器·人工智能·ai·ssh·gpu算力
寺中人7 天前
Xshell 完全入门指南:从安装到实战,远程连接+文件传输+会话管理全拆解
git·ssh·github·php·远程连接·xshell·运维工具
Julien20049 天前
Docker 网络(一)
linux·运维·服务器·ssh·学习方法