Mencegah peringatan kunci host SSH RSA untuk perubahan kunci vs alamat IP

9

Saya memiliki jaringan dengan DHCP yang diaktifkan, dan juga komputer yang menjalankan sistem operasi dual boot dan memiliki kunci SSH yang berbeda pada masing-masing (dan ya, saya ingin menyimpan kunci yang berbeda pada masing-masing daripada menyalin identitas / kunci pribadi yang sama untuk masing-masing). Karena alamat IP tidak berubah di antara sistem operasi karena alamat MAC sama, saat menghubungkan ke ssh, bahkan ketika tidak menggunakan alamat IP tetapi hostname melalui DNS / mDNS, saya mendapatkan peringatan:

Warning: the RSA host key for 'hostname' differs from the key for the IP address '192.168.1.172'
Offending key for IP in /Users/user/.ssh/known_hosts:37
Matching host key in /Users/user/.ssh/known_hosts:38
Are you sure you want to continue connecting (yes/no)?

Bagaimana saya bisa menghilangkan peringatan ketika nama host berbeda dari alamat IP untuk nama host itu, tetapi mempertahankan kemampuan untuk memeriksa kunci host sama untuk setiap nama host? (setiap OS memiliki nama host yang unik)

Adam MW
sumber

Jawaban:

19

Masukkan CheckHostIP nofile ~ / .ssh / config Anda. Contoh file konfigurasi:

Host foo-win.local foo-win
  Hostname foo-win.local
  CheckHostIP no

Host foo-lin.local foo-lin
  Hostname foo-lin.local
  CheckHostIP no

Dari ssh_config (5) :

CheckHostIP

Jika flag ini diset ke "yes", ssh (1) juga akan memeriksa alamat IP host di file known_hosts. Ini memungkinkan ssh untuk mendeteksi jika kunci host berubah karena spoofing DNS. Jika opsi diatur ke "tidak", centang tidak akan dieksekusi. Standarnya adalah "ya".

PleaseStand
sumber
Bekerja dengan baik, langsung. Terima kasih atas jawaban cepat dan ringkas yang jelas.
Adam MW