Bu konu, SSH üzerinden bir Linux ECS örneğine bağlanırken karşılaşılan "Host key verification failed" hatasının nedenlerini ve çözümlerini açıklar.
Belirtiler
-
Linux veya macOS çalıştıran bir istemciden SSH ile bir Linux ECS örneğine bağlandığınızda aşağıdaki hata iletisini alırsınız:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that the RSA host key has just been changed. The fingerprint for the RSA key sent by the remote host is ae:6e:68:4c:97:a6:91:81:11:38:8d:64:ff:92:13:50. Please contact your system administrator. Add correct host key in /root/.ssh/known_hosts to get rid of this message. Offending key in /root/.ssh/known_hosts:70 RSA host key for x.x.x.x has changed and you have requested strict checking. Host key verification failed. -
Yerel Windows istemcisinde PuTTY veya MobaXterm gibi bir SSH istemcisi kullanarak bir Linux ECS örneğine bağlandığınızda "The host key does not match the one PuTTY has cached for this server" veya "remote server identification has changed" gibi bir hata iletisi alırsınız.
PuTTY, WARNING - POTENTIAL SECURITY BREACH! güvenlik uyarısı iletişim kutusunu görüntüler. Anahtar türü ssh-ed25519'dir. Accept, Connect Once veya Cancel seçeneklerinden birini tıklayabilirsiniz.
MobaXterm uyarı iletişim kutusu üç seçenek sunar: Accept the new server hostkey and carry on connecting, Refuse the new server hostkey and abort the connection ve Accept and save as additional hostkey (keep the existing ones).
Neden
Bu hata, ECS örneğinin SSH genel anahtarı değiştiğinde ortaya çıkar. İşletim sistemini yeniden yüklediğinizde veya hesap bilgilerini değiştirdiğinizde bu durum gerçekleşebilir. Sonuç olarak, yerel istemcinizde kayıtlı olan genel anahtar parmak izi sunucudakiyle eşleşmez ve güvenlik uyarısı tetiklenir.
Çözüm
Çözüm, yerel istemcinizin işletim sistemine bağlıdır.
Yerel istemci: Windows
Bu bölümde PuTTY ve MobaXterm örnek olarak kullanılmıştır. Diğer SSH istemcileri için adımlar farklılık gösterebilir.
PuTTY kullanıyorsanız Accept seçeneğini tıklayın. PuTTY, önbelleğe alınan genel anahtar parmak izini otomatik olarak günceller; ardından örnekte oturum açabilirsiniz.
MobaXterm kullanıyorsanız Accept the new server hostkey and carry on connecting seçeneğini tıklayın. MobaXterm, önbelleğe alınan genel anahtar parmak izini otomatik olarak günceller; ardından örnekte oturum açabilirsiniz.
Yerel istemci: Linux veya macOS
-
Yerel istemcinizde, kullanıcı hesabınız için
known_hostsdosyasını açmak üzere aşağıdaki komutu çalıştırın:vim ~/.ssh/known_hosts Ekleme moduna geçmek için i tuşuna basın.
-
Aşağıdaki örnekte gösterildiği gibi ECS örneğinizin IP adresine karşılık gelen girişi silin:
39.105. ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBEPMCfKNtd5Pkjp4A+ocwNzeTN fLNrUf3a0EfqXj4X4URJMPEzEl94ftuA7ZltOM0cAMkeZzOql ~ Dosyayı kaydedip çıkmak için
Esctuşuna basın,:wqgirin ve Enter tuşuna basın.Bağlantının başarılı olduğunu doğrulamak için Linux ECS örneğine yeniden bağlanın.