kunci ssh tetap ada bahkan setelah saya menghapus kunci pribadi dari ~ / .ssh - mengapa?

18

Saya membuat kunci ssh (publik dan pribadi) dan menyimpannya di ~/.ssh/myServer/.

Saya menambahkan kunci publik ke file server ~/.ssh/authorized_keysdan semuanya berfungsi dengan baik!

Dalam upaya saya untuk mencoba dan memahami cara kerja tombol, saya menghapusnya dan terkejut menemukan bahwa saya masih dapat terhubung ke server.

Mengapa saya masih bisa terhubung tanpa kata sandi?

poltj18
sumber

Jawaban:

24

Selamat datang di dunia luar biasa dari OS X Keychain dan ssh-agent ! Dari halaman manual:

ssh-agent adalah program untuk menyimpan kunci privat yang digunakan untuk otentikasi kunci publik (RSA, DSA, ECDSA). Idenya adalah bahwa ssh-agent dimulai di awal sesi X atau sesi login, dan semua jendela atau program lain dimulai sebagai klien untuk program ssh-agent. Melalui penggunaan variabel variabel lingkungan, agen dapat ditemukan dan secara otomatis digunakan untuk otentikasi saat masuk ke mesin lain menggunakan ssh (1).

Kunci pribadi Anda di-cache dalam agen dan diambil dari sana untuk mengotentikasi sesi Anda. OS X, melalui Keychain, melakukan caching ssh-agent otomatis untuk Anda karena "ramah pengguna". Ini mungkin sedikit mengkhawatirkan, tetapi sebagian besar hal yang berguna bahwa ini terjadi.

Waktu-to-live default untuk kunci yang di-cache selamanya. Itu mungkin bukan default yang bagus. Ini akan mem-flush kunci yang di-cache pada logout / siklus login atau reboot. Atau Anda dapat memaksa flush dengan membunuh agen saat ini menggunakan:

ssh-add -D

Anda dapat mendaftar semua kredensial yang di-cache oleh agen dengan menjalankan:

ssh-add -l

Ini akan melakukan hal yang sama tetapi menunjukkan kunci publik lengkap:

ssh-add -L
Ian C.
sumber
Wow! Terima kasih banyak! Saya benar-benar bingung dengan apa yang terjadi. Aku mengerti sekarang!
poltj18
2
@ FAYNUS jika ini menyelesaikan masalah untuk Anda, silakan tekan tanda centang hijau di sisi kanan untuk menandainya sebagai "jawaban yang diterima"! Selamat Datang di Tanya Berbeda!
Ian C.