我有超过2个ssh键,用于连接到不同的服务器。为了能够使用ssh从azure中克隆,我在~/.ssh/ad-azure中创建了一个ssh密钥,并将其链接到配置文件中,如下所示。
Host vs-ssh.visualstudio.com
HostName vs-ssh.visualstudio.com
User amir
IdentityFile ~/.ssh/ad-azure
IdentitiesOnly yes
PubkeyAcceptedKeyTypes ssh-rsa现在当我使用git克隆人ssh时,
git clone amir@vs-ssh.visualstudio.com:v3/test/testProject
它会抛出以下错误。
无法与00.74.28.28端口22协商:没有找到匹配的主机密钥类型。他们的报价:ssh致命:无法从远程存储库读取。 请确保您有正确的访问权限和存储库存在。
我遵循的步骤。
我已经考虑过其他的问题了,对我来说一切都还好。有人能发现这个问题吗?
发布于 2022-04-05 06:46:27
正如这条线中提到的
OpenSSH项目删除了版本8.8的公钥算法ssh-rsa。目前,Azure Devops仍然只支持ssh-rsa。 对于解决方法,使用OpenSSH 8.8,您可以将以下内容添加到
~/.ssh/config中:
Host ssh.dev.azure.com
HostkeyAlgorithms +ssh-rsa
PubkeyAcceptedAlgorithms +ssh-rsa有一张票请求支持像sha2这样更强大的算法。
这个解决方案应该被认为是不安全的,因为正如我在2020年2月的问题上提到的,而且正如OpenSSH项目反复指出的那样,沙一攻击目前只需5万美元就可以完成。。 请确保Azure Devops主机密钥是根据RFC8332 RSA/SHA-256/512进行签名的。
https://stackoverflow.com/questions/71735056
复制相似问题