Mengapa SSH meminta kata sandi kunci pribadi saya setiap kali

9

Sejak kemarin, setiap kali saya mencoba terhubung ke server ssh, saya dimintai kata sandi. Apa yang harus saya lakukan agar SSH tidak meminta kata sandi setiap kali.

Ben D
sumber
Tebakan buta oleh saya: periksa apakah kunci Anda dimuat ssh-add -l.
jw013
Saya menganggap Anda menggunakan kunci ssh? Jika Anda tidak menggunakan manajer kunci dan memiliki frasa sandi yang tidak kosong, ini normal. Baik gunakan keymanager atau buat frasa sandi kosong untuk kunci Anda. Saya kira yang pertama direkomendasikan.
jika "sejak kemarin", mungkin hanya Anda telah memperbarui sistem Anda, dan sekarang ssh-agent tidak berfungsi lagi.
Coren

Jawaban:

5

Masukkan kunci publik Anda hostnachine:~/.ssh/authorized_keysdan pastikan memiliki izin yang sesuai - chmod 600. Lihat halaman manual, bagian AUTHENTICATION, untuk rincian lebih lanjut. Perhatikan bahwa sshd mungkin dikonfigurasi untuk melarang metode login ini walaupun saya tidak dapat mengerti mengapa.

Sardathrion - menentang penyalahgunaan SE
sumber
Terima kasih, itu berhasil. Namun dapatkah Anda menjelaskan kepada saya mengapa saya harus memasukkannya ke dalam otor_keys dan mengapa itu berfungsi tanpanya.
Ben D
1
Halaman manual memiliki informasi di bagian AUTHENTICATION. Mengenai mengapa itu bekerja sebelumnya, saya tidak bisa memastikan tanpa memiliki akses root ke mesin Anda dan melakukan beberapa pekerjaan forensik.
Sardathrion - terhadap penyalahgunaan SE
2
Anda juga dapat menggunakan ssh-copy-id untuk mendapatkan kunci publik Anda secara otomatis disalin ke host tujuan, jika Anda tidak ingin / perlu menyalinnya secara manual.
Coren
2

Periksa izin direktori, dan izin file.

$HOME tidak dapat ditulisi oleh grup atau lainnya.

$HOME/.sshperlu memiliki 700izin, tidak dapat dibaca, ditulisi atau dieksekusi oleh grup dan lainnya.

$HOME/.ssh/authorized_keys untuk tidak dapat ditulisi atau dieksekusi oleh siapa pun.

Jika Anda menemukan bahwa izin tidak cukup ketat, cobalah mencari tahu apa yang menyebabkan masalah. Terakhir kali ini terjadi pada saya, saya telah mengkompilasi PHP dari awal. Executing make installas root (Slackware) mengubah izin dan kepemilikan /atau /homeseingat saya, dan menjaga ssh dari bekerja dengan authorized_keysdan id_rsa.pubfile yang telah ada dan berfungsi selama berabad-abad. Anda ingin menentukan apa yang menyebabkan masalah, karena perubahan kepemilikan direktori dan / atau izin dapat terjadi karena pemasangan rootkit atau sesuatu seperti itu.

Bruce Ediger
sumber
Ini memperbaikinya untuk saya .. Setelah memperbaiki izin saya, saya menambahkannya menggunakan 'ssh-add' .. setelah menutup terminal itu dan membuka kembali dan melakukan 'ssh-add-l' (huruf L lebih rendah) saya bisa melihat identitas saya , yang berhasil .. Saya bisa SSH ke semua kotak saya tanpa harus mengetikkan kunci pribadi saya 300+ kali sehari !! Terima kasih!
Henry van Megen