Apa perbedaan antara ssh -Y
(penerusan X11 tepercaya) dan ssh -X
(penerusan X11 tak tepercaya)? Sejauh yang saya mengerti, itu ada hubungannya dengan keamanan, tetapi saya tidak memahami perbedaannya dan kapan menggunakannya.
Apa perbedaan antara ssh -Y
(penerusan X11 tepercaya) dan ssh -X
(penerusan X11 tak tepercaya)? Sejauh yang saya mengerti, itu ada hubungannya dengan keamanan, tetapi saya tidak memahami perbedaannya dan kapan menggunakannya.
Jawaban:
Kedua opsi ada hubungannya dengan penerusan X11. Ini berarti jika Anda mengaktifkan ini, Anda dapat menggunakan klien grafis melalui sesi SSH Anda (misalnya, gunakan Firefox atau yang lainnya).
Jika Anda menggunakan ssh -X remotemachine
mesin jarak jauh diperlakukan sebagai klien yang tidak dipercaya. Jadi klien lokal Anda mengirim perintah ke mesin jarak jauh 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 jarak jauh diperlakukan sebagai klien tepercaya. Opsi terakhir ini dapat membuka masalah keamanan. Karena klien grafis (X11) lainnya dapat mengendus data dari mesin jarak jauh (membuat tangkapan layar, melakukan keylogging dan hal-hal buruk lainnya) dan bahkan dimungkinkan untuk mengubah data tersebut.
Jika Anda ingin tahu lebih banyak tentang hal-hal itu, saya sarankan membaca halaman manual Xsecurity atau spesifikasi ekstensi X Security . Selanjutnya, Anda dapat memeriksa opsi ForwardX11
dan ForwardX11Trusted
di /etc/ssh/ssh_config
.
-X
apakah tidak mungkin bagi klien lain untuk mengendus atau mengubah data?
-Y
daripada -X
secara umum?
-Y
) dan satu-satunya kasus yang saya pahami ini mungkin berguna adalah ketika kontrol keamanan di sisi server entah bagaimana tidak diterapkan / tidak kompatibel. Saya juga pernah membaca bahwa penerusan X11 pada umumnya adalah alat yang kuat dan berbahaya yang harus diperlakukan seperti itu.
Gunakan baik ketika Anda tidak perlu menjalankan program X11 dari jarak jauh; gunakan -X
saat Anda melakukannya; dan secara hipotesis gunakan -Y
jika program X11 yang Anda pedulikan berfungsi lebih baik dengan -Y daripada dengan -X. Tetapi saat ini (Ubuntu 15.10), -X identik dengan -Y, kecuali Anda mengedit ssh_config
untuk mengatakan ForwardX11Trusted no
. -X pada awalnya dimaksudkan untuk mengaktifkan ekstensi X Security tahun 1990-an, tetapi itu sudah tua dan tidak fleksibel, dan membuat beberapa program macet, sehingga diabaikan secara default.
Baik ssh -Y
dan -X
membiarkan Anda menjalankan program X11 pada mesin jarak jauh, dengan jendelanya muncul di monitor X lokal. Masalahnya adalah apa yang diizinkan untuk dilakukan oleh program pada 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.
Penerusan X11 tepercaya diaktifkan oleh -Y
. Ini adalah perilaku historis. Program dengan akses ke tampilan, dipercaya dengan akses ke seluruh tampilan. Itu dapat screenshot, keylog, dan menyuntikkan input ke semua jendela program lain . Dan itu dapat menggunakan semua ekstensi X server, termasuk yang seperti grafik dipercepat, yang merupakan eksposur keamanan. Yang baik untuk berjalan dengan lancar, tetapi buruk untuk keamanan. Anda memercayai program jarak jauh seaman program lokal Anda.
Penerusan X11 yang tidak terpercaya mencoba membatasi program jarak jauh untuk hanya mengakses jendela mereka sendiri , dan hanya menggunakan bagian-bagian X yang relatif aman. Kedengarannya bagus, tetapi saat ini tidak bekerja dengan baik dalam praktik.
Arti -X
saat ini tergantung pada konfigurasi ssh Anda.
Di Ubuntu 14.04 LTS, kecuali Anda mengedit ssh_config
, tidak ada perbedaan antara -X
dan -Y
. "[B] karena terlalu banyak program yang macet 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
, maka -X
memungkinkan penerusan yang tidak dipercaya . Kalau tidak, -X
diperlakukan sama seperti -Y
, percaya bahwa program jarak jauh dengan akses tampilan ramah.
The -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.
Opsi -Y
, yang sesuai dengan direktif ForwardX11Trusted di ssh_config (5), bahkan lebih tidak aman karena, menghapus kontrol ekstensi X11 SECURITY.
-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.