我使用的顛覆,從內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