GNU/Linux >> Belajar Linux >  >> Linux

Cara Memperbaiki Kunci yang Menyinggung di file ~/.ssh/known_hosts

Seperti yang telah kita bahas sebelumnya di artikel perintah klien ssh dasar kami, ketika Anda melakukan ssh ke mesin untuk pertama kalinya (atau setiap kali ada perubahan kunci di mesin jarak jauh), Anda akan diminta untuk mengatakan 'ya' untuk keaslian host .

Fitur ini dikontrol menggunakan parameter ssh StrictHostKeyChecking. Secara default, StrictHostKeyChecking disetel ke ya.

Pengaturan default "StrictHostKeyChecking yes" adalah opsi terbaik dari sudut pandang keamanan untuk melindungi sistem Anda dari serangan kuda trojan. Jika Anda tidak tahu apa yang Anda lakukan, Anda sebaiknya tidak menyetel StrictHostKeyChecking ke no.

Terkadang mungkin baik untuk menonaktifkannya sementara. Misalnya, pertama kali ketika Anda terhubung ke banyak host yang dikenal, Anda mungkin ingin mengatur menonaktifkan fitur ini (yaitu meminta ya untuk kunci host) dan biarkan ssh menambahkan secara otomatis semua kunci host. Nanti Anda bisa mengaktifkan fitur ini.

Ketika Anda telah mengonfigurasi login tanpa kata sandi otomatis untuk server dan jika kunci host jarak jauh terus berubah karena suatu alasan (yang Anda tahu mengapa itu berubah), Anda mungkin ingin mempertimbangkan untuk menyetel StrictHostKeyChecking ke no sampai masalah kunci host jarak jauh terus berubah adalah diperbaiki.

Dari baris perintah ssh, Anda dapat melewati opsi StrictHostKeyChecking seperti yang ditunjukkan di bawah ini. Anda juga dapat mengatur opsi ini di file ssh_config Anda

# ssh -o 'StrictHostKeyChecking no' user@host

Jika Anda masuk ke server untuk pertama kalinya, RSA akan ditambahkan secara permanen ke daftar host yang dikenal tanpa meminta Anda .

Tapi, jika ada perubahan kunci (biasanya jika OS (atau sshd) diinstal ulang, kunci host jarak jauh akan berubah), maka Anda harus menghapus kunci lama yang tidak valid seperti yang ditunjukkan di bawah ini.

Hapus kunci ssh yang mengganggu

Kesalahan berikut akan ditampilkan saat kunci host jarak jauh berubah (setelah Anda terhubung sebelumnya dengan kunci host jarak jauh yang valid).

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    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
a7:a8:f2:97:94:33:58:b7:9d:bc:e0:a6:6b:f7:0a:29.
Please contact your system administrator.
Add correct host key in /home/ramesh/.ssh/known_hosts to get rid of this message.
Offending key in /home/ramesh/.ssh/known_hosts: 6
Permission denied (publickey,password).

Anda harus menghapus kunci untuk melanjutkan lebih jauh. Gunakan perintah berikut untuk menghapus kunci yang menyinggung.,

# sed -i '6d' ~/.ssh/known_hosts

Catatan :Mengubah 6d sesuai dengan nomor baris yang ditampilkan.

Jika sed Anda tidak memiliki opsi -i, gunakan perl atau gunakan beberapa editor untuk menghapus kunci yang menyinggung.

Solusi Perl:

# perl -pi -e 's/\Q$_// if ($. == 6);' ~/.ssh/known_hosts

Catatan :Ubah nomor baris dari 6 menjadi nomor baris yang sesuai.


Linux
  1. [Linux]:Cara Mem-Hash File Host yang Diketahui dari direktori ~/.ssh/

  2. Ssh – Melewati Kata Sandi ke Skrip?

  3. Cara Mengatur Kunci SSH di Ubuntu 18.04

  1. Cara Mengatur Kunci SSH

  2. Cara memperbaiki kesalahan "verifikasi kunci host gagal"

  3. peringatan kunci yang menyinggung saat menghubungkan dengan ssh ke VPS saya

  1. Cara Mengatur Login SSH Tanpa Kata Sandi

  2. Bagaimana cara berhenti menambahkan IP dari EC2 ke known_hosts untuk ssh?

  3. SSH - Cara memasukkan perintah -t di file ~/.ssh/config