macos使用github提示git@github.com: Permission denied (publickey)

### 解决 SSH 连接被拒绝的问题 当遇到 `Permission denied (publickey)` 错误时,通常意味着服务器无法验证客户端的身份。以下是详细的排查方案: #### 1. 检查 SSH Agent 状态 确保本地机器上的 `ssh-agent` 正常工作。可以通过以下命令查看其状态: ```bash Get-Service ssh-agent ``` 如果服务未启动,则可以尝试启动它[^1]: ```bash Start-Service ssh-agent ``` #### 2. 验证私钥位置与权限设置 确认 `.ssh` 文件夹及其内部文件(特别是私钥文件)具有正确的读写权限。对于 Linux 和 macOS 用户来说,默认情况下这些文件应该只允许用户本人访问。 #### 3. 添加私钥到 SSH Agent 中 即使已经生成过密钥对,在每次新的终端会话开始前都需要再次加载它们至代理程序里: ```bash ssh-add ~/.ssh/id_rsa ``` 如果是使用 ED25519 类型的密钥,则路径应改为 `~/.ssh/id_ed25519`[^4]。 #### 4. 使用一致的操作环境 注意区分普通用户身份和超级管理员(root)之间的差异。比如在执行某些操作如克隆仓库时可能会带上 `sudo` 前缀;然而这同时也改变了默认查找配置的位置——即从 `/root/` 而不是 `$HOME/`. 因此建议保持一致性,要么全程都用相同级别的权限来处理所有相关事务,要么就完全不用提升权限[^2]. #### 5. 测试连接并排除其他可能性 最后一步是通过手动方式测试能否成功建立远程登录: ```bash ssh -vT git@github.com ``` 这里的 `-v` 参数可以让系统输出调试信息帮助定位具体原因所在。另外也可以考虑更换目标主机名或 IP 地址来进行更广泛的测试。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值