提交GIT代码报错没有权限的奇怪问题
笔者前两天重装了电脑系统,但有备份私钥和公钥的文件,结果提交代码时却报没有权限。
ssh-agent bash -c 'ssh-add /d/JTWO/DevelopKey; git push -u origin master'
因为笔者使用的是其他路径下的秘钥,还以为权限搞错了,结果移到~/.ssh目录也这样。
使用ssh -vT git@1.2.3.4命令查看详细日志,发现no mutual signature algorithm错误。
放狗搜了一轮才知道新版的openssh已经默认不再支持ssh-rsa算法啦,说是有安全隐患:
https://www.zdnet.com/article/openssh-to-deprecate-sha-1-logins-due-to-security-risk/
虽然我们可以换成其他的加密算法,但是笔者也就本地团队使用,就先重新启用ssh-rsa好啦:
修改文件vi ~/.ssh/config并添加一行配置PubkeyAcceptedKeyTypes +ssh-rsa保存就行。