Bagaimana saya bisa menambahkan kunci host ke known_hostsfile SSH dengan aman?
Saya menyiapkan mesin pengembangan, dan saya ingin (misalnya) mencegah gitdari meminta ketika saya mengkloning repositori github.commenggunakan SSH.
Saya tahu bahwa saya dapat menggunakan StrictHostKeyChecking=no(misalnya jawaban ini ), tetapi itu tidak aman.
Sejauh ini, saya telah menemukan ...
GitHub menerbitkan sidik jari kunci SSH mereka di https://help.github.com/articles/github-s-ssh-key-fingerprints/
Saya dapat menggunakan
ssh-keyscanuntuk mendapatkan kunci hostgithub.com.
Bagaimana saya menggabungkan fakta-fakta ini? Diberi daftar sidik jari yang telah ssh-keyscandiisi sebelumnya , bagaimana cara saya memverifikasi bahwa output dapat ditambahkan ke known_hostsfile?
Saya kira saya bertanya yang berikut:
Bagaimana cara saya mendapatkan sidik jari untuk kunci yang dikembalikan ssh-keyscan?
Mari kita asumsikan bahwa saya sudah menjadi MITM-ed untuk SSH, tetapi saya dapat mempercayai halaman GitHub HTTPS (karena memiliki rantai sertifikat yang valid).
Itu berarti bahwa saya memiliki beberapa kunci host (tersangka) SSH (dari ssh-keyscan) dan beberapa sidik jari kunci (tepercaya). Bagaimana saya memverifikasi satu terhadap yang lain?
Terkait: bagaimana cara hash bagian host dari output dari ssh-keyscan? Atau bisakah saya mencampur host yang di-hash / tidak di-host known_hosts?
StrictHostKeyChecking=norentan terhadap MITM. Apakah ssh-keyscanaman terhadap MITM?