Ssh-agent yönlendirme için ekstra konfigürasyon gerekli mi?


21

Bu kılavuz , ssh-agent’ın birden fazla sistemde nasıl çalıştığını açıklayan harika bir iş çıkarır. Son diyagramlarda olduğu gibi yönlendirmeyi ayarlamak isterdim, ancak yapılması gereken adımları izlemekte sorun yaşıyorum.

Ağımdaki bazı makineler için, önce bir şifre şifresi girmeden A'dan B'ye, sonra B'den C'ye ssh yazabilirim. Ancak diğer makineler "Kimlik doğrulama aracınızla bağlantı açılamadı" (bazen!), Ardından kimlik doğrulama bilgilerimi iletmiyor. Bu makinelerden birinden ağdaki başka bir kutuya SSHing, tekrar özel anahtar şifremi ister.

Bu makineleri yapmadım ama bazılarını yönetebilirim. Çalışan boxen ve olmayanlar arasındaki farkın ne olduğunu tam olarak bilmiyorum - güvenlik duvarı sorunu, ssh / ssh-agent / sshd yapılandırması, herhangi bir şey olabilir ve hiçbir adım göremiyorum. için adım kılavuzlar spesifik yönlendirme 'net etrafında yüzen. Sadece bu sorunu takip etmeye nereden başlayacağımı bilmem gerekiyor.

Yanıtlar:


23

Ssh aracısının yönlendirilmesine müşteride ( ForwardAgentisteğe bağlı giriş ~/.ssh/config) ve sunucuda ( AllowAgentForwardingisteğe bağlı giriş sshd_config) izin verilmelidir . Şansınız, makinelerinizin bu seçeneklerden biri veya her ikisi için farklı varsayılan ayarlara sahip olmasıdır.

A-> B-> C'ye gidiyorsanız, B-> C adımında yönlendirme gerekli değildir (elbette C-> D'ye gitmediğiniz sürece).

B'ye giriş yaptığınızda, ortam değişkeninin SSH_AUTH_SOCKtanımlanmış olduğunu kontrol edin . Değeri, sshacenteyle nasıl iletişime geçileceğini bilmesidir.

Ajan ileticisinin müşteriyi sunucuya karşı savunmasız kıldığı ve sunucuya karşı savunmasız bıraktığı ve prensipte aracı olarak el ile yönlendirmeyi ayarlayabileceğinizden (ve o zamandan bu kadar fazla bir nokta olmamasına rağmen) onu kurmanın zorluğu, aracının yönlendirilmesinin uygunluğunu ortadan kaldıracaktır).


İyi haber: beni aramak için doğru tuşa yönlendirdiğiniz için teşekkürler! Kötü haber: Anlaşılan bu, openssh-server'da bilinen bir hatadır. Bir noktada giderildi gibi görünüyor, ancak yeterince güncel bir sürüm kullandığımı sanmıyorum - etkinleştirmeye çalıştığımda "Kötü yapılandırma seçeneği: AllowAgentForwarding" alıyorum. Yazılımın yüklenmesini güncellemiyor gibi görünüyor (yine ...)
Coderer

1
@Coderer: Ajan iletme varsayılanları açık olduğundan, herhangi bir AllowAgentForwardingsatırın kaldırılması yeterli olacaktır sshd_config.
Gilles 'SO- kötülük olmayı'

@Gilles Birisi mevcut bir oturum için aracı yönlendirme işlemini manuel olarak ayarlamak isteseydi, bunu nasıl yaparlardı? Bu, AMI'ler gibi geçici makinelerle kullanılan ve AllowAgentForwardingengelli olarak gelen senaryoların sağlanmasında gerçek bir ihtiyaçtır .
Andrew De Andrade

@AndrewDeAndrade Mevcut bir oturum için, çalışmalarınızı kesinleştirin. Sunucuda devre dışı bırakılmış olsa bile aracı iletmeyi ayarlamak istemeniz durumunda, TCP üzerinden bir unix soketi iletmeniz gerekir; bu, her iki tarafta da netcat veya socat ile yapılabilir.
Gilles 'SO- kötü olmaktan'

@Gilles Ben de geldiğim sonuç bu. Ayrıca daha güvenli ve simetrik anahtar değişimi gerektiren spiped kullanabileceğinizi öğrendim.
Andrew De Andrade

14

Yukarıda @Gilles tarafından doğru cevaplara sahip olsanız da, AllowAgentForwardingbunun sadece OpenSSH 5.1'de desteklendiğine işaret etmek istedim .

RHEL 4u5 kutumda gördüklerimden 5.1’den önce OpenSSH sunucuları, varsayılan olarak ajan yönlendirmesine izin veriyor. Bu nedenle, sunucunuz 5.1'den daha eskiyse ve aracı iletme çalışmıyorsa, sorun ssh istemcisinde olasıdır. İletme, bazı makineler için sizin için çalışıyor gibi göründüğü için /etc/ssh/ssh_config, kurulum iyi görünüyor . ~/.ssh/configEtkilenen kutular için aracı iletmeyi devre dışı bırakmak için herhangi bir istisna olup olmadığını kontrol edin .

Ref: http://www.openssh.org/txt/release-5.1


merhaba Sandip, Bunun hakkında bir fikrin var mı? superuser.com/questions/958978/…
Niks
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.