Документ создан: 28.02.2013

Не "пробрасываются" X'ы через ssh

"Пробросить" X'ы через ssh очень просто:

ssh -X user@host

После этого "echo $DISPLAY" на удалённом выдаст что-то типа:

localhost:10.0

Все приложения, требующие наличие X'ов, будут выполняться с использованием локального X-сервер. Однако, я столкнулся с тем, что на некоторых rpm-based системах такой "трюк" не проходит. В частности, это не работало на Oracle Linux Release 6.3, Red Hat Enterprise Linux Server release 6.3. Соединение устанавливалось, а "echo $DISPLAY" выдавал пустой результат. "/etc/ssh/sshd-config/" был проверен и перепроверен, результат — то же. Понятно, что чего-то не хватает. Оказывается, не хватало всего лишь пакета "xorg-x11-xauth", установка которого решила проблему:

yum install xorg-x11-xauth

Кстати, без этого пакета вход под пользователем "root" по публичному ключу так же был невозможен — по-прежнему требовалось ввести пароль. Установка пакета решила и эту проблему.

UPDATE 25.12.2013.
Столкнулся с проблемой "проброса" X'ов на одной из машин с "Ubuntu 13.04". Решение такое:

  • в /etc/ssh/sshd_config на сервере надо добавить:
    X11UseLocalhost no
  • перегрузить sshd

После этого DISPLAY выглядит примерно так:

hostname:10.0

В чём причина – пока не понял и не разобрался.

 
Recent changes RSS feed Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki Donate