X2Go: различия между версиями
мНет описания правки |
|||
Строка 1: | Строка 1: | ||
= Описание = | == Описание == | ||
X2Go — свободное программное обеспечение удалённого доступа по протоколу NX. | X2Go — свободное программное обеспечение удалённого доступа по протоколу NX. | ||
Строка 5: | Строка 5: | ||
Веб-сайт: http://x2go.org | Веб-сайт: http://x2go.org | ||
= Возможности = | == Возможности == | ||
* удалённый доступ к рабочему столу и приложениям на каналах связи даже с узкой полосой пропускания; | * удалённый доступ к рабочему столу и приложениям на каналах связи даже с узкой полосой пропускания; | ||
Строка 18: | Строка 18: | ||
* запуск отдельного приложения. | * запуск отдельного приложения. | ||
= Установка = | == Установка == | ||
На сервере: | На сервере: | ||
Строка 32: | Строка 32: | ||
apt-get install x2goclient | apt-get install x2goclient | ||
= Подключение к удаленному рабочему столу = | == Подключение к удаленному рабочему столу == | ||
Запустить клиент X2Go можно из «Меню запуска приложений» («Интернет/Сеть» → «X2Go Client») или из командной строки: | Запустить клиент X2Go можно из «Меню запуска приложений» («Интернет/Сеть» → «X2Go Client») или из командной строки: | ||
Строка 39: | Строка 39: | ||
[[Файл:X2Go-client-01.png|Клиент X2Go]] | [[Файл:X2Go-client-01.png|Клиент X2Go]] | ||
== Создание нового подключения == | === Создание нового подключения === | ||
{{Note|Если клиент X2Go запускается первый раз, окно создания новой сессии будет открыто автоматически.}} | {{Note|Если клиент X2Go запускается первый раз, окно создания новой сессии будет открыто автоматически.}} | ||
Строка 56: | Строка 56: | ||
После сохранения настроек соединение появится в списке в главном окне программы. | После сохранения настроек соединение появится в списке в главном окне программы. | ||
== Запуск сессии == | === Запуск сессии === | ||
Для запуска сессии необходимо выбрать подключение в списке, ввести пароль и нажать «ОК»: | Для запуска сессии необходимо выбрать подключение в списке, ввести пароль и нажать «ОК»: | ||
Строка 76: | Строка 76: | ||
[[Файл:X2Go-client-05.png|800px|X2Go. Общий доступ к рабочему столу]] | [[Файл:X2Go-client-05.png|800px|X2Go. Общий доступ к рабочему столу]] | ||
= Использование x2gobroker = | == Использование x2gobroker == | ||
'''x2gobroker''' предоставляет профили сессий, что позволяет не определять их локально на каждом клиенте. | '''x2gobroker''' предоставляет профили сессий, что позволяет не определять их локально на каждом клиенте. | ||
Строка 126: | Строка 126: | ||
Вводим логин/пароль пользователя, которым хотим подключиться к серверу и выбираем нужную сессию. | Вводим логин/пароль пользователя, которым хотим подключиться к серверу и выбираем нужную сессию. | ||
= Запуск отдельного графического приложения = | == Запуск отдельного графического приложения == | ||
На брокере добавить конфигурацию новой сессии (файл {{path|/etc/x2go/broker/x2gobroker-sessionprofiles.conf}}): | На брокере добавить конфигурацию новой сессии (файл {{path|/etc/x2go/broker/x2gobroker-sessionprofiles.conf}}): | ||
[x2goserver-firefox] | [x2goserver-firefox] | ||
Строка 136: | Строка 136: | ||
В данном случае в параметре '''command''' указывается название приложения, которое должно быть запущено вместо графической сессии. | В данном случае в параметре '''command''' указывается название приложения, которое должно быть запущено вместо графической сессии. | ||
= Общий каталог = | == Общий каталог == | ||
Для монтирования общего каталога необходимо, чтобы пользователь на сервере был добавлен в группу '''fuse'''. | Для монтирования общего каталога необходимо, чтобы пользователь на сервере был добавлен в группу '''fuse'''. | ||
Строка 157: | Строка 157: | ||
Если автомонтирование не сработало, то на клиенте в окне "Общий доступ к каталогам" выбрать каталог и нажать "Общий доступ". | Если автомонтирование не сработало, то на клиенте в окне "Общий доступ к каталогам" выбрать каталог и нажать "Общий доступ". | ||
= Печать = | == Печать == | ||
На сервере запустить system-config-printer и добавить принтер '''"Generic CUPS-X2Go"''' (должны быть установлены пакеты {{pkg|x2goserver-printing}} {{pkg|cups-x2go}} {{pkg|x2gobroker}}). | На сервере запустить system-config-printer и добавить принтер '''"Generic CUPS-X2Go"''' (должны быть установлены пакеты {{pkg|x2goserver-printing}} {{pkg|cups-x2go}} {{pkg|x2gobroker}}). | ||
При печати документа выбрать принтер '''"Generic CUPS-X2Go"''', нажать печать. После этого на клиенте должно открыться окно выбора локального принтера для печати. | При печати документа выбрать принтер '''"Generic CUPS-X2Go"''', нажать печать. После этого на клиенте должно открыться окно выбора локального принтера для печати. | ||
= Звук = | == Звук == | ||
В настройках сессии на клиенте открыть вкладку "Медиа", поставить галочку "Включить звук" и выбрать "PulseAudio". | В настройках сессии на клиенте открыть вкладку "Медиа", поставить галочку "Включить звук" и выбрать "PulseAudio". | ||
= Отладка = | == Отладка == | ||
1. Запуск клиента из консоли с параметром --debug: | 1. Запуск клиента из консоли с параметром --debug: | ||
x2goclient --debug | x2goclient --debug | ||
Строка 172: | Строка 172: | ||
.xsession-x2go-*-errors | .xsession-x2go-*-errors | ||
= Решение проблем = | == Решение проблем == | ||
1. При зависании подключения помогает пересоздание базы данных сеансов (под правами root): | 1. При зависании подключения помогает пересоздание базы данных сеансов (под правами root): | ||
x2godbadmin --createdb | x2godbadmin --createdb | ||
= Сравнение с RX@Etersoft = | == Сравнение с RX@Etersoft == | ||
* {{есть}} Полностью свободен | * {{есть}} Полностью свободен | ||
* {{есть}} Актуальные, а не 4-х летней давности библиотеки NX | * {{есть}} Актуальные, а не 4-х летней давности библиотеки NX |
Версия от 12:30, 7 февраля 2023
Описание
X2Go — свободное программное обеспечение удалённого доступа по протоколу NX.
Веб-сайт: http://x2go.org
Возможности
- удалённый доступ к рабочему столу и приложениям на каналах связи даже с узкой полосой пропускания;
- возможность отключения и переподключения в сеанс даже из другого клиента;
- перенаправление звука;
- отсутствие ограничения на количество одновременно работающих пользователей;
- шифрование трафика посредством SSH;
- общие папки с клиента, доступные на сервере;
- использование локального принтера на сервере;
- простой выбор рабочей среды (KDE, Mate, GNOME);
- возможность оказания удалённой технической поддержки;
- запуск отдельного приложения.
Установка
На сервере:
apt-get update apt-get install x2goserver x2goserver-printing cups-x2go systemctl enable --now x2goserver
Чтобы этого не случалось, необходимо на сервере в файле /etc/systemd/logind.conf установить KillUserProcesses=no или добавить нужного пользователя в KillExcludeUsers.
На клиенте:
apt-get update apt-get install x2goclient
Подключение к удаленному рабочему столу
Запустить клиент X2Go можно из «Меню запуска приложений» («Интернет/Сеть» → «X2Go Client») или из командной строки:
$ x2goclient
Создание нового подключения
Для создания нового подключения необходимо выбрать в меню пункт «Сессия» → «Новая Сессия…» (<Ctrl>+<N>). На вкладке «Сессия» следует настроить следующие параметры:
- «Имя сессии» — имя сессии, которое поможет отличать серверы друг от друга;
- «Узел» — адрес подключения (IP-адрес или FQDN);
- «Логин» — имя пользователя;
- «SSH-порт»;
- «Тип сессии» — выбрать среду рабочего стола. Если нужной среды нет в списке, можно выбрать пункт «Пользовательский рабочий стол» и в поле «Команда» указать команду, запускающую рабочую среду.
После сохранения настроек соединение появится в списке в главном окне программы.
Запуск сессии
Для запуска сессии необходимо выбрать подключение в списке, ввести пароль и нажать «ОК»:
Появится удаленный рабочий стол.
Если в окне настроек сессии в поле «Тип сессии», был выбран пункт «Опубликованные приложения», то после подключения к удалённому рабочему столу появится возможность выбрать и запустить приложение:
Для подключения к существующей сессии на удаленном компьютере, в окне настроек сессии в поле «Тип сессии» необходимо выбрать пункт «X2Go/X11 Desktop Sharing»:
После ввода пароля подключения необходимо предложено выбрать рабочий стол и нажать кнопку «Полный доступ» или «Только просмотр»:
Использование x2gobroker
x2gobroker предоставляет профили сессий, что позволяет не определять их локально на каждом клиенте.
Настройка x2gobroker.
Установить пакеты:
apt-get install x2gobroker x2gobroker-common x2gobroker-ssh x2gobroker-daemon x2gobroker-authservice
Добавить запись о сервере в /etc/hosts:
echo "server_ip x2goserver" >>/etc/hosts
В файл /etc/x2go/broker/x2gobroker-sessionprofiles.conf добавить:
[x2goserver-mate] name=Workstation 9 MATE host=x2goserver command=MATE usebrokerpass=true
Запись [x2goserver-mate] - уникальный идентификатор сессии.
Параметр name обозначает имя сессии, которое будет отображаться на клиенте, command - тип сессии (MATE, KDE и т.п.).
Запустить необходимые сервисы:
systemctl enable --now x2gobroker-authservice systemctl enable --now x2gobroker-daemon
Настройка x2goserver.
Установить пакеты:
apt-get install x2goserver x2goserver-printing cups-x2go x2goserver-x2goagent x2goserver-xsession
Добавить запись о брокере в /etc/hosts:
echo "broker_ip x2gobroker" >>/etc/hosts
Запустить сервис:
systemctl enable --now x2goserver
Настройка x2goclient.
Установить пакет:
apt-get install x2goclient
Добавить запись о брокере в /etc/hosts:
echo "broker_ip x2gobroker" >>/etc/hosts
Подключение:
x2goclient --broker-url=http://x2gobroker:8080/plain/
Вводим логин/пароль пользователя, которым хотим подключиться к серверу и выбираем нужную сессию.
Запуск отдельного графического приложения
На брокере добавить конфигурацию новой сессии (файл /etc/x2go/broker/x2gobroker-sessionprofiles.conf):
[x2goserver-firefox] name=Firefox host=x2goserver command=firefox usebrokerpass=true
В данном случае в параметре command указывается название приложения, которое должно быть запущено вместо графической сессии.
Общий каталог
Для монтирования общего каталога необходимо, чтобы пользователь на сервере был добавлен в группу fuse.
Для любого пользователя это можно настроить с помощью модуля pam_group.
В файл /etc/security/group.conf добавляем строку:
*;*;*;Al0000-2400;fuse
В /etc/pam.d/sshd добавляем:
auth required pam_group.so
На клиенте выбираем нужную сессию, жмём на кнопку "Общий доступ к каталогам" - "Параметры" - "Общие каталоги".
В строке "Путь" выбираем нужный каталог, жмём "Добавить". Ставим галочку "Соединять автоматически".
Убедиться, что также выбран параметр "Перенаправлять SSH порт для туннельного подсоединения файловой системы через брандмауэры".
Подключаемся к серверу. Общий каталог должен быть расположен по следующему пути: /home/<user>/media/disk.
Если автомонтирование не сработало, то на клиенте в окне "Общий доступ к каталогам" выбрать каталог и нажать "Общий доступ".
Печать
На сервере запустить system-config-printer и добавить принтер "Generic CUPS-X2Go" (должны быть установлены пакеты x2goserver-printing cups-x2go x2gobroker).
При печати документа выбрать принтер "Generic CUPS-X2Go", нажать печать. После этого на клиенте должно открыться окно выбора локального принтера для печати.
Звук
В настройках сессии на клиенте открыть вкладку "Медиа", поставить галочку "Включить звук" и выбрать "PulseAudio".
Отладка
1. Запуск клиента из консоли с параметром --debug:
x2goclient --debug
2. Просмотр в каталоге удалённого пользователя файлов:
.x2go/C-*/session.log .xsession-x2go-*-errors
Решение проблем
1. При зависании подключения помогает пересоздание базы данных сеансов (под правами root):
x2godbadmin --createdb
Сравнение с RX@Etersoft
- Полностью свободен
- Актуальные, а не 4-х летней давности библиотеки NX
- Не сертифицировано (RX есть в составе СПТ 7)
- Не умеет пробрасывать смарт-карты