SSH adalah protokol jaringan yang aman dan membuat tunnel terenkripsi antar sistem. Protokol ini tetap populer di kalangan developer yang membutuhkan akses jarak jauh ke komputer tanpa antarmuka grafis. Meski SSH sudah ada selama puluhan tahun dan telah melayani banyak pengguna dengan andal, protokol ini tetap bisa terdampak oleh kesalahan tertentu.
Banyak dari kesalahan ini sudah dikenal luas di komunitas SSH, dan solusi penanganannya sudah banyak didokumentasikan. Di antaranya: firewall incompatibility, Masalah injeksi public key SSH, Masalah mode file key SSH, dan error "Warning: Remote Host Identification Has Changed".
Error ini muncul di semua sistem operasi utama, termasuk Windows, Linux, dan macOS. Penyebabnya bisa jadi merupakan masalah keamanan yang nyata, bukan sekadar gangguan teknis biasa. Dalam artikel ini, kami menjelaskan mengapa hal ini terjadi, apa artinya bagi keamanan koneksi SSH kamu, dan cara mengatasinya di setiap platform utama.
Apa yang Memicu Warning: Remote Host Identification Has Changed (dan Apakah Perlu Dikhawatirkan?)
Peringatan "Warning: Remote Host Identification Has Changed" muncul ketika public key SSH yang tersimpan di file known_hosts tidak cocok dengan key yang saat ini disajikan oleh server. Ketidakcocokan ini memicu mekanisme keamanan bawaan SSH untuk melindungi kamu dari ancaman yang mungkin terjadi.
Alasan Wajar di Balik Perubahan Host Key
Ada beberapa alasan yang tidak berbahaya mengapa host key sebuah server bisa berubah. Terkadang kamu akan melihat variasi seperti "RSA host key has changed", tergantung pada jenis key yang digunakan.

Perubahan Terkait Server:
- Sistem operasi server diinstal ulang atau diperbarui
- Server dibangun ulang atau dipulihkan dari backup
- Konfigurasi SSH server direset
- Mesin fisik atau virtual diganti
- Migrasi server ke hardware baru
Perubahan Konfigurasi Jaringan:
- Penyedia cloud mendaur ulang alamat IP dari waktu ke waktu, atau koneksi Anda diarahkan melalui load balancer.
- DHCP menetapkan ulang alamat IP ke mesin yang berbeda
- IP server yang sudah dinonaktifkan ditetapkan ke sistem baru
- Record DNS diperbarui untuk mengarah ke server yang berbeda

Tindakan Manajemen Key:
- Administrator sistem meregenerasi host key secara manual untuk keperluan keamanan
- Perangkat lunak server SSH diinstal ulang
- Kebijakan keamanan mengharuskan rotasi key
Perlu dipahami bahwa perubahan password pengguna tidak mempengaruhi host key. Keduanya merupakan mekanisme autentikasi yang terpisah. Host key hanya berubah ketika server itu sendiri atau konfigurasi SSH-nya dimodifikasi.
Kapan Harus Menganggap Peringatan Ini Serius
Meskipun banyak perubahan host key bersifat sah, hal ini bisa mengindikasikan ancaman keamanan yang nyata. Anda perlu waspada jika:
- Anda tidak melakukan perubahan apa pun pada server atau tidak mengetahui adanya pemeliharaan terjadwal
- Anda tidak dapat memverifikasi alasan perubahan key tersebut dengan administrator server
- Server diakses melalui jaringan publik atau koneksi yang tidak tepercaya
- Anda terhubung ke sistem produksi atau server yang menyimpan data sensitif

Serangan man-in-the-middle, meski relatif jarang terjadi, memang ada. Dalam serangan semacam ini, penyerang menempatkan diri di antara komputer Anda dan server yang sah, lalu mengintersep semua lalu lintas.
Human error dan rekayasa sosial menyumbang 68% dari pelanggaran keamanan, sehingga kewaspadaan menjadi hal utama. Anda dapat melindungi sistem lebih jauh dengan mempelajari pencegahan serangan brute-force.
Data terbaru dari IBM menunjukkan bahwa rata-rata biaya global dari sebuah data breach mencapai $4,44 juta pada 2025, dengan rata-rata waktu deteksi delapan bulan. Ini menjelaskan mengapa mekanisme verifikasi host key SSH ada dan mengapa Anda tidak boleh mengabaikan peringatan ini tanpa investigasi.
Cara Memverifikasi apakah Peringatan Aman
Sebelum melanjutkan perbaikan, lakukan langkah-langkah verifikasi berikut:

- Tanyakan ke tim Anda: Jika akses server dibagi bersama, tanyakan kepada rekan apakah ada perubahan yang mereka lakukan
- Periksa log server: Cek catatan pemeliharaan atau log perubahan untuk aktivitas terbaru
- Hubungi penyedia hosting Anda: Jika menggunakan layanan cloud, konfirmasi apakah ada pemeliharaan yang berlangsung
- Gunakan saluran yang aman: Jika memungkinkan, sambungkan melalui jaringan yang sudah dikenal aman untuk memverifikasi fingerprint
- Compare fingerprints: Beberapa penyedia hosting menampilkan fingerprint SSH terkini di panel kontrol mereka
Jika Anda dapat memastikan bahwa perubahan key tersebut sah, Anda bisa melanjutkan untuk menghapus key lama dan menerima key baru dengan aman.
Jika Anda ingin menghindari penugasan ulang IP dinamis atau konflik host key, infrastruktur yang Anda pilih sangat menentukan.
Cloudzy provides Hosting SSH VPS dengan IP statis khusus. Anda berjalan di atas prosesor AMD Ryzen 9 dengan penyimpanan NVMe untuk eksekusi perintah instan. Jaringan kami mencapai 40 Gbps di 12 lokasi global. Selain itu, kami menyertakan perlindungan DDoS gratis untuk menjaga keamanan koneksi Anda.
Cara Memperbaiki Error "Remote Host Identification Has Changed"
Perbaikannya sederhana: hapus catatan key lama dari sistem Anda. Ini menghilangkan ketidakcocokan dan memungkinkan Anda menyimpan key baru saat koneksi berikutnya. Lihat panduan kami tentang SSH clients untuk lebih banyak alat.
Selain itu, Anda dapat melakukannya dengan satu perintah atau dengan mengedit file secara manual.
Metode 1: Command Line (Tercepat)
Metode ini berlaku untuk macOS, Linux, dan Windows 10+ (menggunakan OpenSSH). Ini adalah cara tercepat untuk mengatasi error tersebut. Untuk informasi lebih lanjut, Anda dapat membaca halaman manual ssh-keygen.
- Buka terminal Anda.
- Jalankan perintah ini (ganti hostname dengan IP atau domain server Anda):
ssh-keygen -R hostname
This command automatically finds the old key in your known_hosts file and deletes it. Method 2: Manual File Editing (macOS)
Jika Anda lebih suka menggunakan editor visual, Anda bisa menghapus kunci tersebut secara manual. Pesan error biasanya menunjukkan dengan tepat nomor baris mana yang perlu dihapus.
Buka terminal Anda dan edit file dengan Nano:
nano ~/.ssh/known_hosts
Temukan baris yang disebutkan dalam pesan error. Hapus baris tersebut, lalu tekan Ctrl + X and Y to save.

Solusi untuk Windows
Pengguna Windows umumnya menggunakan klien OpenSSH bawaan atau PuTTY.
Opsi 1: Windows OpenSSH (Windows 10/11)
Di Windows 10 dan 11, OpenSSH adalah fitur opsional. Tambahkan melalui Settings > Apps > Optional features. Server 2025 sudah menyertakan klien ini, tetapi Anda tetap perlu mengaktifkannya.
Jika Anda menggunakan PowerShell atau Command Prompt, perintah ssh-keygen dari Metode 1 juga berlaku di sini.
Untuk mengedit file secara manual:
- Press Windows Key + R.
- Type %USERPROFILE%\.ssh and press Enter.
- Open the known_hosts file dengan Notepad.
- Hapus baris yang menyebabkan error, lalu simpan file.
Untuk pengelolaan kunci yang lebih baik, lihat panduan kami tentang cara membuat SSH key di Windows.
Opsi 2: Menggunakan PuTTY
PuTTY menyimpan kunci di Windows Registry, bukan dalam sebuah file.
- Buka Registry Editor (tekan Windows Key + R, type regedit, and hit Enter).
- Navigate to: HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\SshHostKeys\
- Temukan entri yang sesuai dengan hostname atau IP server Anda.
- Klik kanan dan pilih Delete.

Solusi untuk Linux
The ssh-keygen command we covered in Method 1 adalah cara standar untuk menyelesaikan masalah ini di Linux. Prosesnya cepat dan didukung secara native.
Manual Editing
Jika ingin melihat isi file secara langsung, Anda bisa mengeditnya dengan text editor seperti Nano.
- Buka terminal Anda.
- Type nano ~/.ssh/known_hosts and press Enter.
- Temukan nomor baris yang disebutkan dalam pesan error Anda.
- Hapus baris tersebut, lalu tekan Ctrl + X and Y to save.
Anda juga bisa menggunakan Vim (vim ~/.ssh/known_hosts) jika Anda sudah familiar dengannya.

Peringatan soal Menonaktifkan Verifikasi
Anda bisa memaksa SSH untuk terhubung tanpa verifikasi, namun ini berisiko. Cara ini melewati perlindungan terhadap serangan man-in-the-middle.
Gunakan pendekatan ini hanya untuk pengujian lokal di jaringan yang terpercaya. Untuk macOS dan Linux, ketik perintah ini:
ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null [email protected]
Jika Anda menggunakan Windows, path Unix tidak akan berfungsi. Anda harus menggunakan NUL agar bypass dapat berjalan:
ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=NUL [email protected]
Jangan jalankan perintah override ini pada koneksi publik atau server production.
Memperbaiki ketidakcocokan key adalah pemeliharaan rutin, namun ada langkah lebih lanjut untuk mengamankan koneksi Anda. Bot sering menargetkan port default 22 dengan serangan brute-force. Anda bisa menghindari sebagian besar gangguan ini dengan mengubah port SSH di Linux ke nilai yang lebih sulit ditebak.

Jangan gunakan metode ini untuk server production atau melalui jaringan yang tidak terpercaya.
Cara Mencegah Pesan "Remote Host Identification Has Changed" di Masa Mendatang
Meski perubahan host key yang sah tidak selalu bisa dicegah, Anda tetap bisa meminimalkan gangguan dan menjaga praktik keamanan yang lebih baik.
Panduan Referensi Cepat
| Your Role | Key Strategies |
| System Administrators | Buat cadangan key, dokumentasikan perubahan, gunakan sertifikat, dan rotasi key secara berkala |
| Regular Users | Kelola inventaris, verifikasi melalui saluran aman, dan pantau log |
| Cloud Environment
Users |
Gunakan nama DNS, manfaatkan alat penyedia, dan terapkan infrastructure as code |

Untuk Administrator Sistem
Cadangkan Host Key: Simpan kunci dari /etc/ssh/ sebelum menginstal ulang OS. Pulihkan setelahnya untuk mencegah peringatan bagi pengguna Anda.
Dokumentasikan Perubahan yang Direncanakan: Beri tahu pengguna sebelum mengganti kunci dan bagikan fingerprint baru melalui saluran aman. Ini memungkinkan mereka memverifikasi koneksi.
Gunakan Sertifikat SSH: Tim besar sebaiknya menggunakan certificate authority terpusat. Ini menandatangani host key dan menghilangkan kebutuhan verifikasi manual.
Terapkan Rotasi Kunci: Jadwalkan pergantian host key Anda. Pembaruan yang terjadwal lebih mudah dikelola tim daripada perubahan mendadak.
Untuk Pengguna Umum
Maintain an Inventory: Simpan catatan pribadi tentang fingerprint server atau gunakan dokumentasi aman dari tim Anda.
Verifikasi Melalui Saluran Terpisah: Konfirmasi kunci melalui sumber tepercaya seperti konsol cloud, bukan pesan biasa.
Monitor Logs: Periksa log SSH lokal Anda secara berkala untuk mendeteksi pola koneksi mencurigakan atau error berulang.
Gunakan Config Management: Gunakan file konfigurasi SSH untuk mengelola lingkungan dev yang dinamis tanpa menurunkan pengaturan keamanan.
Untuk Lingkungan Cloud yang Dinamis
Gunakan Nama DNS: Hubungkan menggunakan hostname, bukan IP. Ini menjaga konsistensi ketika alamat yang mendasarinya berubah.
Manfaatkan Alat Cloud: Gunakan konsol penyedia untuk mengambil fingerprint terkini. Verifikasi kunci melalui alat tersebut sebelum menerima perubahan.
Infrastructure as Code: Otomatiskan verifikasi kunci dengan tools seperti Terraform. Untuk konfigurasi lanjutan, kamu juga bisa menggunakan proxy SOCKS5 SSH.
Bastion Hosts: Siapkan jump server dengan kunci yang stabil. Server ini berfungsi sebagai titik masuk yang aman ke infrastruktur dinamismu.
Conclusion
Peringatan "Warning: Remote Host Identification Has Changed" adalah fitur keamanan penting di SSH, bukan kesalahan yang bisa diabaikan. Meski peringatan ini sering muncul karena alasan yang wajar seperti pemeliharaan server atau perubahan konfigurasi, peringatan ini berperan penting dalam melindungimu dari serangan man-in-the-middle dan akses tidak sah.
Saat peringatan ini muncul, cari tahu penyebabnya sebelum melanjutkan. Dalam kebanyakan kasus, solusinya cukup sederhana: hapus kunci host lama menggunakan metode yang sesuai dengan sistem operasimu, lalu terima kunci baru saat koneksi berikutnya.
Dengan memahami cara kerja kunci host SSH dan menerapkan praktik terbaik, kamu bisa menjaga keamanan sekaligus kemudahan dalam alur kerja akses jarak jauhmu. Untuk informasi lebih lanjut tentang transfer file secara aman, lihat menyalin file melalui SSH.