SSH uzak mesajı yerel dosyaya yönlendirilmiyor


0

SSH ile bir makineye bağlanmaya ve bir dosyaya mesaj kaydetmeye çalışıyorum. İşte benim örnek:

ssh -i .ssh/mykey ubuntu@blah.blah.blah > ~/log.txt 2> ~/err.txt

Kullanıcı girişi gerektirenları değil sadece dosyalara yazılan çoğu mesajı alıyorum. Örneğin, bir makineye ilk kez bağlanırken aşağıdaki mesaj kaydedilmez:

The authenticity of host 'blah.blah.blah (10.10.10.10)' can't be established.
RSA key fingerprint is 
a4:d9:a4:d9:a4:d9a4:d9:a4:d9a4:d9a4:d9a4:d9a4:d9a4:d9.
Are you sure you want to continue connecting (yes/no)?

Bunun gibi seçenekler olduğunu biliyorum

-o "StrictHostKeyChecking=no"

ancak, bu güvenlik özelliğini devre dışı bırakmak istemiyorum. Hala istemi istiyorum. Uygulamam bu mesajı arayacak, bir (evet / hayır) düğmesi sunacak ve ardından sonucu stdin'e aktarabilir.

Bu mesajı okumak için nasıl bir dosyaya sokabileceğim hakkında bir fikrin var mı? Ve değilse, neden olmasın?


" Uygulamam bu mesajı arayacak " ... bir uygulama geliştiriyorsanız neden bir kütüphane kullanmıyorsunuz? eg: libssh
— Attie

1
ssh açıkça açılıyor /dev/tty, sonra mesajı yazıyor ve cevabını bundan okuyor. Dolayısıyla uygulamanız bir tty kuracak ve ssh aracıyla bununla etkileşime girecek. Uygulamanızın nasıl çalıştığına bağlı olarak, bunu yapmanın farklı yolları vardır.
— Kenster

Belki de bir düğüm js / electron uygulaması kullandığımdan ve platform için bir ssh istemcisi kurmaya çalıştığımdan bahsetmeliydim. Js kütüphanesi şu anda mevcut olan düğümleri, kullanıcıları bir şekilde atlamak yerine, bu adımda kullanıcılara yönlendirmez. @Kenster peşimde olan eksik bağlantı olabilir, teşekkür ederim!
— Aaron Albrighton

Yanıtlar:


0

Kafamı haftalarca kaşıdıktan sonra, sonunda ssh ile -v (verbose) etiketini kullanabileceğimi ve stderr'e yazmak için bu adımı alabileceğimi fark ettim.

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.