Pertanyaan Apa perbedaan antara `ssh -Y` (trusted X11 forwarding) dan` ssh -X` (forward X11 tidak terpercaya)?


Apa perbedaan antara ssh -Y (penerusan X11 tepercaya) dan ssh -X (X11 tidak terpercaya)? Sejauh yang saya pahami, itu ada hubungannya dengan keamanan, tetapi saya tidak memahami perbedaannya dan kapan menggunakannya.


101
2018-04-16 19:42


asal




Jawaban:


Kedua opsi ada hubungannya dengan X11 forwarding. Ini berarti jika Anda mengaktifkan ini, Anda dapat menggunakan klien grafis melalui sesi SSH Anda (yaitu menggunakan Firefox atau yang lain).

Jika Anda menggunakan ssh -X remotemachine mesin jarak jauh diperlakukan sebagai klien yang tidak dapat dipercaya. Jadi klien lokal Anda mengirim perintah ke mesin remote dan menerima output grafis. Jika perintah Anda melanggar beberapa pengaturan keamanan, Anda akan menerima kesalahan sebagai gantinya.

Tetapi jika Anda menggunakan ssh -Y remotemachine mesin remote diperlakukan sebagai klien tepercaya. Opsi terakhir ini dapat membuka masalah keamanan. Karena klien grafis lain (X11) dapat mengendus data dari mesin jarak jauh (membuat screenshot, melakukan keylogging dan hal-hal buruk lainnya) dan bahkan dimungkinkan untuk mengubah data tersebut.

Jika Anda ingin tahu lebih banyak tentang hal-hal yang saya sarankan membaca Xsecurity manpage atau Spesifikasi ekstensi Keamanan X. Selanjutnya Anda dapat memeriksa opsi ForwardX11 dan ForwardX11Trusted di dalam kamu /etc/ssh/ssh_config.


76
2018-04-16 20:38



Manuver ssh menggunakan kata-kata yang tidak menyenangkan, menyarankan (setidaknya untuk saya) bahwa -X tidak aman untuk digunakan dan -Y lebih baik. Jadi terima kasih atas jawaban ini. - Torsten Bronger
Jadi, dengan -X apakah tidak mungkin bagi klien lain untuk mengendus atau mengubah data? - musiphil
Jadi mengapa orang ingin menggunakannya -Y dari pada -X secara umum? - Wernight
Kedua tautan sekarang berjumlah 404, sayangnya. Situs ini tampaknya sudah mati sejak 2014. - m00am
Menjawab "Mengapa menggunakan -Y bukannya -X?" pertanyaan, -X menjatuhkan forwarding setelah timeout sementara -Y tidak. Anda dapat mengganti konfigurasi tersebut menggunakan ForwardX11Timeout untuk opsi -X. - Seb


Menggunakan tidak juga ketika Anda tidak perlu menjalankan program X11 dari jarak jauh; menggunakan -X saat kamu melakukan; dan menggunakan hipotetis -Y jika program X11 yang Anda pedulikan bekerja lebih baik dengan -Y daripada dengan -X. Namun saat ini (Ubuntu 15.10), -X identik dengan -Y, kecuali Anda mengedit ssh_config untuk dikatakan ForwardX11Trusted no. -X pada awalnya ditujukan untuk mengaktifkan ekstensi X Security pada tahun 1990-an, tetapi itu sudah tua dan tidak fleksibel, dan membuat crash beberapa program, sehingga diabaikan secara default.

Kedua ssh -Y dan -X biarkan Anda menjalankan program X11 di mesin jarak jauh, dengan jendelanya muncul di monitor X lokal. Masalahnya adalah apa yang diizinkan program untuk dilakukan ke jendela program lain, dan ke server X itu sendiri.

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

Tepercaya X11 forwarding diaktifkan oleh -Y. Ini adalah perilaku historis. Program dengan akses ke layar, dipercaya dengan akses ke seluruh tampilan. Ini dapat screenshot, keylog, dan menyuntikkan input ke semua jendela lain program. Dan itu dapat menggunakan semua ekstensi server X, termasuk yang seperti grafik dipercepat, yang merupakan eksposur keamanan. Yang bagus untuk berjalan dengan lancar, tetapi buruk untuk keamanan. Anda mempercayai program remote agar seaman program lokal Anda.

Tidak terpercaya X11 forwarding mencoba untuk membatasi program jarak jauh untuk mengakses hanya mereka sendiri jendela, dan hanya menggunakan bagian X yang relatif aman. Kedengarannya bagus, tetapi saat ini tidak berfungsi dengan baik.

Arti dari -X saat ini tergantung pada konfigurasi ssh Anda.

Pada Ubuntu 14.04 LTS, kecuali Anda mengedit ssh_config, tidak ada perbedaan antara -X dan -Y. "[B] karena terlalu banyak program yang saat ini crash dalam mode [tidak dipercaya]."

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

Jika ForwardX11Trusted no, kemudian -X memungkinkan tidak terpercaya meneruskan. Jika tidak, -X diperlakukan sama dengan -Y, percaya bahwa program jarak jauh dengan akses tampilan ramah.


20
2018-03-30 16:08





Iya nih. -Y adalah untuk tepercaya X11 forwarding, sementara -X adalah untuk tidak terpercaya X11 meneruskan. X11 forwarding hanya memungkinkan Anda untuk menggunakan aplikasi X11 (yaitu grafis) melalui sesi SSH.

Saya tidak yakin apa perbedaan yang berarti antara koneksi X11 yang tepercaya dan tidak terpercaya, tapi saya yakin itu ada hubungannya dengan konfigurasi sisi server (yaitu ssh-config, sshd-config, dll.). Tanyakan kepada server atau admin jaringan Anda tentang flag mana yang akan digunakan.


1
2018-04-16 20:00



Kedua komputer itu milik pribadi saya, jadi ada admin jaringan yang bisa saya tanyakan. Tapi saya kira itu "dipercaya" saat itu, karena itu saya bisa menggunakan -Y saya kira. - Martin Ueding
Saya tidak memiliki cukup perwakilan untuk downvote, jadi saya harus mengatakan: Jawaban ini tidak memberikan kontribusi apa pun. - underscore_d


Itu -X pilihan memungkinkan X11 forwarding:

-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.

Pilihan -Y, sesuai dengan direktif ForwardX11Trusted di ssh_config (5), bahkan kurang aman karena, menghapus X11 KEAMANAN kontrol ekstensi.

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

Lebih aman digunakan -x

-x   Disables X11 forwarding.

1
2018-01-10 01:57