Mengapa gnome-keyring-daemon memerlukan kunci publik untuk men-cache passphrase?

8

Saya memiliki dua mesin Arch Linux dengan setup yang hampir identik , keduanya berjalan /usr/bin/gnome-keyring-daemon --daemonize --login. Mereka berdua memiliki kunci rahasia SSH yang sama, tetapi hanya satu dari mereka yang memiliki kunci publik. Pada host dengan kunci publik, daemon GNOME Keyring berfungsi dengan baik - Saya dapat SSH ke komputer lain tanpa diminta seperti yang diharapkan. Pada host tanpa kunci publik, sepertinya GNOME Keyring mengabaikan bahwa saya sudah memasukkan kata sandi , dan saya diminta setiap kali:

$ ls ~/.ssh/id_rsa.pub
ls: cannot access /home/user/.ssh/id_rsa.pub: No such file or directory
$ ssh some-host exit
Enter passphrase for key '/home/user/.ssh/id_rsa':
$ ssh other-host exit
Enter passphrase for key '/home/user/.ssh/id_rsa':

Itu juga tidak mencantumkan identitas , bahkan setelah memasukkan frasa sandi:

$ ssh-add -l
The agent has no identities.

Setelah menyalin kunci publik pada firasat saya tidak lagi diminta untuk frasa sandi. Setelah kemudian menghapus kunci publik lagi gejalanya kembali. Apakah ada alasan untuk perilaku ini, atau itu hanya bug?

l0b0
sumber

Jawaban:

3

Dari halaman dokumentasi SSH Agent SSH Agent :

Agen SSH secara otomatis memuat file dalam ~ / .ssh yang memiliki file berpasangan * .pub yang sesuai. Kunci SSH tambahan dapat dimuat secara manual dan dikelola melalui perintah ssh-add.

Jadi GNOME Keyring id_rsahanya akan memuat jika id_rsa.pubada yang sesuai .

Anda dapat menghasilkan satu dengan ssh-keygendari file kunci pribadi

ssh-keygen -y -f id_rsa  > id_rsa.pub

Jika Anda tidak ingin GNOME Keyring memuat id_rsasecara otomatis, Anda harus menghapusid_rsa.pub

Saya tidak dapat menemukan alasan teknis mengapa konvensi ini dipilih tetapi ini bukan bug.

hdorio
sumber
Terima kasih untuk referensi. Saya tidak yakin saya setuju itu bukan bug.
l0b0
fakta yang menyenangkan, selama 7 tahun perilaku ini terjadi secara acak kepada rekan kerja saya. Hari ini hal itu terjadi pada saya dan saya akhirnya berhenti pada halaman dokumen yang menjelaskan semuanya.
hdorio