Вопрос В чем разница между `ssh -Y` (надежная пересылка X11) и` ssh -X` (ненадежная пересылка X11)?


В чем разница между ssh -Y (надежная переадресация X11) и ssh -X (ненадежная пересылка X11)? Насколько я понял, это имеет какое-то отношение к безопасности, но я не понял разницы и когда использовать это.


101
2018-04-16 19:42


происхождения




ответы:


Оба варианта имеют какое-то отношение к пересылке X11. Это означает, что если вы включите это, вы можете использовать графический клиент через сеанс SSH (например, использовать Firefox или что-то еще).

Если вы используете ssh -X remotemachine удаленная машина рассматривается как ненадежный клиент. Таким образом, ваш локальный клиент отправляет команду удаленному компьютеру и получает графический вывод. Если ваша команда нарушает некоторые параметры безопасности, вы получите ошибку.

Но если вы используете ssh -Y remotemachine удаленная машина рассматривается как доверенный клиент. Этот последний вариант может открыть проблемы безопасности. Потому что другой графический клиент (X11) может обнюхать данные с удаленной машины (делать скриншоты, делать кейлоггинг и другие неприятные вещи), и даже эти данные можно изменить.

Если вы хотите узнать больше об этих вещах, я предлагаю прочитать Персональная страница Xsecurity или X Спецификация расширения безопасности, Кроме того, вы можете проверить параметры ForwardX11 а также ForwardX11Trusted в вашей /etc/ssh/ssh_config,


76
2018-04-16 20:38



В ssh manpage используется печальная формулировка, предлагающая (по крайней мере мне), что -X небезопасно использовать и -Y лучше. Так что спасибо за этот ответ. - Torsten Bronger
Итак, с -X невозможно ли другим клиентам обнюхивать или изменять данные? - musiphil
Итак, почему вы хотите использовать -Y вместо -X в целом? - Wernight
К сожалению, обе ссылки сейчас 404. Сайт, похоже, мертв с 2014 года. - m00am
Отвечая на вопрос «Зачем использовать -Y вместо -X?» вопрос, -X отбрасывает пересылку после таймаута, а -Y - нет. Однако вы можете переопределить эту конфигурацию, используя ForwardX11Timeout для опции -X. - Seb


использование ни когда вам не нужно запускать X11-программы удаленно; использование -X когда вы это делаете; и гипотетически использовать -Y если программа X11, о которой вы заботитесь, работает лучше с -Y, чем с -X. Но в настоящее время (Ubuntu 15.10), -X идентичен -Y, если вы не редактируете ssh_config сказать ForwardX11Trusted no, -X изначально предполагалось включить расширение X Security 1990-х годов, но оно является старым и негибким, а также вызывает сбой некоторых программ и поэтому игнорируется по умолчанию.

Оба ssh -Y а также -X позвольте вам запустить X11-программу на удаленном компьютере, а ее окна появятся на локальном X-мониторе. Проблема в том, что программе разрешено делать с окнами других программ, а также с самим сервером X.

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

доверенный Пересылка X11 включена -Y, Это историческое поведение. Программе, имеющей доступ к дисплею, доверяют доступ к все дисплей. Он может делать скриншот, keylog и вводить ввод во все окна Другие программы. И он может использовать все расширения X-сервера, в том числе такие, как ускоренная графика, которые представляют собой риски безопасности. Это хорошо для бесперебойной работы, но плохо для безопасности. Вы доверяете удаленным программам быть такими же безопасными, как ваши местные программы.

Ненадежный Пересылка X11 пытается ограничить удаленные программы доступом только к их своя окна и использовать только те части X, которые относительно безопасны. Что звучит хорошо, но в настоящее время на практике не работает.

Значение -X в настоящее время зависит от вашей конфигурации ssh.

На Ubuntu 14.04 LTS, если вы не отредактируете свой ssh_config, нет никакой разницы между -X а также -Y, «[B] из-за слишком большого числа программ в настоящее время сбой в [ненадежном] режиме».

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, тогда -X позволяет ненадежный пересылка. В противном случае, -X обрабатывается так же, как -Y, полагая, что удаленные программы с доступом к дисплею являются дружественными.


20
2018-03-30 16:08





Да. -Y для доверенный X11, тогда как -X для ненадежный Пересылка X11. Пересылка X11 позволяет вам использовать X11 (то есть графические) приложения в сеансе SSH.

Я не уверен, что значимая разница между надежными и ненадежными соединениями X11, но я уверен, что это связано с конфигурацией на стороне сервера (т. Е. Ssh-config, sshd-config и т. Д.). Проконсультируйтесь с вашим сервером или администратором сети о том, какой флаг использовать.


1
2018-04-16 20:00



Оба компьютера являются моими частными, так что я могу спросить сетевого администратора. Но я думаю, что тогда это «доверено», поэтому я могу использовать -Y, я думаю. - Martin Ueding
Мне не хватает репутации для downvote, поэтому я должен сказать: этот ответ ничего не дает. - underscore_d


-X опция включает пересылку X11:

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

Опция -Y, соответствующий директиве ForwardX11Trusted в ssh_config (5), еще менее безопасен, поскольку он удаляет элементы управления расширением X11 SECURITY.

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

Более безопасно использовать -x

-x   Disables X11 forwarding.

1
2018-01-10 01:57