我使用的颠覆,从内PHPStorm,和我得到以下错误,当我尝试连接到SVN服务器...不匹配
主机SVN的真实性PHPStorm SSH服务器指纹+ ssh://svn.example.com:22不能成立 。 SSH-RSA密钥指纹是
XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX
您确定要继续连接吗?
问题是指纹与服务器的指纹不匹配。如果我从我的〜/ .ssh/known_hosts文件中删除服务器,然后ssh显示一个完全不同的指纹 - 这对于该服务器来说是正确的。
我刚刚将SVN存储库移至新服务器,并将DNS更改为指向新服务器,因此我期待PHPStorm抱怨指纹不匹配,但我很惊讶它没有显示正确的指纹为新的服务器。指纹与旧服务器不匹配,或者PHPStorm曾经连接过的任何其他服务器。我很担心让它连接,直到我明白发生了什么。
PHPStorm正确连接到新的服务器,所以我不明白它是如何得到错误的指纹,并且似乎不太可能在中间人攻击中看到一个实际的人,因为每当我从ssh命令行看到正确的指纹。
我不确定PHPStorm在哪里缓存服务器指纹。我已经尝试使缓存无效,看看是否会让它忘记任何过时的指纹数据,但这似乎不太可能,因为报告的指纹与旧服务器或新服务器不匹配。
我想得出结论,这是PHPStorm中的一个错误,但任何其他想法都会非常受欢迎。
编辑:
PHPStorm显示一个20字节的指纹。 服务器(的Debian)
SSH-密钥生成-l -f的/ etc/SSH/ssh_host_rsa_key
显示一个16字节的指纹上运行这一点,所以它们不可能匹配。有没有办法从服务器的公钥获取20字节的指纹?
你可以继续使用'ssh-keygen -l -f/etc/ssh/ssh_host_rsa_key'命令,只需要添加'-E md5'或'-E sha256'来选择你想要的算法 – caw