Bagaimana beberapa kunci pribadi dapat digunakan dengan ssh?

58

Saya dapat mengatur ssh untuk menggunakan otentikasi kunci publik / pribadi. Sekarang saya bisa melakukannya

ssh user@server1

Dan logon dengan kunci pribadi. Sekarang saya ingin terhubung ke server lain dan menggunakan kunci yang berbeda. Bagaimana cara mengaturnya begitu

ssh user@server1

menggunakan privatekey1

ssh user@server2

dan menggunakan privatekey2

Joshua
sumber
7
Tidak ada alasan nyata - yang merupakan kotak mitos pribadi dan yang lainnya adalah server kerja dan saya tidak ingin menggunakan kunci rumah saya di tempat kerja.
Joshua
sepertinya tidak ada jawaban yang menjawab pertanyaan penuh, misalnya, bagaimana membuat kunci yang berbeda privatekey1 dan privatekey2
jpwynn

Jawaban:

49

Ada beberapa opsi.

  1. Masukkan kedua kunci ke agen ssh Anda menggunakan ssh-add. Kemudian kedua tombol akan tersedia saat menghubungkan ke kedua server

  2. Buat $HOME/.ssh/configfile Anda dan buat Hostbagian untuk server1 dan lainnya untuk server2. Di setiap Hostbagian, tambahkan IdentityFileopsi yang menunjuk ke file kunci pribadi yang sesuai

Menekan api
sumber
2
ssh agent adalah ide yang bagus, juga jika saya memiliki file kunci publik dan pribadi, yaitu key1 dan key1.pub, di ~ / .ssh akan secara otomatis memuatnya.
Joshua
57

Anda dapat mengatur ini di ~/.ssh/configfile Anda . Anda akan memiliki sesuatu seperti ini:

Host server1
IdentityFile ~/.ssh/key_file1

Host server2
IdentityFile ~/.ssh/key_file2

man ssh_config adalah referensi

Rory
sumber
4
Anda juga dapat menentukan Useruntuk setiap host untuk mengurangi stroke kunci. Terakhir ketika Anda membuat kunci SSH baru untuk setiap host dengan ssh-keygenmemastikan Anda benar-benar memasukkan jalur kunci alternatif.
Marco Ceppi
Apakah ada opsi untuk menentukan kunci default, seperti mengucapkan host x ->key1dan kemudian host lainnyakey2
azerafati
Ya, gunakan sh Host * Dan tambahkan default, daripada menimpa van ditambahkan di bawahnya. Juga: sh man_ssh_config Khususnya bagian di bagian "Tuan Rumah" berkaitan dengan tanda bintang '*' & tanda seru '!'
immeëmosol