问题
Git/Gerrit项目已经开通权限,ssh-keygen也生成并配置了,但还是不能正常使用,提示”Permission denied (publickey).“
原因
由于OpenSSH从8.8版本由于安全原因开始弃用了rsa加密的密钥,因为OpenSSH认为rsa破解成本已经低于5万美元,所以觉得成本太小了,有风险就给禁用了。
通过命令:ssh -v [git服务器地址],查看Gerrit服务器的OpenSSH的版本号。如:
ssh -v 10.0.10.208
这里,openssh版本号,如果≥8.8,就可以用这个方法。
解决办法
进入本机 .ssh目录,在下面新建一个config文件,不带后缀名:
打开config,在最后添加:
Host gerrit.xxxxx.com
HostName gerrit.xxxxx.com
User Gerrit用户名(例如:test)
PubkeyAcceptedKeyTypes +ssh-rsa
IdentityFile ~/.ssh/id_rsa
Port 29418(Gerrit端口)
配置好之后clone,问题就解决了。
版权归原作者 子建莫敌 所有, 如有侵权,请联系我们删除。