Sorun: 20-30 kadar ssh-agent
kimliğim var. Çoğu sunucu kimlik doğrulamasını reddeder Too many failed authentications
, çünkü SSH genellikle giriş yapmak için 20 farklı anahtar denememe izin vermez.
Şu anda, her ana bilgisayar için kimlik dosyasını IdentityFile
ve IdentitiesOnly
yönergesini kullanarak manuel olarak belirtiyorum, böylece SSH çalışan tek bir anahtar dosyasını deneyecek.
Ne yazık ki, orijinal anahtarlar artık kullanılamaz olduğunda bu işlem durur. ssh-add -l
her anahtar dosya için doğru yolları bana gösterir ve bu dosyalar içindeki yollarla eşleşir .ssh/config
, ancak çalışmaz. Görünüşe göre, SSH girintiyi dosya adına göre değil, ortak anahtar imzasıyla seçer, bu da SSH'nin ortak anahtarı ayıklayabilmesi için orijinal dosyaların kullanılabilir olması gerektiği anlamına gelir.
Bununla birlikte iki tane sorun var:
- anahtarları tutan flash sürücüyü çıkarır çıkarmaz çalışmayı durdurur
- anahtar dosyaları uzak ana bilgisayarda bulunmadığından aracı yönlendirmeyi işe yaramaz hale getirir
Elbette, ortak anahtarları kimlik dosyalarımdan çıkarabilir ve bilgisayarımda ve genellikle oturum açtığım her uzak bilgisayarda depolayabilirim. Yine de bu istenen bir çözüm gibi görünmüyor.
İhtiyacım olan şey, SSH'nin içine koyduğum uzak bir ana bilgisayarda bile , doğru anahtarı kullanarak .ssh/config
veya geçirerek doğru anahtarı seçebilmem için dosya adına göre ssh- -i /path/to/original/key
agent'dan bir kimlik seçme olasılığıdır . Tam yolu belirtmeme bile gerek kalmadan anahtarları "takma adlandırabilirsem" daha iyi olurdu.
authorized_keys
, kullanılan anahtara bağlı olarak, doğrudan kabuk erişimine izin vermeden farklı komutlar yürüten bir dosyadır.