В моей домашней настройке у меня есть два компьютера в одной локальной сети, оба работают под управлением Ubuntu 20.04. Я надеюсь настроить способ доступа к моему второстепенному компьютеру через основной, переключившись на новый TTY и запустив удаленный сеанс X. Я не хочу делиться экраном или получать доступ к существующему X-сеансу. Кроме того, компьютер, который я использую для запуска удаленного сеанса X, имеет два монитора, и я хотел бы воспользоваться преимуществами обоих.
Я пробовал несколько вариантов.Мне кажется, что XDMCP может делать то, что я хочу, но пока мне не повезло (получение доступа, но только черный экран с курсором). Кроме того, похоже, что он использует высокую пропускную способность и небезопасен, поэтому в идеале я бы использовал что-то еще.
Я пробовал X2Go, но не смог найти способ запустить его в отдельном TTY или использовать преимущества обоих моих мониторов.
Я слышал также о таких вещах, как xvnc и NoMachine, но я не уверен, можно ли запустить любую из них так, как я хотел бы.
Есть ли какие-нибудь способы сделать это? Или, альтернативно, каким-либо способом сжать и / или защитить XDMCP? Я видел, что XDMCP может работать через SSH, это правда?
Спасибо!
Сеансы X Window работают не так, как вы ожидаете. Вы думаете, что на другой стороне есть «сервер», к которому вы подключаетесь и который вы хотите контролировать.
На самом деле все работает наоборот. Компьютер, к которому вы подключаетесь из , действует как сервер, и когда вы подключаетесь, вы указываете ему отображаться на другом компьютере.
Итак, X должен быть запущен на машине, с которой вы подключаетесь, затем выполните следующие действия:
Откройте xterm или другое ваше любимое оконное приложение терминала.
На локальном компьютере в терминале разрешите подключения с удаленного хоста:
xhost + 192.168.1.2 (где 192.168.1.2 - это компьютер, который вы подключаете к )
В том же терминале откройте оболочку удаленной машины (192.168.1.2), используя ssh, с перенаправлением X11:
ssh -Y login @ hostname
На удаленной машине настройте отображение:
экспорт DISPLAY = 192.168.1.1: 0.0
(это будет компьютер, к которому вы подключаетесь из )
Теперь запустите программу. Просто запустите xeyes, xcalc, chrome или что-то еще. Через некоторое время программа должна появиться в вашем локальном интерфейсе X Window. Он работает на удаленном компьютере, но отображается локально.
Обратите внимание, что на удаленной машине даже не обязательно должен быть запущен сервер X Window. Фактически он действует как клиент для сервера X Window вашего локального компьютера.
XDMCP определенно «тяжелее», чем более оптимизированный протокол для изменения отображения, такой как VNC. С другой стороны, цель в другом: VNC обычно работает на всем экране. И ничто не мешает вам установить сервер VNC и пойти по этому пути. В этом случае подойдет любой клиент VNC.