Seorang agen adalah program yang menyimpan kunci Anda di memori sehingga Anda hanya perlu membukanya sekali , bukan setiap waktu. ssh-agent melakukan ini untuk kunci SSH.
Metode biasa untuk memulai ssh-agent adalah:
-
eval `ssh-agent`
– ini menjalankan agen di latar belakang, dan menyetel variabel lingkungan yang sesuai untuk saat ini contoh shell.(ssh-agent , ketika dimulai tanpa argumen, mengeluarkan perintah untuk ditafsirkan oleh shell Anda.)
-
exec ssh-agent bash
– memulai baru contoh daribash
shell, menggantikan yang sekarang.(Dengan satu atau lebih argumen, ssh-agent tidak menampilkan apa pun, tetapi memulai perintah yang ditentukan:dalam hal ini,
bash
shell, tapi secara teknis bisa apa saja.)Metode kedua terkadang lebih disukai, karena secara otomatis mematikan ssh-agent saat Anda menutup jendela terminal. (Saat memulainya dengan
eval
, agen akan tetap berjalan, tetapi tidak dapat diakses.)
Namun, ini hanya memulai agen kosong. Untuk benar-benar membuatnya berguna, Anda perlu menggunakan ssh-add , yang membuka kunci Anda (biasanya ~/.ssh/id_*
) dan memuatnya ke dalam agen, membuatnya dapat diakses oleh ssh atau sftp koneksi.
Selain itu, Anda mungkin ingin menambahkan beberapa kunci saat sesi dimulai.
Edit ~/.bashrc
Anda file, dan tambahkan :
ssh-add &>/dev/null || eval `ssh-agent` &>/dev/null # start ssh-agent if not present
[ $? -eq 0 ] && { # ssh-agent has started
ssh-add ~/.ssh/your_private.key1 &>/dev/null # Load key 1
ssh-add ~/.ssh/your_private.key2 &>/dev/null # Load key 2
}
Periksa kunci Anda dengan ssh-add -l
Anda dapat menghentikan sesi ssh-agent saat ini dengan ssh-agent -k
Sesuatu yang perlu diketahui tentang ssh-agent dan .bashrc adalah jangan memuat terlalu banyak kunci. Jumlah default percobaan untuk daemon ssh dibatasi hingga 6. Ini dapat dimodifikasi di /etc/ssh/sshd_config
dengan MaxAuthTries
nilai.