SSH 故障排除
当使用 SSH 连接并身份验证到 GitHub 时,您可能需要解决可能出现的意外问题。
通过 HTTPS 端口使用 SSH
有时,防火墙会完全拒绝 SSH 连接。如果使用带有凭据缓存的 HTTPS 克隆不可行,您可以尝试使用通过 HTTPS 端口建立的 SSH 连接进行克隆。大多数防火墙规则都应允许此操作,但代理服务器可能会干扰。
恢复 SSH 密钥密码短语
如果您丢失了 SSH 密钥密码短语,则根据您使用的操作系统,您可以恢复它,或者可能需要生成新的 SSH 密钥密码短语。
已删除或丢失的 SSH 密钥
作为安全预防措施,GitHub 会自动删除一年内未使用过的 SSH 密钥。
错误:主机密钥验证失败
作为安全预防措施,SSH 会跟踪其之前见过的主机。
错误:权限被拒绝 (publickey)
“权限被拒绝”错误表示服务器拒绝了您的连接。可能有多种原因导致此错误,下面解释了最常见的示例。
错误:错误的文件编号
此错误通常表示您无法连接到服务器。通常,这是由防火墙和代理服务器引起的。
错误:user/repo 的权限被拒绝 other-user
此错误表示您正在推送的密钥附加到一个帐户,该帐户无权访问该存储库。
错误:user/repo 的权限被拒绝 user/other-repo
此错误表示您正在推送的密钥作为部署密钥附加到另一个存储库,并且无权访问您尝试推送到的存储库。
错误:代理承认签名失败
在极少数情况下,通过 Linux 上的 SSH 连接到 GitHub 会产生错误“代理承认使用密钥签名失败”。请按照以下步骤解决此问题。
错误:ssh-add:非法选项 -- apple-use-keychain
此错误表示您的 ssh-add 版本不支持 macOS 密钥链集成,这允许您将密码短语存储在密钥链中。
错误:SSL 证书问题,请验证 CA 证书是否正常
此错误表示您的 CA 根证书已过期。如果需要更新 CA 根证书,则您将无法从 GitHub 存储库推送或拉取。
错误:未知密钥类型
此错误表示您使用的 SSH 密钥类型未被识别或不受您的 SSH 客户端支持。
错误:我们正在进行 SSH 密钥审核
此错误表示您用于执行 Git 操作的 SSH 密钥未经验证。