Birden fazla özel anahtar ssh ile nasıl kullanılabilir?


58

Özel / genel anahtar kimlik doğrulamasını kullanmak için ssh'yi ayarlamayı başardım. Şimdi yapabilirim

ssh user@server1

Ve özel anahtarla oturum açar. Şimdi başka bir sunucuya bağlanmak ve farklı bir anahtar kullanmak istiyorum. Nasıl ayarladın?

ssh user@server1

privatekey1 kullanır

ssh user@server2

ve privatekey2 kullanır


7
Sebep yok - kişisel bir efsane kutusu ve diğeri bir iş sunucusudur ve işte ev anahtarımı kullanmak istemedim.
Joshua,

cevapların hiçbiri tam soruyu cevaplamıyor gibi görünmüyor, örneğin, farklı anahtarlar nasıl privatekey1 ve privatekey2
jpwynn'de

Yanıtlar:


49

Birkaç seçenek var.

  1. Her iki anahtarı da kullanarak ssh aracınıza yükleyin ssh-add. Ardından her iki sunucuya bağlanırken her iki anahtar kullanılabilir.

  2. $HOME/.ssh/configDosyanızı oluşturun ve Hostserver1 için bir bölüm ve server2 için başka bir bölüm oluşturun . Her Hostbölümde IdentityFileuygun özel anahtar dosyaya işaret eden bir seçenek ekleyin.


2
ssh agent harika bir fikirdi, aynı zamanda hem genel hem de özel anahtar dosyalarına sahip olsaydım, yani key1 ve key1.pub, ~ / .ssh dosyasında onları otomatik olarak yükler.
Joshua,

57

Bunu, ~/.ssh/configdosyanızda ayarlayabilirsiniz . Böyle bir şey olurdu:

Host server1
IdentityFile ~/.ssh/key_file1

Host server2
IdentityFile ~/.ssh/key_file2

man ssh_config referans


4
Ayrıca User, her ana makinenin tuş vuruşlarını kısmasını belirleyebilirsiniz. Son olarak, her ana bilgisayar için yeni bir SSH anahtarı oluştururken, ssh-keygengerçekten alternatif bir anahtar yolu girdiğinizden emin olun.
Marco Ceppi

Varsayılan bir anahtar belirtmek için bir seçenek var mı, host x ->key1key2
demek

Evet, Kullan sh Host * Ve Varsayılanları ekle, altına eklenecek geçersiz kılmalar. Ayrıca: sh man_ssh_config Özellikle "Ana Bilgisayar" bölümündeki yıldız işareti '*' ve ünlem işareti '!'
immeëmosol
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.