Страница 1 из 2
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 02 окт 2020, 10:16
ravencrow
Чтобы получить по RDP локальную сессию, те же открытые приложения, а реальный сеанс блокировался, т.е. чтобы всегда был только один сеанс, а не создавались новые, как это сделано в клиентских ОС Windows.
Установлен xrdp, но в настройках я не нашёл как можно это включить. Всегда создается отдельная сессия, отдельный рабочий стол не зависящий от локальной сессии.
Linux Mint 17.2.
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 02 окт 2020, 10:29
Chocobo
ravencrow,
интернет подсказывает что за сессию отвечает параметр
port=
в конфиге xrdp
1.в дефолтном значении
-1
он всегда ищет свободное значение
2. при жестком указании числа здесь - можно как раз закрепиться к действующей ранее открытой сессии.
3. Если установить в
ask
- то при логине будет спрашивать куда тебе хочется зацепиться
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 02 окт 2020, 10:42
ravencrow
Chocobo писал(а): ↑02 окт 2020, 10:29
ravencrow,
интернет подсказывает что за сессию отвечает параметр
port=
в конфиге xrdp
1.в дефолтном значении
-1
он всегда ищет свободное значение
2. при жестком указании числа здесь - можно как раз закрепиться к действующей ранее открытой сессии.
3. Если установить в
ask
- то при логине будет спрашивать куда тебе хочется зацепиться
А как узнать какой порт имеет реальная локальная сессия, чтобы к ней подключится? Нужно просто подключиться к компьютеру с Linux к имеющемуся реальному рабочему столу, который загружается вместе с системой и без создания новых сессий и новых удаленных рабочих столов.
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 02 окт 2020, 10:49
Chocobo
ravencrow, не уверен что xrdp смотрит в локальные сессии не заведенные им.
вот например пара наводящих сслыок из первых рук:
https://github.com/neutrinolabs/xrdp/issues/960
https://github.com/neutrinolabs/xrdp/issues/1303
поэтому похоже подключиться возможно только повторно и только к ранее созданной удаленной сессии.
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 02 окт 2020, 11:03
ravencrow
В том то и костыль. x11rdp не умеет подключаться к локальной сессии.
Видимо нужно ковырять x11vnc, который умеет транслировать протокол VNC в протокол RDP. Т.е. x11vnc нужно заставить цепляться к локальной сессии.
Вот что нашел на просторах интернета:
1. Первым делом - проверьте, что tigervnc собран с поддержкой Xvnc.
2. Затем в секцию Module файла /etc/X11/xorg.conf добавьте:
Load "vnc"
3. В секцию Screen файла /etc/X11/xorg.conf добавьте:
Option "SecurityTypes" "VncAuth"
Option "UserPasswdVerifier" "VncAuth"
Option "PasswordFile" "/etc/vnc/vncpass"
4. От рута выполните:
# vncpasswd /etc/vnc/vncpass
оно спросит пароль, два раза (с подтверждением) - дайте то, чего просит.
5. Перезапустите X-сервер.
6. Проверяйте.
Если всё сделали верно - то к машине можно подключиться по VNC. Если не "взлетело" - смотреть в логи Х-сервера и системные.
7. Установите xrdp, в большинстве случаев при установке с дефолтными параметрами должно заработьа сразу.
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 02 окт 2020, 11:09
WWolf
ravencrow, так не проще VNC клиент поставить на эту винду и мозги не ковырять?...
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 02 окт 2020, 11:19
ravencrow
WWolf писал(а): ↑02 окт 2020, 11:09
ravencrow, так не проще VNC клиент поставить на эту винду и мозги не ковырять?...
Всем не поставишь. А встроенный клиент RDP есть в любой ОС Windows из коробки.
Задача стоит в том, чтобы можно было подключаться к компьютеру с ОС Linux к локальной сессии с любого компьютера Windows не устанавливая дополнительных программ в Windows.
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 02 окт 2020, 14:15
Chocobo
ravencrow, а в чем сложность инициировать эту rdp-сессию разово после старта системы.
и затем просто ей пользоваться, представляя что она локальная)
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 02 окт 2020, 15:28
ravencrow
Chocobo писал(а): ↑02 окт 2020, 14:15
ravencrow, а в чем сложность инициировать эту rdp-сессию разово после старта системы.
и затем просто ей пользоваться, представляя что она локальная)
А какой смысл плодить сессии с пустыми рабочими столами, которые после перезагрузки компьютера просто исчезнут?
Задача стоит в том, чтобы работать в локальной сессии как физически за компьютером с Linux, так и удаленно, т.е. чтобы пользователь видел свой рабочий стол с открытыми приложениями и документами на рабочем столе как локально так и удаленно.
Т.е., к примеру, сотрудник, уходя с работы, оставляет компьютер включенным с открытыми приложениями. Допустим вечером, срочно, что то понадобилось доделать. Сотрудник на любом доступном ему компьютере дома или где-то в гостях, подключается по RDP к своему рабочему компьютеру и доделывает работу, так как все приложения остаются открытыми, или скопировать кому-нибудь документы с рабочего стола.
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 02 окт 2020, 16:49
Chocobo
ravencrow, Кейс с одной стороны понятный, но вероятно несколько натянутый. Навскидку:
ravencrow писал(а): ↑02 окт 2020, 15:28
Сотрудник на любом доступном ему компьютере дома или где-то в гостях, подключается по RDP
все воркстейшны в интернет на пабликах светятся по 3389? Или все же на своем или гостевом девайсе ему сперва придется поднять впн до закрытого контура корпоративной сети? А если дома, в гостях вокруг одни андроиды и MacOS?
1. описанные проблемы обычно решаются либо мобильностью самого рабочего девайса (ноутбук под мышку и ушел домой со своими приложухами в гибернации) или тонкие клиенты на рабочих местах для подключения к терминальному серверу или VDI
2. прямого решения в локальную сессию у RDP нет, он не очень родной протокол в линуксах. Установка vnc клиента же не самая сложная процедура для того кто сможет справиться с mstsc.
Если найти свободный клиент под венду (вероятно такие есть) - можно попробовать раскомпилять персонально преднастроенные пресеты подключения в приложении к нужному хосту после установки.
3. Тоже не без клиентского софта и не всегда фри с коммерческим использованием, но уже в целом условно SaaS - посмотрите в сторону AnyDesk/TeamViewer и подобных кроссплатформерных решений
4. Позаботтесь о работниках и переведите в конце концов офисные воркстейшны на Windows, раз указанные сложности превыше обеспечения именно прямого rdp
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 03 окт 2020, 10:00
ravencrow
Оставим эти философские разговоры.
Лучше подскажите как tigervnc собрать с поддержкой Xvnc.
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 03 окт 2020, 10:11
symon2014
Tigervnc-сервер- это программа, которая запускает сервер Xvnc и запускает параллельные сеансы на рабочем столе VNC.
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 03 окт 2020, 11:01
rogoznik
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 03 окт 2020, 11:13
ravencrow
Код: Выделить всё
sudo apt install tigervnc-standalone-server tigervnc-xorg-extension
E: Не удалось найти пакет tigervnc-standalone-server
E: Не удалось найти пакет tigervnc-xorg-extension
Пытался сделать по этой инструкции
https://gist.github.com/plembo/87a429f3 ... ce8ce0a04d
Беру последний релиз 1.11.0
vncviewer устанавливает
а vncserver нет.
по команде which vncserver пусто.
Что я делаю не так?
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 03 окт 2020, 12:07
symon2014
ravencrow писал(а): ↑03 окт 2020, 11:13
Что я делаю не так?
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 03 окт 2020, 13:11
ravencrow
Оказывается в релизе TigerVNC 1.11.0 нет vncserver. Скачал релиз 1.9.0 там есть vncserver.
Теперь пытаюсь запустить его.
Судя по мануалу при запуске vncserver должен предложить установить пароль и создать файл с паролем.
Но этого не происходит.
Пишет:
Код: Выделить всё
You will require a password to access your desktops.
/usr/local/bin/vncpasswd: 1: /usr/local/bin/vncpasswd: Syntax error: ")" unexpected
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 03 окт 2020, 16:29
ravencrow
Помогите кто-нибудь установить TigerVNC на LinuxMint 17.2 Mate чтобы он заработал.
vncpasswd и x0vncserver так же выдают:
Код: Выделить всё
/usr/local/bin/vncpasswd: 1: /usr/local/bin/vncpasswd: Syntax error: ")" unexpected
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 03 окт 2020, 17:58
rogoznik
Где-то внутри файла
ravencrow писал(а): ↑03 окт 2020, 16:29
/usr/local/bin/vncpasswd
нежданчик в виде
)
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 03 окт 2020, 20:16
ravencrow
Всё оказалось намного проще. TigerVNC вообще не нужен.
Достаточно иметь на борту xrdp и x11vnc.
В etc/xrdp/ в файле xrdp.ini указываем порт который отображается при запуске x11vnc. У меня x11vnc занимает порт 5900.
Код: Выделить всё
[xrdp0]
name=sesman-Xvnc
lib=libvnc.so
username=ask
password=ask
ip=127.0.0.1
port=5900
В etc/xrdp/ в файле sesman.ini меняем X11DisplayOffset=10 на 0.
Код: Выделить всё
[Sessions]
X11DisplayOffset=0
MaxSessions=10
KillDisconnected=1
IdleTimeLimit=0
DisconnectedTimeLimit=0
И всё работает. Стандартный клиент RDP Windows легко подключается к локальной сессии Linux. И все что на экране монитора видно через удаленный рабочий стол в реальном режиме времени без создания отдельных сессий.
Правда есть одно неудобство.
Нужно вручную запускать x11vnc через терминал.
А вот для автозапуска нужно найти файл Default, который находится в директории etc/mdm/Init/ и добавить перед строкой exit 0 строку запуска:
Код: Выделить всё
/usr/bin/x11vnc -dontdisconnect -noxfixes -shared -forever -rfbport 5900 -display :0 -rfbauth /etc/x11vnc.pwd -bg -o /var/log/x11vnc.log
Но у меня почему то не заработало. x11vnc запускается автоматически при загрузке системы, но при подключении по RDP просто выкидывает без каких-либо ошибок.
Как из Windows встроенным RDP клиентом подключаться к реальной сессии Linux ?
Добавлено: 04 окт 2020, 12:00
ravencrow
Вообщем просто добавил строку /usr/bin/x11vnc в автозагрузку через Центр управления - Запускаемые приложения. И теперь x11vnc запускается автоматически при включении компьютера.