git免密认证同步仓库代码报错——git@github.com: Permission denied (publickey) —— 所需的ssh-add加载加密私钥 —— 指定加密私钥存储位置
参考:
ssh client进行git免密验证时会自动到 ~\.ssh\ 文件夹下面寻找 private key 文件。
需要注意的是 有固定的默认文件名的,所以不能修改文件名,如rsa加密的私钥的文件名为id_rsa
验证是否免密成功:
ssh -T git@github.com

ssh -vT git@github.com

解决该问题的真正的方法:
将 加密的私钥 private key 文件 放在~.ssh\ 文件夹下面
参考:
https://askubuntu.com/questions/1508967/gitgithub-com-permission-denied-publickey
如果你有多个代码仓库的网站,如:github.com gitee.com 等等,并且你有多个加密的秘钥(不同网站对应的都是不同的),那么你可以使用下面的方法,即:配置 ~/.ssh/config 文件
当然,该种情况下由于有多个秘钥,那么必然不能使用默认的秘钥名称来存储在 ~/.ssh/ 文件夹下面。
vim ~/.ssh/config
为github.com网站的ssh免密登录配置:
Host github
Hostname github.com
User git
IdentityFile ~/.ssh/id_server_ed25519
IdentitiesOnly yes
为gitee.com网站的ssh免密登录配置:
Host gitee
Hostname gitee.com
User git
IdentityFile ~/.ssh/id_server_ed25519_2
IdentitiesOnly yes
以上的配置只能为指定的用户进行配置,如果希望为服务器上的所有用户均配置,可以编辑文件:/etc/ssh/ssh_config
添加内容:
IdentityFile ~/.ssh/id_server_ed25519

补充原文内容:




本博客是博主个人学习时的一些记录,不保证是为原创,个别文章加入了转载的源地址,还有个别文章是汇总网上多份资料所成,在这之中也必有疏漏未加标注处,如有侵权请与博主联系。
如果未特殊标注则为原创,遵循 CC 4.0 BY-SA 版权协议。
posted on 2026-06-26 16:38 Angry_Panda 阅读(3) 评论(0) 收藏 举报
浙公网安备 33010602011771号