Использование xrdp для туннелирования на существующий X-сервер - PullRequest
0 голосов
/ 15 марта 2019

Я работаю с существующим инструментом, для которого требуется RDP-соединение с сервером Ubuntu.

Приложение запускается на сервере отображения xvfb (с помощью команды xvfb-run ) на определенном DISPLAY на сервере.

Я установил xrdp , чтобы открыть соединение с этим Xserver, однако каждый раз, когда я инициирую новое соединение, xrdp-sesman (который является менеджером сеансов xrdp tool) открывает новый Xvnc сервер на другом ОТОБРАЖЕНИИ.

Моя цель заключается в том, чтобы туннелировать соединение xrdp к определенному дисплею, где находится мое приложение, кто-нибудь знает, возможно ли это?

1 Ответ

0 голосов
/ 15 марта 2019

v в xvfb означает, что вы используете виртуальный дисплей.

Вы, вероятно, хотите посмотреть что-то вроде x11vnc .

x11vnc позволяет удаленно просматривать и взаимодействовать с реальными дисплеями X (т. Е. Дисплеем, соответствующим физическому монитору, клавиатуре и мыши) с любым средством просмотра VNC. Таким образом, он играет роль для Unix / X11, которую WinVNC играет для Windows.

AskUbuntu содержит руководство по настройке (см. Ниже)

Вам понадобится xrdp вместе с x11vnc, если вам нужен удаленный доступ к вашему рабочему столу Unity.

Сначала установите xrdp и x11vnc: apt-get install xrdp x11vnc (или любой другой эквивалентный дистрибутив)

Затем отредактируйте /etc/xrdp/xrdp.ini и убедитесь, что он содержит по крайней мере следующее:

 [globals]
 bitmap_cache=yes 
 bitmap_compression=yes 
 port=3389
 crypt_level=high 
 channel_code=1 
 max_bpp=24


 [xrdp1]
 name=Remote Desktop
 lib=libvnc.so
 username=ask
 password=ask
 ip=127.0.0.1
 port=5900 

Перезапустите xrdp, чтобы изменения вступили в силу:

/etc/init.d/xrdp restart

Теперь откройте окно терминала (Ctrl + Alt + T) и установите пароль VNC. (вы не хотите оставлять широко открытый доступ к вашему рабочему столу из интернет):

x11vnc -usepw

Вам будет предложено установить пароль, который будет использоваться для RDP аутентификации.

Последний шаг - запустить x11vnc. Есть множество вариантов, которые вы можно использовать, но вот пример, чтобы вы начали (запустите это в то же самое окно терминала, которое вы только что открыли):

x11vnc -rfbauth ~/.vnc/passwd -display WAIT:0 -reopen -nevershared
-forever -wirecopyrect always -scrollcopyrect always -norepeat -1 -xkb -capslock -skip_keycodes 187,188 -bg -o ~/x11vnc.log &

& в конце оставит x11vnc запущенным фоном, так что вы можете закройте окно терминала и оставьте его включенным.

Вам нужно будет добавить эту команду в ваши сценарии запуска, если вы хотите x11vnc для автоматического запуска после перезагрузки.

...