Windows 10'un yeni OpenSSH ve PowerShell ile ssh-agent oturum açma oturumu nasıl tutulur


18

Ubuntu makinemde, oturum açmış olan tek bir ssh aracısını korumak için Anahtarlık kullanıyorum.

OpenSSH'nin yerel olarak dahil edildiği şimdi Windows'da buna benzer bir şey istiyorum. İyi bilinen if [ -z "$SSH_AUTH_SOCK" ] ; then ...senaryo ile Git Bash kullanıyordum, ancak bu birçok ssh aracısının açılmasına neden oldu, buna karşı önerildiğini biliyordum (kısmen bu blog yazısı nedeniyle: http://rabexc.org/posts/pitfalls-of-ssh -agents ) - Ubuntu için Anahtarlık almamı sağlayan şey buydu. Bunu artık kullanmamanın bir başka nedeni de ana kabuğum olarak PowerShell'e geçmem.

Ancak, Windows'ta özellikle PowerShell ve Win32-OpenSSH ile aynı tür şeylere nasıl ulaşacağımdan emin değilim .

Teşekkürler!

Yanıtlar:


14

OpenSSH Kimlik Doğrulama Aracısı hizmetini otomatik olarak başlayacak şekilde yapılandırmanız gerekir (ya da powershell'inizi ilk kez açtığınızda her zaman el ile başlatabilirsiniz: Start-Service ssh-agent).

Bundan sonra, ssh-add C:\path\to\your\ssh\key\id_rsasadece bir kez yapmanız gerekir . Bundan sonra, ssh-agent her başlatıldığında, anahtar orada olacaktır. İle kontrol edebilirsiniz ssh-add -l.

DÜZENLEME: SSH aracısının Windows ile otomatik olarak başlatılmasını sağlamak Set-Service ssh-agent -StartupType Automaticiçin süper kullanıcı powershell isteminde çalışabilirsiniz .


Ssh-agent'ın otomatik olarak başlatılmasına ilişkin ayrıntıları ekleyebilir misiniz?
Mark Woon

@MarkWoon Cevabımı yeni düzenledim.
Davi Koscianski Vidal

2
Bu işe yaramaz gibi görünüyor - Set-Service'in belirgin bir etkisi yok ve manuel Start-Service, bir şey başlatırken de etkisiz - bundan sonra herhangi bir ssh-add komutu "ajan ile iletişim başarısız" ile başarısız oluyor. .
Chris Dodd

1
* Başlangıç ​​menüsünde "Hizmetler" için arama yapın * "OpenSSH Kimlik Doğrulama Aracısı" na çift tıklayın * Başlangıç ​​türünü "Otomatik" olarak ayarlayın * "Başlat" a tıklayın * Tamam ve Çıkış'a tıklayın * * Şimdi PowerShell'e gidin ve anahtarınızı "ssh -ekle "* Bundan sonra ajan ihtiyacınız olduğunda anahtarınızı hatırlar :)
Esben Andersen

1

Tam bir cevap değil, yine de beni buraya getiren soruna bir çözüm. (Burada da aynı sorun gibi görünen başka bir kişiden bir yorum görüyorum.)

Windows için Git veya MinGW veya Windows yolunuza GNU yardımcı programları ekleyebilecek başka bir şey varsa, bu Windows için OpenSSH ikili dosyalarını etkileyebilir. Benim için, PATH ortam değişkenimden ProgramFiles / Git / bin'i kaldırmam ve ardından çalışmasını sağlamak için PowerShell'i yeniden başlatmam gerekiyordu. Bundan önce "temsilci ile iletişim başarısız" alıyordum

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.