GNU/Linux >> Belajar Linux >  >> Linux

kunci ssh ssh-agent bash dan ssh-add

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 dari bash 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.


Linux
  1. Ssh Dan Izin Direktori Rumah?

  2. Ssh – Perbedaan Antara Kunci Openssh dan Kunci Putty?

  3. Apakah `~#` Sebuah Ekspansi Tilde Dari Bash?

  1. Panduan Bash For Loop dan Contohnya

  2. Bash - Perintah tanggal dan spasi

  3. Bagaimana cara menghapus entri ssh-agent (di Mac OS X )?

  1. Cara Mengatur Kunci SSH

  2. SSH – Menghasilkan dan Bekerja dengan kunci ssh

  3. Bagaimana menghubungkan ke server ssh dengan plink dan cmd dan kunci publik