没有使用默认名字后的,git@github.com: Permission denied (publickey)


本文链接:https://blog.csdn.net/qq_32786873/article/details/80947195
今天在使用命令ssh -T git@github.com测试公钥是否添加成功时,提示:git@github.com: Permission denied (publickey)

因为公司内部也有gitlab,又要使用github ,所有生成2套ssh密钥。遇到git@github.com: Permission denied (publickey)这个问题,看到这个博客,谨以此记。

解决方法

方法一:使用默认名字

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

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

    添加本地私钥:ssh-add ~/.ssh/自己定义的名字

    如报错“Could not open a connection to your authentication agent.”,说明agent没有启动,先运行:eval $(ssh-agent)或者eval `ssh-agent -s` (注意这里是反引号),然后再运行ssh-add ~/.ssh/自己定义的名字

    再使用ssh -T git@github.com就会看到你想要的效果了

    

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

    配置一个Host,Host要取一个别名,Host主要配置HostName和IdentityFile两个属性即可

    Host的名字可以取为自己喜欢的名字,不过这个会影响git相关命令,例如:Host mygithub 这样定义的话,命令如下,即git@后面紧跟的名字改为mygithub,例如:git clone git@mygithub:xxx/****.git

    HostName           这个是真实的域名地址

    IdentityFile          这里是id_rsa的地址

    PreferredAuthentications    配置登录时用什么权限认证--可设为publickey,password publickey,keyboard-interactive等  

    User              配置使用用户名

    配置如下:

#配置github.com
Host github.com
HostName github.com
IdentityFile ~/.ssh/GitHub
PreferredAuthentications publickey 
User Solin
    注意:在.ssh目录中除了秘钥文件之外,config文件是后面的步骤中手动生产的,known_hosts文件是后续自动生产的
    配置完成后,再使用ssh -T git@github.com测试是否配置成功

    

    如果有多个git账号(比如:github.com账号、gitee.com账号等),配置多个Host即可。
————————————————
版权声明:本文为CSDN博主「日出东方VS唯我不败」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_32786873/article/details/80947195

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值