GNU/Linux >> Belajar Linux >  >> Linux

Cara memperbaiki kesalahan "verifikasi kunci host gagal"

Apa yang terjadi di latar belakang saat Anda menghubungkan server pertama kali menggunakan ssh

Saat Anda terhubung ke server untuk pertama kalinya, server meminta Anda untuk mengonfirmasi bahwa Anda terhubung ke sistem yang benar. Contoh berikut menggunakan perintah ssh untuk terhubung ke host jarak jauh bernama host03:

# ssh host03
The authenticity of host 'host03 (192.0.2.103)' can’t be
established. ECDSA key fingerprint is ...
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'host03,192.0.2.103' (ECDSA) to the list of known hosts.

Validasi host adalah salah satu fitur utama OpenSSH. Perintah memeriksa untuk memastikan bahwa Anda terhubung ke host yang menurut Anda terhubung. Saat Anda memasukkan ya, klien menambahkan kunci host publik server ke file ~/.ssh/known_hosts pengguna, membuat direktori ~/.ssh jika perlu. Saat berikutnya Anda terhubung ke server jauh, klien membandingkan kunci ini dengan kunci yang disediakan server. Jika tombol cocok, Anda tidak akan ditanya apakah ingin melanjutkan koneksi.

Apa yang menyebabkan kesalahan verifikasi kunci host gagal

Jika seseorang mencoba menipu Anda untuk masuk ke mesin mereka sehingga mereka dapat mengendus sesi SSH Anda, Anda akan menerima peringatan seperti berikut:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    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
dd:cf:50:31:7a:78:93:13:dd:99:67:c2:a2:19:22:13.
Please contact your system administrator.
Add correct host key in /home/user01/.ssh/known_hosts to get rid of this message.
Offending key in /home/lcz/.ssh/known_hosts:7
RSA host key for 192.168.219.149 has changed and you have requested strict checking.
Host key verification failed.

Jika Anda pernah mendapatkan peringatan seperti ini, hentikan dan tentukan apakah ada alasan mengapa kunci host server jauh berubah (seperti jika SSH ditingkatkan atau server itu sendiri ditingkatkan). Jika tidak ada alasan yang baik untuk mengubah kunci host, jangan coba sambungkan ke mesin itu sampai Anda menyelesaikan situasinya.

Cara memperbaiki kesalahan "verifikasi kunci host gagal"

Metode 1 – menghapus kunci lama secara manual

1. Di server sumber, kunci lama disimpan dalam file ~/.ssh/known_hosts .

2. Hanya jika kejadian ini sah, dan hanya jika diketahui dengan tepat mengapa server SSH menyajikan kunci yang berbeda, maka edit file known_hosts dan hapus entri kunci yang tidak lagi valid. Setiap pengguna di server klien/sumber memiliki known_hosts sendiri di direktori home-nya, cukup hapus entri dalam file pengguna tertentu untuk server tujuan. Misalnya:
– Jika root ingin ssh ke server, hapus saja entri di /root/.ssh/known_hosts file is all right.
– Jika testuser ingin ssh ke server, maka hapus entri dalam file /home/testuser/.ssh/known_hosts .

3. Dalam kasus saya, saya akan menghapus kunci (disorot dengan warna merah) untuk server tujuan 192.168.219.149 dari file /home/user01/.ssh/known_hosts.

# vim /home/user01/.ssh/known_hosts
172.104.9.113 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBLrY91bQOihgFZQ2Ay9KiBG0rg51/YxJAK7dvAIopRaWzFEEis3fQJiYZNLzLgQtlz6pIe2tj9m/Za33W6WirN8=
192.168.219.148 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCrY/m16MdFt/Ym51Cc7kxZW3R2pcHV1jlOclv6sXix1UhMuPdtoboj+b7+NLlTcjfrUccL+1bkg8EblYucymeU=
192.168.219.149 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCrY/m16MdFt/Ym51Cc7kxZW3R2pcHV1jlOclv6sXix1UhMuPdtoboj+b7+NLlTcjfrUccL+1bkg8EblYucymeU=

Metode 2 – menghapus kunci lama menggunakan perintah ssh-keygen

Anda juga dapat menghapus kunci lama menggunakan perintah ssh-keygen juga. Sintaks untuk menggunakan perintah di bawah ini.

$ ssh-keygen -R [hostname|IP address]

Misalnya, Dalam kasus kami, kami akan menggunakan alamat IP untuk menghapus kunci lama.

$ ssh-keygen -R 192.168.219.149
# Host 192.168.219.149 found: line 3
/home/user01/.ssh/known_hosts updated.
Original contents retained as /home/user01/.ssh/known_hosts.old
Catatan :Jika Anda tidak tahu persis, mengapa server SSH menampilkan kunci yang berbeda, file known_hosts Anda salah, atau seseorang harus menyelidiki server ini dan koneksi jaringan untuk memahami alasan perubahan yang tidak terduga.

Verifikasi

Jika server jauh meminta konfirmasi untuk menambahkan kunci baru ke file ~/.ssh/known_host, itu mengonfirmasi bahwa Anda telah berhasil menghapus kunci lama. Jika Anda mengonfirmasi permintaan, mesin sumber menambahkan kunci baru ke dalam file ~/.ssh/known_host.

$ ssh [email protected]
The authenticity of host '192.168.219.149 (192.168.219.149)' can't be established.
ECDSA key fingerprint is SHA256:V+iGp3gwSlnpbtYv4Niq6tcMMSZivSnYWQIaJnUvHb4.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.219.149' (ECDSA) to the list of known hosts.


Linux
  1. Bagaimana cara memperbaiki kesalahan Kegagalan Otentikasi Cron di Linux?

  2. Bagaimana Memperbaiki Kesalahan 'Pengambilan kunci GPG gagal' selama Instalasi YUM?

  3. Bagaimana Memperbaiki Kesalahan OpenStack – Gagal menghapus jaringan? [Terselesaikan]

  1. Bagaimana cara Memperbaiki kesalahan Metasploit - membutuhkan permata bundler untuk diinstal? [Terselesaikan]

  2. Verifikasi tanda tangan gagal pada kunci publik SPKAC – Perbaiki kesalahan OpenCA

  3. Cara Memperbaiki GPG No Public Key NO_PUBKEY Error Selama Pembaruan apt-get

  1. Cara Memperbaiki "gpg:keyserver accept failed:No dirmngr" Error

  2. Cara Memperbaiki Kesalahan – ModSecurity:Akses ditolak dengan kode 44 [Apache]

  3. Bagaimana Cara Mendapatkan Kunci Usb Untuk Pemasangan Otomatis?