Saya ingin melihat host apa saja yang ada di file known_hosts saya tetapi tampaknya tidak bisa dibaca manusia. Apakah mungkin untuk membacanya?
Lebih khusus lagi ada host yang dapat saya hubungkan melalui beberapa nama dan saya ingin mencari tahu apa sidik jari yang saya harapkan dari file host yang dikenal.
Pembaruan: Saya menggunakan OpenSSH_5.3p1 Debian-3ubuntu7, OpenSSL 0.9.8k 25 Mar 2009
Baris dari file known_hosts saya terlihat seperti ini,
|1|guO7PbLLb5FWIpxNZHF03ESTTKg=|r002DA8L2JUYRVykUh7jcVUHeYE= ssh-rsa AAAAB3NzaC1yc2EAAFADAQABAAABAQDWp73ulfigmbbzif051okmDMh5yZt/DlZnsx3DEOYHu3Nu/+THJnUAfkfEc1XkOFiFgbUyK/08Ty0K6ExUaffb1ERfXXyyp63rpCTHOPonSrnK7adl7YoPDd4BcIUZd1Dk7HtuShMmuk4l83X623cr9exbfm+DRaeyFNMFSEkMzztBYIkhpA2DWlDkd90OfVAvyoOrJPxztmIZR82qu/5t2z58sJ6Jm2xdp2ckySgXulq6S4k+hnnGuz2p1klviYCWGJMZfyAB+V+MTjGGD/cj0SkL5v/sa/Fie1zcv1SLs466x3H0kMllz6gAk0/FMi7eULspwnIp65g45qUAL3Oj
Jawaban:
Anda telah
HashKnownHosts
diatur ke "yes
" dalamssh_config
file Anda , jadi nama host tidak tersedia dalam plaintext.Jika Anda tahu nama host yang Anda cari sebelumnya, Anda dapat mencarinya dengan:
Inilah bagian yang relevan dari
ssh-keygen(1)
halaman manual:sumber
22
, maka format dalamknown_hosts
berbeda. Maka Anda harus menggunakan perintah berikut:ssh-keygen -H -F [host.example.com]:2222
Untuk pencari masa depan, artikel ini (non-disclaimer: Saya tidak terafiliasi) memiliki skrip Perl yang relatif sederhana untuk brute-force IP hash dan hostname di
known_hosts
.http://blog.rootshell.be/2010/11/03/bruteforcing-ssh-known_hosts-files/
Memungkinkan mulai dari alamat IP tertentu. Bisa juga dengan mudah dimodifikasi untuk menggunakan kamus.
Juga, pada Juni 2014, proyek John the Ripper menambahkan dukungan untuk cracking known_hosts , yang dapat mengambil keuntungan dari beberapa core CPU, GPU, kamus kamus, dll.
Anda juga dapat menggunakan cuplikan nmap ini untuk menghasilkan kamus semua alamat IP RFC1918 untuk digunakan sebagai kamus:
sumber
Apakah
ssh-keygen -l -f ~/.ssh/known_hosts
membantu? (Menggunakan-v
Anda juga mendapatkan peta harta karun kecil yang bagus, misalnyasumber
ssh-keygen -l -f ~/.ssh/known_hosts -F <hostname>
ssh-keygen -l -F <hostname>
bahkan lebih sederhanaAda string host / ip di awal setiap baris "known_hosts" (sebelum string "ssh-dss" atau "ssh-rsa"):
sumber
awk '{print $1}' known_hosts
melakukan triknya. Ketahuilah bahwa server yang mendengarkan pada port non-standar berakhir sebagai, katakanlah,[some-server]:5555
diknown_hosts
.Gunakan
-l
opsi untukssh-keygen
membuat daftar sidik jari, dan-F
opsi untuk mencari nama host diknown_hosts
file Anda .Anda dapat menggunakan
ssh-keyscan
untuk membandingkan sidik jari Andaknown_hosts
dengan sidik jari dari server.sumber