'ssh -Y' (güvenilir X11 iletme) ve 'ssh -X' (güvenilmeyen X11 iletme) arasındaki fark nedir?

101

ssh -Y (güvenilen X11 iletme) ve ssh -X (güvenilmeyen X11 iletme) arasındaki fark nedir? Anladığım kadarıyla, güvenlikle ilgili bir şey var, ama farkı anlamadım ve ne zaman kullanacağımı.

    
sordu Martin Ueding 16.04.2011 21:42

4 cevap

76

Her iki seçeneğin de X11 iletimi ile ilgili bir şeyleri var. Bu, eğer bunu etkinleştirirseniz, SSH oturumunuz aracılığıyla bir grafik istemci kullanabilirsiniz (örn. Firefox veya başka bir şey kullanın).

ssh -X remotemachine kullanıyorsanız uzak makine güvenilmeyen bir istemci olarak kabul edilir. Böylece yerel istemciniz uzak makineye bir komut gönderir ve grafiksel çıktıyı alır. Komutunuz bazı güvenlik ayarlarını ihlal ediyorsa, bunun yerine bir hata alırsınız.

Ancak, ssh -Y remotemachine kullanıyorsanız, uzak makine güvenilir istemci olarak kabul edilir. Bu son seçenek güvenlik sorunlarını açabilir. Diğer grafiksel (X11) istemciler uzaktaki makineden veri yakalayabildiğinden (ekran görüntüsü oluşturma, keyloglama ve diğer kötü şeyler) ve hatta bu verileri değiştirmek bile mümkündür.

Bu konular hakkında daha fazla bilgi edinmek isterseniz Xsecurity manpage veya X Güvenlik uzantısı özellikleri . Ayrıca, ForwardX11 'nizdeki ForwardX11Trusted ve /etc/ssh/ssh_config seçeneklerini de kontrol edebilirsiniz.

    
verilen cevap qbi 16.04.2011 22:38
20

X11 programlarını uzaktan çalıştırmanız gerekmediğinde ne kullanın; yaptığınız zaman -X kullanın; ve önemsediğiniz bir X11 programı -X ile -Y'den daha iyi çalışırsa, -Y varsayımsal olarak kullanın. Ancak, ssh_config 'si ForwardX11Trusted no ' si için düzenlemedığınız sürece, (Xbuntu 15.10), -X, -Y ile aynıdır. -X aslında, 1990'ların X Güvenlik uzantısını etkinleştirmek için tasarlandı, ancak bu eski ve esnek olmayan ve bazı programları çöker ve varsayılan olarak yok sayılır.

Her iki ssh -Y ve -X , uzaktaki bir makinede X11 programını çalıştırmanıza izin verir; pencereleri yerel X monitöründe görünür. Sorun, programın diğer programların pencerelerine ve X sunucusunun kendisine yapmasına izin vermesidir.

local$ ssh -X remote
remote$ xlogo
# Runs xlogo on remote, but the logo pops up on the local screen.

Güvenilir X11 iletme -Y tarafından etkinleştirildi. Bu tarihsel davranış. Ekrana erişimi olan bir program, tüm ekranına erişim ile güvenilirdir. Ekran görüntüsü, keylog ve diğer programlarının tüm pencerelerine girişi enjekte edebilir. Ve güvenlik açıkları olan hızlandırılmış grafikler gibi tüm X sunucu uzantılarını kullanabilir. Hangi sorunsuz çalışır, ancak güvenlik için kötü için iyidir. Uzak programların yerel programlarınız kadar güvenli olduğuna güveniyorsunuz.

Güvenilmeyen X11 iletimi, uzak programların yalnızca kendi pencerelerine erişmesini ve yalnızca X'in nispeten güvenli olan bölümlerini kullanmayı dener. Kulağa hoş geliyor ama şu anda pratikte iyi çalışmıyor.

-X değerinin anlamı şu anda ssh yapılandırmanıza bağlıdır.

Ubuntu 14.04 LTS'de, ssh_config 'yı düzenlemedığınız sürece, -X ile -Y arasında fark yoktur. "[B] çok fazla program şu anda [güvenilmeyen] modda çöküyor."

ubuntu1404$ man ssh
...
 -X      Enables X11 forwarding.  This can also be specified on a per-host
         basis in a configuration file.
         ...
         (Debian-specific: X11 forwarding is not subjected to X11 SECURITY
         extension restrictions by default, because too many programs cur‐
         rently crash in this mode.  Set the ForwardX11Trusted option to
         “no” to restore the upstream behavior.  This may change in
         future depending on client-side improvements.)

ubuntu1404$ grep ForwardX11Trusted /etc/ssh/ssh_config
#   ForwardX11Trusted yes

ForwardX11Trusted no ise, -X , güvenilmeyen iletmeyi etkinleştirir. Aksi takdirde, -X , görüntüleme erişimine sahip uzak programların arkadaş canlısı olduğundan emin olarak -Y ile aynı şekilde ele alınır.

    
verilen cevap Mitchell 30.03.2016 18:08
1

Evet. -Y, güvenilir X11 iletimi için, -X ise güvenilmeyen X11 iletimi içindir. X11 iletimi sadece bir SSH oturumu üzerinden X11 (yani grafik) uygulamalarını kullanmanıza izin verir.

Güvenilir ve güvenilmeyen X11 bağlantıları arasında anlamlı farkın ne olduğundan emin değilim, ancak eminim sunucu tarafı yapılandırmasıyla (yani ssh-config, sshd-config, vb.) ilgili. Kullanacağınız bayrak hakkında sunucunuza veya ağ yöneticinize danışın.

    
verilen cevap Tyler K. 16.04.2011 22:00
1

-X seçeneği X11 iletmeyi etkinleştirir:

-X   Enables X11 forwarding.  This can also be specified on a per-host
     basis in a configuration file.

     X11 forwarding should be enabled with caution.  Users with the
     ability to bypass file permissions on the remote host (for the
     user's X authorization database) can access the local X11 display
     through the forwarded connection.  An attacker may then be able
     to perform activities such as keystroke monitoring.

     For this reason, X11 forwarding is subjected to X11 SECURITY
     extension restrictions by default.  Please refer to the ssh -Y
     option and the ForwardX11Trusted directive in ssh_config(5) for
     more information.

ssh_config (5) içindeki ForwardX11Trusted yönergesine karşılık gelen -Y seçeneği, X11 GÜVENLİK uzantı denetimlerini kaldırdığı için daha da az güvenlidir.

-Y      Enables trusted X11 forwarding.  Trusted X11 forwardings are not
        subjected to the X11 SECURITY extension controls.

-x 'yı kullanmak daha güvenlidir

-x   Disables X11 forwarding.
    
verilen cevap Ortomala Lokni 10.01.2016 02:57

Etiketlerdeki diğer soruları oku