SSH Host Key Changed Hatası Nasıl Güvenli Çözülür?
“REMOTE HOST IDENTIFICATION HAS CHANGED” uyarısı, sunucunun sunduğu kimlik anahtarının önceki kayıttan farklı olduğunu bildirir. Değişiklik normal olabilir; ancak doğrulamadan kabul edilmemelidir.

Host key changed uyarısı ne anlama gelir?
SSH istemcisi daha önce bağlandığınız sunucunun host key değerini saklar. Aynı host ve porta yeniden bağlandığınızda sunucunun sunduğu anahtar bu kayıtla karşılaştırılır. Farklılık görülürse istemci sizi uyarır veya bağlantıyı durdurur.
Bu kontrol, aynı adresi taklit eden başka bir sisteme fark etmeden bağlanmanızı önlemeye yardımcı olur. Uyarıyı yalnızca bağlantıyı açmak için kapatmak, bu güvenlik katmanını etkisiz bırakır.
Sunucu anahtarı neden değişir?
İşletim sistemi veya SSH sunucusu yeniden kurulunca yeni host key dosyaları oluşturulmuş olabilir.
Yönetici eski algoritmayı kaldırmış veya anahtar rotasyonu gerçekleştirmiş olabilir.
Aynı IP artık farklı bir sanal sunucuya atanmış olabilir.
Aynı alan adı, ortak anahtar kullanmayan farklı arka uçlara yönleniyor olabilir.
DNS, ağ yönlendirmesi ya da araya girme girişimi sizi beklenmeyen bir sisteme götürüyor olabilir.
Yeni parmak izi nasıl doğrulanır?
- 1Bağlantıyı durdurun
Önceki anahtardan farklı bir anahtarı otomatik olarak kabul etmeyin.
- 2Host ve portu kontrol edin
Yazım hatası, eski profil veya yanlış DNS adresi olmadığından emin olun.
- 3Bağımsız kanaldan sorun
Yeni parmak izini hosting panelinden, konsoldan veya sunucu yöneticisinden doğrulayın. Aynı SSH oturumundan alınan bilgi bağımsız doğrulama sayılmaz.
- 4Anahtar türünü de karşılaştırın
ED25519, ECDSA veya RSA türü ile gösterilen parmak izinin yönetici bilgisiyle eşleşmesini kontrol edin.
- 5Yalnızca doğrulama sonrası kaydı yenileyin
Değişiklik onaylandıktan sonra eski known-host kaydını kaldırıp yeni anahtarı kaydedin.
Eski known_hosts kaydı nasıl kaldırılır?
OpenSSH kullanan bilgisayarlarda yalnızca ilgili host kaydını temizlemek için ssh-keygen kullanılabilir. Özel portla bağlanıyorsanız kayıt host ve port birleşimiyle tutulabilir.
Tüm known_hosts dosyasını silmek diğer sunucular için biriktirdiğiniz doğrulama geçmişini de kaldırır. Bu nedenle yalnızca doğrulanmış değişikliğe ait satırı temizlemek daha güvenlidir.
ssh-keygen -R sunucu.example.comssh-keygen -R "[sunucu.example.com]:2222"Mobil uygulamada ne yapılmalı?
Uygulamada kayıtlı sunucu anahtarı veya sertifika izni temizlenmeden önce değişikliğin kaynağını doğrulayın. Profildeki sunucu adresi ve portun beklediğiniz sistemle eşleştiğini kontrol edin.
Doğrulama tamamlandıktan sonra ilgili sunucuya ait eski güven kaydını kaldırın, yeniden bağlanın ve gösterilen yeni parmak izini tekrar karşılaştırın. Bağlantı profilini tamamen silmek genellikle gerekli değildir.
Kaçınılması gereken yaklaşımlar
StrictHostKeyChecking benzeri doğrulamaları kapatmak sonraki yanlış sunucuları da kabul edebilir.
Şüpheli bağlantının içinden gelen bilgi güvenilir ikinci kanal değildir.
Tek bir değişiklik için diğer sunucuların doğrulama geçmişini kaybetmeyin.
Farklı adlarla kurulan bağlantılar ayrı known-host kayıtları oluşturabilir.
Sunucu yöneticisi değişikliği doğrulamıyorsa parola veya özel anahtar kullanmadan bağlantıyı sonlandırın.
Rehberi uygulamaya geçirin.
İlgili Varkuna ürününü inceleyin veya ayrıntılı kullanım rehberini açın.