UNIX системы

Больше
2 года 8 мес. назад - 2 года 8 мес. назад #13 от admin
admin ответил в теме UNIX системы
X2GO - Установка сервера - Часть 2

Сервер ставится очень просто.
Для начала подключаем и обновляем репозиторий X2GO, т.к в нём всегда самая последняя версия :
sudo add-apt-repository ppa:x2go/stable
sudo apt-get update

Устанавливаем сам сервер :
sudo apt-get install x2goserver x2goserver-xsession

Вот собственно и всё, сам сервер установлен.


Но для поддержки различных интерфейсов пользователя необходимо установить дополнительные пакеты.

Если на сервере установлен GNOME (версий 2 или 3), устанавливаем поддержку :
sudo apt-get install x2gomatebindings
Внимание !!!
Для GNOME 2 больше ничего устанавливать не требуется, но для GNOME 3 должен быть включен режим GNOME Fallback Mode. Подробнее здесь www.dedoimedo.com/computers/gnome-3-fallback.html .
Версии GNOME 3.12 и выше сервером X2GO в данное время не поддерживаются.

Если на сервере установлен MATE, устанавливаем поддержку :
sudo apt-get install x2gomatebindings
X2GO сервер работает со всеми версиями MATE.

Если на сервере установлен LXDE, устанавливаем поддержку :
sudo apt-get install x2golxdebindings
Внимание !!!
X2GO сервер не работает с LXQt.

Если на сервере установлен KDE 3,4/Plasma версии 4.X, устанавливаем поддержку :
sudo apt-get install plasma-widget-x2go
Внимание !!!
X2GO сервер не работает с KDE 5.


На этом основная настройка сервера X2GO закончена.

На машину с X2GO сервером можно также установить дополнительные программы, которые будут доступны пользователям терминалов.

Для доступа к другим серверам X2GO или Windows машинам по RDP протоколу можно поставить клиент :

Debian/Ubuntu/Raspbian
sudo apt-get install x2goclient

Fedora
yum install x2goclient

Redhat
wiki.x2go.org/doku.php/wiki:repositories:epel

FreeBSD
www.freshports.org/net/x2goclient/


Если Вам нужен графический интерфейс с возможностью программирования на Pythone :
sudo apt-get install pyhoca-gui

Если Вам нужен интерфейс командной строки на Pythone :
sudo apt-get install pyhoca-cli

Если есть необходимость расшаривать рабочий стол для удалённого администрирования :
sudo apt-get install x2godesktopsharing

Если необходим доступ к сессиям через браузер :
sudo apt-get install x2goplugin-provider

Для Windows машин есть свой клиент здесь code.x2go.org/releases/binary-win32/x2goclient/releases

Для тех, кто работает на MacOS версий 10.(5-7) клиент находится здесь www.xquartz.org


Клиент X2GO для Windows не работает напрямую с RDP сессиями Windows.
Для установки сессии с RDP машиной необходимо использовать сервер X2GO, как транзитный сервер.
При этом проходит двухэтапная проверка логина клиента сначала на сервере X2GO, а затем на машине с RDP WIndows. Как это происходит и что необходимо настроить в X2GO клиенте Вы, надеюсь, найдёте сами в X2GO Wiki,

Клиент X2GO для UNIX работает напрямую с RDP сессиями Windows.
Для работы c RDP сессиями необходимо установить сервер freerdp-x11 на машину с клиентом X2GO.
Если Вы установили X2GO клиента на машину, где установлен X2GO сервер, необходимо на эту машину установить сервер freerdp-x11, для того, чтобы пользователь сессии X2GO сервера мог отображать сессию с Windows машиной через X2GO клиента.
sudo apt-get install freerdp-x11

Если X2GO клиент установлен на отдельной машине UNIX, то сервер freerdp-x11 должен быть установлен и на этой машине.

Забегая вперёд скажу, что если у Вас установлен отдельный сервер для поддержки PXE тонких и толстых клиентов, то freerdp-x11 должен быть установлен и на этой машине, внутри Debian Linux.


Ну вот, собственно и всё. Установить и настроить можно за 15 минут.
С установкой сервера терминалов WIndows это не сравнить...
Настраивайте клиента на своей машине, подключайтесь к своему серверу X2GO и получайте наслаждение от работы с нормальным интерфейсом с удалённого сервера...


P.S.
Я уже настолько привык работать на моём терминальном сервере, что даже почту получаю через него.
И всерьёз подумываю об замене своей рабочей машины WIndows 7 на тонкого клиента...


Дополнительная информация :

Команды для X2Go сервера в папке /user/sbin
x2godbadmin - Администрирование базы даных X2Go сервера
x2golistsessions_root - Полный список сессий на сервере
x2goshowbloks - Выводит информацию о смонтированных блоковых устройствах
x2gocleansessions - Сервис очистки сессий (запускается вместе с сервером через файл /etc/init.d/x2goserver)

Команды для X2Go сервера в папке /usr/bin
x2goagent - Агент (запускается сервером)
x2gobasepath - Базовый путь инсталляции X2Go сервера
x2gocaja - Обёртка для вывода файл менеджера Caja
x2goclient - Клиент X2GO
x2gocmdexitmessage - Установка текста сообщения при завершении сессии
x2godesktopsharing - Вывод информации о доступных свойствах клиентских приложений
x2gofeature - Вывод информации о свойстве
x2gofeaturelist - Вывод список свойств
x2gogetapps - Генерирует список опубликованных приложений
x2gogetservers - Выводит список доступных серверов
x2golistdesktops - Список рабочих столов
x2golistmounts - Список монтированных ресурсов
x2golistsessions - Выводит информацию о запущенных и подавленных сессиях на сервере
x2gomountdirs - Список монтированных директорий
x2gopath - Выводит пути к инсталлируемым директориям (base, lib,libexec, share)
x2goresume-desktopsharing - Расшаривание рабочего стола
x2goresume-session - Завершение сессии
x2goruncommand - Запуск команды
x2goserver-run-extensions - Запуск серверного расширения
x2gosessionlimit - Определяет ограничения для пользователей и групп
x2gosetkeyboard - Установка типа клавиатуры
x2gostartagent - Запуск новой сессии (с параметрами запуска)
x2gosuspend-desktopsharing - Завершение работы расшаривания рабочего стола
x2gosuspend-session - Завершение сессии
x2gosuspend-session-mate - Завершение MATE сессии
x2goversion - Выводит информацию о версиях компонентов (agent, desktopsharing, matebindings,
server, server-extensions, server-xsession, thinclientmanagment)


Полезные ссылки :

wiki.archlinux.org/index.php/FreeNX
wiki.x2go.org/doku.php
code.x2go.org/doc/x2goclient/man/man1/x2goclient.1.html
wiki.x2go.org/doku.php/wiki:advanced:published-applications
www.linuxrussia.com/2015/06/x2go-ubuntu.html
wiki.itcollege.ee/index.php/X2go


Это сообщение ещё не закончено и будет изменяться и дополняться по мере наличия времени...
Последнее редактирование: 2 года 8 мес. назад пользователем admin.

Пожалуйста Войти , чтобы присоединиться к беседе.

Больше
2 года 8 мес. назад - 2 года 8 мес. назад #14 от admin
admin ответил в теме UNIX системы
X2GO - Установка окружения для Thin клиента - Часть 3

Установка сервера с поддержкой Thin клиентов X2GO не тривиальная задача, хотя и вполне выполнимая.
Просто необходимо выполнить гораздо больший объём работы.

Немного о работе thin окружения :

У Вас есть отдельный сервер (далее Ubuntu), который поддерживает загрузку thin клиентов через PXE.
Внутри этого сервера, в гипервизоре LXC, работает ещё один сервер - Debian Linux,
На сервере Debian нет практически ничего, кроме ядра и основных программ.
Единственная дополнительно установленная программа - это X2GO клиент Linux.

Тонкий клиент, при включении, с DHCP сервера Ubuntu получает динамический IP адрес.
После этого тонкий клиент загружает ядро Debian и запускает загрузку X2GO клиента.
После загрузки X2GO клиента на Вашей рабочей станции Вы увидите интерфейс X2GO клиента с приглашением подключения к серверу X2GO.
Если Вы правильно авторизуетесь, то рабочая станция будет подключена к сессии на X2GO сервере.


Установка thin окружения происходит в несколько этапов :

1. Установка собственно сервера (у меня Ubuntu 16.04 LTS).
Сначала, для тренировки, я поставил thin окружение на Ubuntu Desktop вместе с сервером X2GO.
Конфигурация оказалась жизнеспособной, но после этого я всё таки не поленился и следуя рекомендациям разработчиков X2GO установил окружение для thin клиентов на отдельный сервер, благо для этого мне не нужно дополнительное железо. У меня все сервера работают на VMware ESXi.

Объясню почему...
Дело в том, что окружение ставится на отдельную виртуальную машину Debian Linux внутри основного сервера (работающую на гипервизоре Ubuntu). Грузить машину с X2GO сервером нежелательно, т.к на этой машине идёт обработка сессий пользователей и она и так подгружена обработкой задач клиентов и обслуживанием сессий. Если на неё ещё поставить дополнительную виртуальную машину Debian, то большое количество задач вызовет замедление работы клиентов и отображение рабочих столов (сессий). Вообще-то разработчики не рекомендуют ставить на машину с X2GO сервером ничего, кроме оболочек пользователя и это правильно.

2. Установка и настройка PXE окружения на сервер.
Это отдельная трудоёмкая задача, которая требует установки TFTP сервера, NFS сервера, DHCP сервера.
Как установить PXE окружение я расскажу немного позже...

3. Установка и настройка thin окружения на сервер.
Это последняя задача по установке thin окружения.


Сначала инсталлируем сам сервер Ubuntu (можно конечно и Desktop версию, но если Вы хотите иметь минимальный размер инсталляции, лучше всё же сервер. Вам не нужен интерфейс пользователя на этой машине). Собственно этот сервер просто шлюз к серверу X2GO. При инсталляции сервера большую часть дополнительных пакетов можно не устанавливать, кроме гипервизора LXC. Можно и его не ставить, инсталлятор thin окружения установит его потом всё равно.

Желательно после полной инсталляции сервера сразу установить Webmin, потом проще будет настраивать сервер.
Если необходимы какие либо дополнительные настройки сервера - лучше сделать это сразу (например обновить пакеты и.т.д).
На этом заканчивается первый этап установки.

Желательно сразу установить PXE окружение на сервере.
А можно перейти сразу к третьему пункту - установке Thin окружения.


Установка thin окружения - процесс достаточно простой, но при настройке было несколько проблем, которые в принципе решаются.

Подключаемся к репозиторию X2Go и обновляем информацию о пакетах :
sudo add-apt-repository ppa:x2go/stable
sudo apt-get update

Устанавливаем пакет thin клиента :
sudo apt-get install x2gothinclientmanagement

На этом этапе Вам необходимо знать, где расположен корень файловой системы TFTP сервера.
Если Вы ещё не устанавливали PXE окружение - не страшно.
Обычно это папка /var/lib/tftpboot, если Вы будете устанавливать TFTP сервер tftpd-hpa на Ubuntu.

После установки пакета надо отредактировать файл /etc/x2go/x2gothinclient_settings.
Этот файл - главные настройки thin окружения.
Самое главное - указать путь к корню tftp сервера. Для этого отредактируйте строку :
TC_TFTP_BOOT="/var/lib/tftpboot"
Остальное можно не трогать...

Теперь можно установить Debian Linux, выполнив команду (скрипт) :
sudo x2gothinclient_create

Это долгий процесс и занимает до получаса, т.к. Debian Linux будет проинсталлирован через Интернет.
Всё зависит от скорости Вашего интернет соединения...
В процессе инсталляции будут заданы вопросы о локальных настройках и языке.
Надо ОЧЕНЬ ВНИМАТЕЛЬНО ответить на эти вопросы, иначе потом придётся вручную исправлять настройки в Debian !!!
Проблема в том, что я нахожусь на Украине, но говорю на русском. Если Вы выберите в качестве страны - Украину а в качестве языка - русский, то Ваши локальные настройки устанавливаются в UA_ru. И потом Debian сильно ругается на это... Позже я опишу, если не забуду, как исправить эту проблему.

Новая файловая система Debian Linux будет находится в папке /opt/x2gothinclient/chroot.
Это корень файловой системы Debian.

Теперь о первоначальной конфигурации...
Файлы конфигурации (шаблоны) в /opt/x2gothinclient/etc напрямую не участвуют в запуске X2Go клиента !!!
Файлы конфигурации (рабочие настройки) в /opt/x2gothinclient/chroot/etc/x2go нежелательно редактировать вручную. Они должны быть изменены только выполнением команды (скрипта) - x2gothinclient_update.

x2gothinclient_init - без необходимости не изменять
x2gothinclient_start - можно изменить параметры командной строки запуска клиента
(описание в man x2goclient)
x2gothinclient_sessions - надо изменять для настройки режима сессии

После изменения шаблонов надо выполнить из командной строки Ubuntu
sudo x2gothinclient_update
чтобы изменения в шаблонах вступили в силу (шаблоны будут скопированы в папку
/opt/x2gothinclient/chroot/etc/x2go).

Первая небольшая проблема в текущей версии X2GO Thin client, с которой я столкнулся: команда обновления выполняется с сообщением об ошибке (неправильная ссылка на файл x2gothinclient_init).
Решение :
1. Удалить файл /opt/x2gothinclient/chroot/etc/x2gothinclient_init.
После выполнения команды x2gothinclient_update файл восстановится.
2. Заменить ссылки на реальные файлы или можно исправить ссылки.

Настройка сессий :
Лучше всего для настройки сессий не редактировать шаблон /opt/x2gothinclient/etc/x2gothinclient_sessions вручную, а использовать установленный x2goclient на другой Linux машине.
Для этого с помощью клиента надо создать необходимые X2GO сессии к Вашему X2GO серверу и настроить их параметры (Для проверки желательно запустить сессии).
После этого надо скопировать файл из текущей домашней папки той машины, на которой Вы настраивали сессии, под именем ./x2goclient/session в папку /opt/x2gothinclient/etc, удалить старый файл /opt/x2gothinclient/etc/x2gothinclient_sessions и переименовать файл с именем session в x2gothinclient_sessions.
После копирования надо выполнить из командной строки Ubuntu команду x2gothinclient_update, чтобы эти настройки вступили в силу.

Минимальные действия по установке мы выполнили, теперь необходима дополнительная настройка сервера.
Об этом я расскажу в следующем сообщении...


Полезные ссылки :

backports.debian.org/Instructions/


Это сообщение ещё не закончено и будет изменяться и дополняться по мере наличия времени...
Последнее редактирование: 2 года 8 мес. назад пользователем admin.

Пожалуйста Войти , чтобы присоединиться к беседе.

Больше
2 года 8 мес. назад - 2 года 8 мес. назад #15 от admin
admin ответил в теме UNIX системы
X2GO - Настройка окружения для Thin клиента - Часть 4

Теперь займёмся настройкой установленного сервера с thin окружением.

Для начала разберёмся с Debin Linux.
Чтобы всё было по правильному, необходимо установить дополнительные пакеты непосредственно в Debian.
Эти пакеты в основном нужны для поддержки старого железа (thin рабочих станций).

Для начала отредактируем файл /opt/x2gothinclient/chroot/etc/apt/sources.list для того, чтобы можно было ставить пакеты драйверов сторонних разработчиков и фирменные пакеты драйверов от производителей железа.

Открываем через Webmin этот файл на редактирование и изменяем строку в нём :
deb ftp.debian.org/debian wheezy main
на следующую :
deb ftp.debian.org/debian wheezy main contrib non-free

Теперь нам надо работать с виртуальной машиной Debian Linux из командной строки. А как же это сделать ?
Да просто !!!
Разработчики X2GO подсуетились и написали для этого скрипт с названием x2gothinclient_shell.
Надо ввести с командной строки Ubuntu :
sudo x2gothinclient_shell
и вы переходите в командную строку Debian в этом же терминале.
Обратите внимание на приглашение командной строки - оно поменяется на приглашение Debian.
Теперь мы работаем непосредственно с виртуальной машиной Debian и его файловой системой в режиме пользователя root. Теперь вводить команду sudo не нужно.

Debian Linux имеет свои репозитории пакетов. Всё таки хоть и Linux, но другой и пакеты другие.
Хотя многие пакеты подходят от потомка - Ubuntu.

Давайте для начала обновим информацию о пакетах и текущие пакеты Debian :
apt-get update
apt-get upgrade

После этого можно поискать информацию о пакетах Debian, связанных с железом.
Для этого введём команду поиска :
apt-cache search firmware

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

Разработчики X2GO рекомендуют поставить минимальный набор пакетов :
apt-get install firmware-linux-nonfree firmware-bnx2 firmware-bnx2x firmware-myricom firmware-netxen
apt-get install firmware-qlogic  firmware-ralink firmware-realtek intel-microcode amd64-microcode
Дополнительную информацию о пакетах Debian Вы можете найти в репозиториях Debian.
Кстати, на репозитории Debian есть пакет для облегчения поиска пакетов для железа. Как называется не помню, поищите в Интернет.

Теперь подготавливаем TFTP сервер для загрузки загрузчика и образа ядра Debian на рабочую станцию.
Необходимо скопировать содержимое папки, в которой находятся ядра Debian
/opt/x2gothinclient/chroot/boot
в корневую папку TFTP сервера, установленного в Ubuntu
/var/lib/tftpboot/X2Go/core (надо создать эту папку, если её нет).

Внимание !!!
Файлы ядра и образа Debian ОБЯЗАТЕЛЬНО должны находится в этой папке (или любой другой, но в корне TFTP сервера), иначе ядро не загружается через TFTP !!!
Символьные ссылки в корне TFTP на файлы ядра и образа находящиеся в папке /opt/x2gothinclient/chroot/boot НЕ ПРОХОДЯТ !!! Почему - не знаю... Не наступайте на мои грабли, в своё время я потерял много времени по этому поводу.

В корне TFTP сервера в подпапке pxelinux.cfg у Вас должен находится файл с именем default, отвечающий за первоначальную конфигурацию меню, выводимого перед загрузкой необходимого ядра. Привожу пример строк для загрузки ядра Debian :
KERNEL X2Go/core/vmlinuz-3.2.0-4-486
APPEND initrd=X2Go/core/initrd.img-3.2.0-4-486 nfsroot=/opt/x2gothinclient/chroot boot=nfs ro quiet nomodeset splash vga=775

В первой строке указывается местонахождение и название файла загрузчика Debian. Название и папка у Вас может быть другими. Но папка должна быть относительно корня TFTP сервера.
Вторая строка указывает на местоположение имиджа ядра Debian (обычно та же папка, что и загрузчик ядра) и название папки, содержащей корень Debian файловой системы, подключенной через NFS сервер в Ubuntu.
Обратите внимание на опцию vga=755. Это указание ядру переключится в необходимый режим развёртки монитора. В данном случае это разрешение экрана монитора 1280х1024. Эта опция Вам понадобится в конце настройки при согласовании режима монитора сессии.
Если эта опция установлена неправильно, отображаемое в thin клиенте окно X2Go может быть меньше размера экрана монитора. Информация о значении опции vga находится в ссылках ниже.

В этом же файле можно настроить загрузку других ядер Debian, если таковые установлены (например выбор загрузки ядра с поддержкой последнего железа).
Я сразу вкратце опишу как это сделать.
Создаём новый файл backport.list в папке /opt/x2goclient/chroot/etc/apt/sources.list.d.
В него добавляем строку :
deb http://ftp.debian.org/debian wheezy-backports main
Вводим терминал в режим работы с Debian, если это ещё Вами не сделано, командой :
sudo x2gothinclient_shell
После этого обновляем информацию о репозиториях Debian :
apt-get update
Ищем существующие на этот момент ядра Debian :
apt-cache search linux-image
В списке находим нужное ядро и инсталлируем его :
apt-get install <нужное ядро>

Для современных машин можно взять ядро 3.2.0-4-686-pae.

Инсталляция ядра обычно сама собирает ядро, но если этого не случилось собираем ядро вручную.
В качестве аргумента подставляем только номер ядра (цифры и если есть буквы).
update-initramfs -u -k <версия ядра>
После окончания процесса сборки ядра, все собранные ядра будут находится в папке /opt/x2gothinclient/chroot/boot.
Но это ядра самого Debian.
Теперь необходимо скопировать файлы ядра из этой папки в папку /var/lib/tftpboot/X2Go/core.
Именно из этой папки будет загружаться ядро в машину thin клиента с помощью TFTP сервера.

Примечание :
Файлы ядер в корне Debian /opt/x2gothinclient/chroot и в папке /opt/x2gothinclient/chroot/boot не участвуют в запуске Debian для thin клиента. Эти ядра используются только при запуске самого Debian, как виртуальной машины внутри Ubuntu.

Например после сборки ядра 3.2.0-4-686-pae в папке /opt/x2gothinclient/chroot/boot Вы должны увидеть файлы :
initrd.img-<3.2.0-4-686-pae>
vmlinuz-<3.2.0-4-686-pae>
дополнительные файлы ядра
congIf-<3.2.0-4-686-pae>
System.map-<3.2.4-0-686-pae>

Немного информации о командах работы с thin клиентом (в папке /usr/sbin) :

x2gothinclient_create - Создаёт файловую систему Debian и все файлы связанные с thinclient.
x2gothinclient_preptftpboot - Создает папку загрузки для TFTP сервера (только если ранее не сконфигурирован).
x2gothinclient_cleanup - Удаляет файловую систему Debian и все файлы связанные с thinclient.
x2gothinclient_upgrade - Обновляет x2goclient в Debian и перекомпилирует ядро Debian (рекомендую периодически использовать).
x2gothinclient_update - Обновляет файлы конфигурации для клиента.
x2gothinclient_shell - Переводит текущий терминал Ubuntu в режим работы root для Debian (выход из окружения Debian через команду exit).

Теперь сервер полностью настроен и может обслуживать thin клиентов.
Для тестирования надо указать в BIOS любого компьютера в сети загрузку через сеть, перезапустить компьютер и дождаться загрузки X2GO клиента. После этого авторизоваться на сервере X2GO и дождаться подключения к сессии на сервере.
Экономьте деньги на жёстких дисках и памяти !!!
Удачи Вам !!!


После установки thin окружения было обнаружено несколько проблем. Предлагаю описание этих проблем и методы их решения :

Симптомы :
Долгая загрузка ядра Debian на рабочей станции. Впоследствии сообщение об ошибке.
Проблема :
Нет доступа к NFS папке. Неправильная работа NFS сервера (причин может быть много).
Решение :
Как минимум перезапустить NFS сервер, как максимум произвести настройку NFS сервера.


Симптомы :
После загрузки Debian на рабочую станцию видно приглашение к вводу логина, но клиент X2GO не запускается.
Проблема :
Проблема связана с файлами инициализации, скорее всего не обновлены через команду x2gothinclient_update после установки системы.
/opt/x2gothinclient/chroot/etc/x2gothinclient_init
/opt/x2gothinclient/chroot/etc/x2gothinclient_start
/opt/x2gothinclient/chroot/etc/x2gothinclient_sessions
Решение :
Выполнить команду в Debian окружении :
x2gothinclient_update


Симптомы :
X2Go клиент не заходит на сервер с сообщением о проблеме шифрования
Проблема :
По умолчанию в SSH сервере сервера X2Go не установлено разрешение протокола KEH - diffie-hellman-group1-sha1,
который отвечает за первоначальный обмен ключами между сервером и клиентом ssh.
В обязательном порядке также должен быть включен протокол diffie-hellman-group14-sha1
Поддерживаемые алгоритмы на стороне сервера можно проверить командой в Ubuntu окружении:
sudo sshd -T | sort | less
Решение :
Для включения поддержки протокола необходимо в файле /etc/ssh/sshd_config
добавить строку в конец файла :
KexAlgorithms +diffie-hellman-group1-sha1
и перезапустить сервис sshd :
sudo service sshd restart


Полезные ссылки :

www.itos-gmbh.com/x2go-thin-client.html
en.wikipedia.org/wiki/VESA_BIOS_Extensions
www.pendrivelinux.com/vga-boot-modes-to-set-screen-resolution


Это сообщение ещё не закончено и будет изменяться и дополняться по мере наличия времени...
Последнее редактирование: 2 года 8 мес. назад пользователем admin.

Пожалуйста Войти , чтобы присоединиться к беседе.

Больше
2 года 8 мес. назад - 2 года 8 мес. назад #16 от admin
admin ответил в теме UNIX системы
X2GO - Брокер сессий - Часть 5


Брокер сессий состоит их 3-х компонентов :

1. Сервис брокера сессий (сервис или WSGI).
2. Сервис авторизации.
3. Сервис агента сессий.

Хочу сразу отметить, что устанавливать брокер сессий необходимо только в случае большого количества пользователей терминалов X2GO для распределения нагрузки между несколькими серверами X2GO. А также для администрирования сессий пользователей и серверов. Для домашнего использования и использования в небольших предприятиях в нём нет необходимости.

Сервис брокера сессий и сервис авторизации устанавливаются на отдельной машине (это не сервер X2GO, обычно это сервер LDAP). После установки брокера сессий, все соединения с серверами X2GO происходят через машину, на которой установлен сервис брокера сессий (он получает информацию со всех серверов X2GO об их загрузке существующими сессиями и распределяет новые сессии между серверами).
Все сервера X2GO должны быть идентичными !!!. Как это сделать - в ссылках ниже, ищите систему FAI. Если у Вас большое количество клиентов X2GO, Вам также потребуется установка и настройка сервера PostgreSQL (для хранения списка пользователей и паролей) на машине с брокером сессий (и сервисом авторизации). Об этом тоже есть ссылка ниже.

Брокер сессий может быть установлен как обычный сервис или интегрирован в Apache2 (можно и в другой WEB сервер) с помощью модуля mod_wsgi. Брокер сессий в режиме обычного сервиса используется при небольшом количестве пользователей, а для больших систем желательно использовать интеграцию в Apache2.

Внимание !!!
Если злоумышленник получает доступ к авторизационным данными пользователя x2gobroker, он сможет выполнять команды с привилегиями root на X2GO сервере !!!

Если брокер сессий работает в качестве обычного сервиса, он может обслуживать порты с номерами выше 1024 и привязан только к IP V4. Привязка адресов осуществляется через файл /etc/defaults/x2gobroker-daemon.

Для установки пакета сервиса брокера сессий в качестве обычного сервиса, выполним в командной строке :
sudo apt-get install x2gobroker-daemon

Для установки пакета сервиса брокера сессий в качестве WSGI (для WEB сервера) выполним в командной строке :
sudo apt-get install x2gobroker-wsgi

После установки брокера сессий необходимо создать пару (приватный и публичный) SSH ключей для нормального функционирования сервиса :
sudo x2gobroker-keygen

Сервис брокера сессий запускается от имени пользователя x2gobroker.


Сервис авторизации обычно устанавливается на ту же машину, что и сервис брокера сессий.
Для установки пакета сервиса авторизации выполним в командной строке :
sudo apt-get install x2gobroker-authservice

Сервис авторизации запускается от имени пользователя root и требует установленного PAM сервиса авторизации (или при необходимости в связке с PostgreSQL).


Сервис агента сессий является промежуточным звеном между брокером сессий и X2GO сервером.
Он необходим для передачи информации с сервера X2GO на брокер сессий для балансировки нагрузки между серверами и через него можно получать информацию о текущих сессиях на X2GO сервере. Устанавливается на машине с X2GO сервером.
С помощью него Вы можете эффективно управлять сессиями пользователей и состоянием сервера X2GO, на котором он установлен.

Функции, доступные через агент сессий :
1. Список сессий любого пользователя.
2. Подавление сессии любого пользователя.
3. Передача публичных SSH ключей пользователям.
4. Удаление публичных SSH ключей пользователей.
5. Просмотр списка X2GO серверов и их нагрузка (количество запущенных/подавленных сессий).
6. И многое другое...

Агент устанавливается следующим образом :
sudo apt-get install x2gobroker-agent

Для получения доступа брокера сессий к серверу X2GO необходимо выполнить :
sudo x2gobroker-pubkeyauthorizer --broker-url http(s)://<адрес сервера брокера сессий>:<порт>/<базовый путь>/pubkeys/

Сервис агента сессий запускается от имени пользователя root (группа: x2gobroker, разрешения: 0750) и требует установленного PAM сервиса авторизации.



Полезные ссылки :

wiki.x2go.org/doku.php/doc:installation:x2gobroker
wiki.x2go.org/doku.php/wiki:advanced:x2gobroker:start
wiki.x2go.org/doku.php/wiki:advanced:x2gobroker:loadbalancing
wiki.x2go.org/doku.php/wiki:advanced:mul...ode:x2goserver-pgsql
code.x2go.org/gitweb?p=x2gobroker.git;a=...ker-wsgi.apache.conf
code.x2go.org/gitweb?p=x2gobroker.git;a=...er-wsgi.apache.vhost
wiki.x2go.org/doku.php/x2gobroker:conf
wiki.x2go.org/doku.php/x2gobroker:daemondefaults
wiki.x2go.org/doku.php/x2gobroker:inifilebackend
fai-project.org/fai-guide/


Это сообщение ещё не закончено и будет изменяться и дополняться по мере наличия времени...
Последнее редактирование: 2 года 8 мес. назад пользователем admin.

Пожалуйста Войти , чтобы присоединиться к беседе.

Больше
2 года 8 мес. назад #17 от admin
admin ответил в теме UNIX системы
X2GO - Заключение - Часть 6



Полезные ссылки :



Это сообщение ещё не закончено и будет изменяться и дополняться по мере наличия времени...

Пожалуйста Войти , чтобы присоединиться к беседе.

Время создания страницы: 0.120 секунд
Работает на Kunena форум