git@github.com: Permission denied (publickey)

小灰灰 2022-05-21 12:09 241阅读 0赞

今天在使用命令ssh -T git@github.com测试公钥是否添加成功时,提示:git@github.com: Permission denied (publickey)

解决方法

方法一:使用默认名字

  1. 重新生成密钥对,不指定名字,使用默认名字

方法二:使用ssh-agent代理管理git私钥

  1. 添加本地私钥:ssh-add ~/.ssh/自己定义的名字
  2. 如报错“Could not open a connection to your authentication agent.”,说明agent没有启动,先运行:eval $(ssh-agent)或者eval \`ssh-agent -s\` (注意这里是反引号),然后再运行ssh-add ~/.ssh/自己定义的名字
  3. 再使用ssh -T git@github.com就会看到你想要的效果了
  4. ![70][]

方法三:在.ssh目录下创建config文本文件并完成相关配置

  1. 配置一个HostHost要取一个别名,Host主要配置HostNameIdentityFile两个属性即可
  2. Host的名字可以取为自己喜欢的名字,不过这个会影响git相关命令,例如:Host mygithub 这样定义的话,命令如下,即git@后面紧跟的名字改为mygithub,例如:git clone git@mygithub:xxx/\*\*\*\*.git
  3. HostName         这个是真实的域名地址
  4. IdentityFile         这里是id\_rsa的地址
  5. PreferredAuthentications 配置登录时用什么权限认证--可设为publickey,password publickey,keyboard-interactive
  6. User            配置使用用户名
  7. 配置如下:
  8. #配置github.com
  9. Host github.com
  10. HostName github.com
  11. IdentityFile ~/.ssh/GitHub
  12. PreferredAuthentications publickey
  13. User Solin
  14. 注意:在.ssh目录中除了秘钥文件之外,config文件是后面的步骤中手动生产的,known\_hosts文件是后续自动生产的
  15. 配置完成后,再使用ssh -T git@github.com测试是否配置成功
  16. ![70 1][]
  17. 如果有多个git账号(比如:github.com账号、gitee.com账号等),配置多个Host即可。

发表评论

表情:
评论列表 (有 0 条评论,241人围观)

还没有评论,来说两句吧...

相关阅读