Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.


Предупреждение
Описанный в статье программный продукт устарел и его развитие в рамках Astra Linux не планируется. Для создания терминальных серверов рекомендуется использовать инструменты инфраструктуры виртуальных рабочих мест Termidesk.



Оглавление

Linux Terminal Server Project (LTSP) — свободно распространяемый пакет для Linux с открытым исходным кодом, позволяющий пользователям с маломощными компьютерами (терминалами) использовать вычислительные мощности одного более производительного компьютера (сервера). При этом все приложения запускаются на сервере, а терминалы, также называемые тонкими клиентами (или X-терминалами), просто принимают видеоряд, посылаемый сервером, и кроме него ничего не обрабатывают. Как правило, терминал представляет собой маломощный компьютер, в котором даже может отсутствовать жесткий диск, вследствие чего он может работать тише и потреблять меньше энергии, чем обычный настольный компьютер.

Для передачи клиентам первичной информации (сетевой адрес терминала, адрес, к которому должен подключаться терминал) дложна использоваться службы DHCP. Далее рассматриваются два варианта настройки:

  • служба dnsmasq - упрощенная служба, устанавливается вместе с сервером LTSP, включает в свой состав простой TFTP-сервер, и позволяет быстро настроить нужные параметры для работы терминалов;
  • служба isc-dhcp-server  - полноценная служба DHCP, обычно применяется в больших сетях.

При соотвествующей настройке могут использоваться и другие службы (например, служба DHCP, встроенная в маршрутизатор сети).

Подключение клиентов осуществляется по протоколу SSH (рекомендованный вариант), или по протоколу xRDP.

Входящая в состав Astra Linux версия LTSP поддерживает два режима работы клиентов:

"Тонкий клиент" - По сети загружается минимальный образ с базовой системой и графическим сервером. Приложения выполняются на сервере терминалов, результаты работы передаются по сети графическому серверу на дисплей терминального клиента. Дополнительно в этом режиме поддерживается возможность выполнения отдельных приложений на тонком клиенте (подробнее см. https://manpages.ubuntu.com/manpages/trusty/man5/lts.conf.5.html ).
  • "Толстый клиент" - Загружается полноценный образ с ОС. Приложения выполняются непосредственно на терминальном клиенте, а сервер просто предоставляет доступ к пользовательским данным и программам.
  • Информация

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

    По умолчанию клиент загружается в "тонком" режиме. Клиент загружается в "толстом" режиме (chroot в клиентскую систему) после установки в клиентский образ менеджера рабочего стола (fly-wm). Кроме того, для указания режима загрузки клиентов можно использовать опцию LTSP_FATCLIENT=true/false (по умолчанию не задана) в файле /var/lib/tftpboot/ltsp/amd64/lts.conf на сервере терминалов (подробнее см. https://manpages.ubuntu.com/manpages/trusty/man5/lts.conf.5.html ).

    Информация

    Данная статья применима к:

    • ОС ОН Орёл 2.12 (2.12.24 и выше)
    • ОС СН Смоленск 1.6 (с установленным обновлением безопасности Update5 и выше)
    Предупреждение

    В данной статье описывается работа с LTSP версии 5.18.12-3.1astra3, позволяющей создавать гостевые образы ОС ОН Орёл и ОС СН Смоленск на любой из этих ОС (по умолчанию создается гостевой образ соответствующий текущей хост-системе).  Эта версия доступна для установки из репозитория пакетов ОС ОН Орёл.

    Настройка сервера

    Настройка сетевых интерфейсов

    Типичный сервер LTSP имеет два сетевых интерфейса:

    • Первый интерфейс (eth0) подключен к Интернет, и настройки получает автоматически;
    • Второй интерфейс (eth1) подключен к локальной сети, и ему присвоен статический адрес (для примера 192.168.56.10 с маской 24). Через этот интерфейс осуществляется подключение клиентских машин (также находящихся в локальной сети).

    Сетевые интерфейсы настраиваем любым предпочтительным способом, например, с помощью Network Manager.

    Включение удаленного доступа

    Для работы сервера LTSP нужно разрешить удаленный вход в систему:

    Информация
    "Панель управления" → "Система" → "Вход в систему" → "Дополнительно" - "Разрешить удаленный вход в систему"

    Установка пакетов

    Предполагается, что перед установкой пакетов правильно подключены и настроены репозитории (установочные диски).
    Установка пакетов может быть выполнена с помощью графического менеджера пакетов или из командной строки командой:

    Command
    sudo apt install ltsp-server-standalone xrdp ssh

    При установке пакета ltsp-server-standalone дополнительно будут установлены пакеты:

    • dnsmasq - встроенный сервер DHCP/TFTP. Используется для выдачи клиентам IP-адресов, информации о tftp-сервере и пути к загрузчику pxelinux, а также отдает по tftp-протоколу загрузчик, ядро и главный конфигурационный файл lts.conf;
    • ltsp-server - набор сценариев для создания сервера терминалов.

    Установка пакета xrdp необязательна, и нужна для поддержки работы по протоколу xRDP в дополнение к протоколу SSH.


    Информация

    Данная статья применима к:

    • Astra Linux Special Edition РУСБ.10015-01 и РУСБ.10015-10 (очередное обновление 1.7)
    • Astra Linux Special Edition РУСБ.10015-37 (очередное обновление 7.7)
    • Astra Linux Special Edition РУСБ.10152-02 (очередное обновление 4.7)
    • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)
      с установленным обновлением БЮЛЛЕТЕНЬ № 20200327SE16 (оперативное обновление 5)
    • Astra Linux Special Edition РУСБ.10015-16 исп. 1
      с установленным обновлением Бюллетень № 20201007SE16
    • Astra Linux Common Edition 2.12.24


    Общие сведения

    Linux Terminal Server Project (LTSP) — свободно распространяемое ПО с открытым исходным кодом, позволяющие пользователям с маломощными компьютерами (терминалами) использовать вычислительные мощности одного более производительного компьютера (сервера). При этом все приложения запускаются на сервере, а терминалы, также называемые тонкими клиентами (или X-терминалами), принимают видеоряд, посылаемый сервером, и кроме него ничего не обрабатывают. Как правило, терминал представляет собой маломощный компьютер, в котором даже может отсутствовать жесткий диск, вследствие чего терминал работает тише и потребляет меньше энергии, чем обычный настольный компьютер.

    Для передачи клиентам первичной информации (IP-адрес терминала и IP-адрес сервера, к которому должен подключаться терминал) должна использоваться служба DHCP. Далее рассматриваются два варианта настройки служб, входящих в состав Astra Linux:

    • служба dnsmasq - упрощенная служба DHCP. Эта служба устанавливается вместе с сервером LTSP, включает в свой состав простой TFTP-сервер, и позволяет быстро настроить нужные параметры для работы терминалов;
    • служба isc-dhcp-server  - полноценная служба DHCP. Эта служба обычно применяется в больших сетях. При использовании службы isc-dhcp-server требуется дополнительно установить службу TFTP.

    При соответствующей настройке могут использоваться и другие службы (например, служба DHCP, встроенная в маршрутизатор сети).

    Подключение клиентов осуществляется по протоколу SSH (рекомендованный вариант), или по протоколу xRDP.

    Входящая в состав Astra Linux версия LTSP поддерживает два режима работы клиентов:

    Предупреждение

    Работа клиентов в сессиях с ненулевыми классификационными метками не поддерживается.
    Работа клиентов в сессиях с ненулевой целостностью поддерживается частично (см. далее).
    При работе с Astra Linux Special Edition x.7 для настройки сервера и для создания образов требуется подключение расширенного репозитория.

    • "Тонкий клиент" — по сети загружается минимальный образ с базовой системой и графическим сервером. Приложения выполняются на сервере терминалов в среде ОС сервера, используя файловую систему сервера. Результаты работы передаются по сети графическому серверу и на дисплей терминального клиента. Доступны только приложения, установленные на сервере. При включенном на сервере МКЦ клиентские сессии подключаются только на максимальном уровне МКЦ из доступных клиенту. Клиентам доступны устройства (например, сменные носители), подключаемые к серверу. Функционально тонкий клиент является аналогом удаленного входа с полноценного компьютера в пользовательскую сессию на сервере, только вместо собственной ОС компьютера используется загруженный с сервера образ ОС.  Этот вариант может быть рекомендован для парка, состоящего преимущественно из старых и маломощных клиентских компьютеров с графикой низкого разрешения;

    • "Толстый клиент" — по сети загружается полноценный образ с ОС. Приложения выполняются непосредственно на терминальном клиенте, а сервер просто предоставляет доступ к пользовательским данным (домашние каталоги автоматически  монтируются при входе пользователя в сессию). Работа с ненулевыми метками безопасности (ненулевыми классификационными метками и ненулевой целостностью) не поддерживается. Клиенту недоступны устройства, подключаемые к серверу, но доступны устройства, подключаемые к клиентской машине. Этот вариант является предпочтительным для современных клиентских машин, особенно машин, использующих графику высокого разрешения (передача по сети графики высокого разрешения может оказаться неприемлемо ресурсоемкой). 


    Клиент автоматически загружается в "толстом" режиме при наличии в клиенте рабочего стола (fly-wm). Кроме того, для указания режима загрузки клиентов можно использовать опцию LTSP_FATCLIENT=true/false (по умолчанию не задана) в файле /var/lib/tftpboot/ltsp/amd64/lts.conf на сервере терминалов (подробнее см. https://manpages.ubuntu.com/manpages/trusty/man5/lts.conf.5.html ).


    Предупреждение

    В данной статье описывается работа с сервером LTSP (ltsp-server-standalone) версии 5.18.12-3.1, позволяющей создавать гостевые образы Astra Linux Special Edition и Astra Linux Common Edition  на любой из этих ОС (по умолчанию создается гостевой образ, соответствующий текущей хост-системе).  Эта версия доступна для установки:


    Настройка сервера

    Настройка сетевого интерфейса

    Предполагается, что сетевой интерфейс, через который выполняется подключение терминалов:

    • подключен к локальной сети с адресом сети 192.168.56.0;
    • имеет имя eth0;
    • имеет статический адрес (для примера 192.168.56.10/24).

    Сетевой интерфейс может быть настроен любым предпочтительным способом, например, с помощью Network Manager.

    Установка пакетов

    Предполагается, что перед установкой пакетов подключены и настроены репозитории (установочные диски).

    Информация

    Для установки пакетов на Astra Linux Special Edition необходимы:

    • Для Astra Linux Special Edition x.7:
    • Для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6):
      • установочный диск;
      • диск со средствами разработки;
      • образ обновления установочного диска (update-iso);
      • образ обновления диска со средствами разработки (update-dev-iso);
    • Для Astra Linux Common Edition установка выполняется из штатного репозитория.

    Установка пакетов может быть выполнена с помощью графического менеджера пакетов или из командной строки командой:

    Command
    sudo apt install ltsp-server-standalone xrdp ssh

    При установке пакета ltsp-server-standalone автоматически будут установлены пакеты:

    • ltsp-server — набор сценариев для создания сервера терминалов;
    • dnsmasq — простой DHCP/TFTP сервер.

    Установка пакета xrdp необязательна, и нужна для поддержки работы по протоколу xRDP в дополнение к протоколу SSH.

    После установки пакетов проверить состояние службы ssh:

    Command
    sudo systemctl status ssh

    И, если служба не запущена, то разрешить её автоматический запуск и запустить службу:

    Command
    sudo systemctl enable ssh
    sudo systemctl start ssh


    Установка и настройка служб DHCP

    Предупреждение

    Если в сети уже присутствует служба DHCP, то следует использовать уже существующую службу, дополнив её настройки как указано ниже. 

    Для корректной загрузки клиентов в настройках подсети, обслуживаемой используемой службой DHCP, должны быть указаны:

    • IP-адрес TFTP-сервера;
    • путь к каталогу с образами для загрузки. Порядок создания образа описан далее, см. Создание и настройка загрузочных образов;
    • пути к файлам, используемым для загрузки по сети (PXE). В примерах упоминаются два файла для загрузки:
      • /ltsp/amd64/pxelinux.0 — создается при создании образа;
      • /ltsp/amd64/nbi.img — предназначен для сетевой загрузки с помощью Etherboot или NetBoot. В данной статье не рассматривается.

    В приведенных далее настройках службы isc-dhcp-server указанные настройки соответствуют следующим параметрам:

    Блок кода
    subnet <подсеть> netmask <маска_подсети> {
      next-server <IP-адрес_TFTP_сервера>;
      option root-path "<путь_к_каталогу_с_образами>";
      if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" {
      # Образы PXE
        filename "/ltsp/amd64/pxelinux.0";
      } else {
        filename "/ltsp/amd64/nbi.img";
      }
    }

    Перенос параметров должен выполняться в соответствии с эксплуатационной документацией используемой службы DHCP. 

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

    См. также LTSP-cервер с ОС Astra Linux в инфраструктуре Windows-DHCP.


    Предупреждение

    Далее описаны настройки двух разных служб DHCP - dnsmasq и isc-dhcp-server

    Обе службы настраивать не нужно, достаточно настроить одну из них. Отличия предлагаемых служб:

    • Пакет dnsmasq содержит в себе не только упрощенную версию службы DHCP, но и упрощенную версию службы TFTP. При использовании службы isc-dhcp-server служба TFTP должна быть установлена и настроена отдельно (пакет tftpd-hpa);
    • По возможности не следует использовать упрощенную службу dnsmasq, .а сразу переходить к настройке и использованию полноценной службы isc-dhcp-server и службы tftpd-hpa.

    Установка и настройка службы dnsmasq

    1. Служба dnsmasq устанавливается автоматически при установке пакета ltsp-server-standalone. Отдельно эту службу можно установить командой:

      Command
      sudo apt install dnsmasq


    2. Создать файл /etc/dnsmasq.d/ltsp-server-dnsmasq.conf конфигурации службы dnsmasq командой :

      Command
      sudo ltsp-config --overwrite dnsmasq


    3. Отредактировать файл конфигурации /etc/dnsmasq.d/ltsp-server-dnsmasq.conf:

      Информация

      В конфигурационном файле, устанавливаемом по умолчанию, указан параметр использования proxy:

      Блок кода
      dhcp-range=192.168.56.0,proxy

      Для получения работоспособной конфигурации эти параметры следует отключить (или использовать пример конфигурационного файла, приведенный ниже). Порядок использования proxy см. в справочной системе man dnsmasq.

      Минимальные исправления конфигурационного файла:
       - указать диапазон адресов, выдаваемых сервером DHCP (в примере ниже изменения отмечены выделением);
       - если в сервере используется несколько сетевых интерфейсов, то указать интерфейс, который должен обслуживаться сервером в параметре interface.
      Пример конфигурационного файла:

      Раскрыть
      titleПример файла конфигурации
      # Configures dnsmasq for PXE client booting.
      # All the files in /etc/dnsmasq.d/ override the main dnsmasq configuration in
      # /etc/dnsmasq.conf.
      # You may modify this file to suit your needs, or create new ones in dnsmasq.d/.
      #interface=eth0
      # Log lots of extra information about DHCP transactions.
      #log-dhcp
      # IP ranges to hand out.
      dhcp-range=192.168.56.20,192.168.56.250,8h
      # The rootpath option is used by both NFS and NBD.
      dhcp-option=17,/opt/ltsp/amd64
      # Define common netboot types.
      dhcp-vendorclass=etherboot,Etherboot
      dhcp-vendorclass=pxe,PXEClient
      dhcp-vendorclass=ltsp,"Linux ipconfig"
      # Set the boot filename depending on the client vendor identifier.
      # The boot filename is relative to tftp-root.
      dhcp-boot=net:pxe,/ltsp/amd64/pxelinux.0
      dhcp-boot=net:etherboot,/ltsp/amd64/nbi.img
      dhcp-boot=net:ltsp,/ltsp/amd64/lts.conf
      # Kill multicast.
      dhcp-option=vendor:pxe,6,2b
      # Disable re-use of the DHCP servername and filename fields as extra
      # option space. That's to avoid confusing some old or broken DHCP clients.
      dhcp-no-override
      # The known types are x86PC, PC98, IA64_EFI, Alpha, Arc_x86,
      # Intel_Lean_Client, IA32_EFI, BC_EFI, Xscale_EFI and X86-64_EFI
      pxe-service=X86PC, "Boot from network", /ltsp/amd64/pxelinux
      # Comment the following to disable the TFTP server functionality of dnsmasq.
      enable-tftp
      # The TFTP directory. Sometimes /srv/tftp is used instead.
      tftp-root=/var/lib/tftpboot/
      # Disable the DNS server functionality of dnsmasq by setting port=0


    4. Перезапустить сервис dnsmasq командой:

      Command
      sudo systemctl restart dnsmasq


    Настройка служб isc-dhcp-server и tftpd-hpa

    1. Остановить службу dnsmasq и запретить её автоматический запуск:

      Command

      sudo systemctl stop dnsmasq
      sudo systemctl mask dnsmasq



    2. Установить пакеты:

      Command
      sudo apt install isc-dhcp-server tftpd-hpa


    3. Выполнить на сервере терминалов команду:

      Command
      sudo ltsp-config --overwrite isc-dhcp-server

      В результате выполнения команды будет создан конфигурационный файл /etc/ltsp/dhcpd.conf для службы isc-dhcp-server следующего вида:

      Блок кода
      #
      # Default LTSP dhcpd.conf config file.
      #
      
      authoritative;
      
      subnet 192.168.67.0 netmask 255.255.255.0 {
        range 192.168.67.20 192.168.67.250;
        option domain-name "example.com";
        option domain-name-servers 192.168.67.1;
        option broadcast-address 192.168.67.255;
        option routers 192.168.67.1;
        next-server 192.168.67.1;
      # get-lease-hostnames true;
        option subnet-mask 255.255.255.0;
        option root-path "/opt/ltsp/amd64";
        if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" {
          filename "/ltsp/amd64/pxelinux.0";
        } else {
          filename "/ltsp/amd64/nbi.img";
        }
      }

      Указанные в полученном файле параметры сетевые адреса и сетевые маски) следует заменить на актуальные. Подробнее про настройку службы isc-dhcp-server см. статью  DHCP;

    4. Если в используемой сети нет службы DHCP, а служба DHCP нужна только для сервера терминалов и не используется более ни для чего, то после внесения актуальных сетевых адресов и масок полученных на предыдущем шаге файл можно использовать как файл конфигурации службы isc-dhcp-server, просто скопировав его в каталог /etc/dhcp/:

      Command
      sudo mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.bak
      sudo cp /etc/ltsp/dhcpd.conf /etc/dhcp/dhcpd.conf

      Если служба DHCP используется для иных целей (в том числе, если используется служба, отличная от isc-dhcp-server), то параметры next-server, option root-path и блок if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient"  из полученного файла /etc/ltsp/dhcpd.conf должны быть перенесены в конфигурацию используемой службы;

    5. Для настройки службы tftpd-hpa в конфигурационном файле /etc/default/tftpd-hpa изменить путь к корню разделяемого ресурса сервера:

      Блок кода
      TFTP_DIRECTORY="/var/lib/tftpboot"


    6. После внесения изменений в конфигурацию перезапустить службы:

      Command
      sudo systemctl restart isc-dhcp-server tftpd-hpa


    Настройка клиентов

    Для клиентов требуется выбрать в параметрах BIOS (или в параметрах виртуальной машины) загрузку по сети. Для клиентов на виртуальных машинах может понадобиться изменить тип виртуального устройства Video, установив тип устройства Virtio или иной.

    Якорь
    images
    images
    Создание и настройка загрузочных образов

    Создание и настройка образа тонкого клиента

    Создание образа тонкого клиента

    Для создания образа тонкого клиента используется сценарий ltsp-build-client. Особенности применения сценария зависят от создаваемой гостевой ОС (Common Edition или Special Edition).

    По умолчанию для подключения терминала используется протокол SSH, подключение выполняется к ОС хоста и при этом доступны все учетные записи ОС.

    Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7)

    В Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) для сборки образа можно использовать Интернет-репозитории Astra Linux Special Edition x.7. Пример команды для сборки образа с использованием интернет--репозиториев:

    Command

    sudo ltsp-build-client --dist 1.7_x86-64 --mirror "https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-main" \
    --early-mirror "https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-base" \
    --extra-mirror "https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-extended" \
    --purge-chroot --components contrib,main,non-free --early-packages dpkg --mode 2 \
    --kernel-packages linux-image-5.4-generic

    Расширенный репозиторий (параметр --extra-mirror "https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-extended") указан только для полноты примера, и, если не нужны находящиеся в нем пакеты, то его можно не указывать (см. Репозитории Astra Linux Special Edition x.7: структура, особенности подключения и использования).

    Используемые в этом и следующих примерах опции команды ltsp-build-client:

    • --mirror — репозиторий пакетов для базовой установки (зеркало по умолчанию);
    • --early-mirror — репозиторий пакетов с приоритетом выше, чем у зеркала по умолчанию;
    • --extra-mirror — репозиторий пакетов, устанавливаемых после установки базовой системы. Для Astra Linux Special Edition x.7 с помощью этой опции подключается расширенный репозиторий, использование которого обязательно (параметр --extra-mirror со значением "https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-extended"). Подробнее про репозитории см. Репозитории Astra Linux Special Edition x.7: структура, особенности подключения и использования);
    • --early-packages — задать список пакетов для установки после завершения базовой установки. Названия дополнительных пакетов должны быть указаны через запятую без пробелов. В примере выше эта опция используется для установки пакета dpkg. Этот пакет требуется, если в дальнейшем предполагается устанавливать или удалять пакеты в созданном образе (в созданном chroot-окружении). При сборке образа толстого клиента эту опцию можно использовать для установки пакета fly-all-main (графические программы);
    • --purge-chroot — перед установкой очистить каталог, в который будет выполняться установка chroot-окружения (если такой каталог уже существует);
    • --components contrib,main,non-free — компоненты репозиториев, из которых должна выполняться установка;
    • --kernel-packages linux-image-5.4-generic — список пакетов ядра для установки.

      Предупреждение

      Для сборки образов должны использоваться пакеты, присутствующие в подключенных репозиториях. Нарушение этого требования приводит к сборке неработоспособных образов.


    • --mode — режим защиты создаваемого клиента. В доступной реализации не используется. Применимо только для терминалов Astra Linux Special Edition x.7. Задается цифрой (0, 1 или 2). Описание режимов защиты см. Astra Linux Special Edition (очередное обновление x.7): Ключевые изменения в комплексе средств защиты информации).

    При сборке образа:

    • По умолчанию в качестве имени образа используется имя архитектуры — amd64, и при установке пакетов все службы настраиваются на работу с этим образом. При изменении имени потребуется перенастройка служб.
    • В каталоге /opt/ltsp/amd64 будет создано chroot-окружение (каталог chroot-окружения может быть изменен опцией --chroot, в которой указывается имя подкаталога в каталоге /opt/ltsp. В имени не допускается использовать символы "точка").
    • В каталоге /opt/ltsp/images будет создан образ для загрузки. Имя образа - имя подкаталога chroot-окружения с расширением .img.
    Предупреждение

    После создания образа следует перезапустить службу nbd-server:

    Command
    sudo systemctl restart nbd-server



    Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)

    В Astra Linux Special Edition для сборки образа нужно настроить репозитории пакетов или примонтировать установочный диск (или образ диска) Astra Linux Special Edition. Например, образ установочного диска в файле smolensk-1.6-20.06.2018_15.56.iso можно примонтировать командой

    Command
    sudo mount smolensk-1.6-20.06.2018_15.56.iso /media/cdrom

    Для успешной сборки системы необходимы:

    • установочный диск;
    • диск со средствами разработки;
    • образ обновления установочного диска (update-iso);
    • образ обновления диска со средствами разработки (update-dev-iso).

    Пример команды для сборки образа Astra Linux Special Edition 1.6 с использованием интернет-репозиториев Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6):

    Command
    sudo ltsp-build-client --dist smolensk --mirror "https://dl.astralinux.ru/astra/stable/1.6_x86-64/repository" \
    --early-mirror "https://dl.astralinux.ru/astra/stable/1.6_x86-64/repository-dev" \
    --update-bin /opt/iso/1.06.main.iso --update-dev /opt/iso/1.06.base.iso \
    --purge-chroot --components contrib,main,non-free --early-packages dpkg


    Предупреждение

    В отличие от опций сборки, применяемых в Astra Linux Common Edition, в Astra Linux Special Edition 1.6 используются две обязательные опции:

    --update-bin — путь к ISO-образу репозитория с обновлением smolensk;
    --update-dev — путь к ISO-образу репозитория с обновлением smolensk-devel.

    В этих опциях работа с распакованными репозиториями не поддерживается. 

    Также могут использоваться необязательные опции --mirror, --early-mirror и --extra-mirror, указывающие на распакованные репозитории (примонтированные образы).   В этих опциях, в отличие от опций --update-bin и --update-dev, работа с ISO-образами не поддерживается.

    Если предполагается использовать графическую оболочку, то следует сразу установить пакет fly-all-main (использовать опцию --early-packages).

    В Astra Linux Special Edition помимо устанавливаемых в Astra Linux Common Edition пакетов будут установлены пакеты parsec и linux-astra-modules. В процессе работы сценария будут появляться запросы на установку/монтирование необходимых дисков в каталог /media/cdrom.

    Astra Linux Common Edition

    В Astra Linux Common Edition по умолчанию для сборки образа будет использоваться тот же дистрибутив и/или архитектура что и на серверной системе, и сценарий сборки образа в простейшем случае может быть вызван без параметров:

    Command
    sudo ltsp-build-client

    Если в клиентах предполагается дальнейшая работа с пакетами, то следует сразу установить пакет dpkg:

    Command
    sudo ltsp-build-client --early-packages dpkg


    Настройка образа тонкого клиента

    Опционально в отладочных целях рекомендуется обновить каталоги пакетов в chroot-окружении. Также можно изменить учетные записи, например, задать имя и пароль для локального администратора образа: 

    Command

    [ -d /parsecfs ] && [ -d /opt/ltsp/amd64/parsecfs ] && sudo mount --bind /parsecfs /opt/ltsp/amd64/parsecfs
    sudo ltsp-chroot -m
    apt update
    useradd -g adm -G sudo -s /bin/bash -m <имя_администратора>
    passwd <имя_администратора>
    exit
    [ -d /parsecfs ] && [ -d /opt/ltsp/amd64/parsecfs ] && sudo umount /opt/ltsp/amd64/parsecfs

    В приведенном выше примере первая и последняя команды (монтирование и размонтирование файловой системы /parsecfs) нужны (и сработают) только в Astra Linux Special Edition для образов Astra Linux Special Edition. В Astra Linux Common Edition и для образов Astra Linux Common Edition эти команды не нужны. При этом подразумевается, что распакованная система находится в chroot-каталоге, создаваемом по умолчанию (каталог /opt/ltsp/amd64/), если это не так, то эти команды монтирования и размонтирования нужно изменить соответствующим образом.

    Если ранее не был установлен пакет fly-all-main (или какой-то другой нужный пакет), то пакеты можно доустановить в любой момент:

    Command
    sudo ltsp-chroot -m apt install <имя_пакета>

    Опция -m включает автоматическое монтирование каталогов, необходимых для установки некоторых пакетов.
    При необходимости для команды ltsp-chroot может быть указан дополнительный параметр -a <имя каталога>, задающий расположение образа (аналогично параметру --chroot команды ltsp-build-client);

    Команда ltsp-chroot вносит изменения только в chroot-окружения. Для того, чтобы изменения были перенесены в образ (стали доступны клиентам) необходимо обновить созданный образ:

    Command
    sudo ltsp-update-image


    Предупреждение
    Обновление созданного образа с помощью команды ltsp-update-image необходимо выполнять после внесения изменений в chroot-образ (например, после создания нового пользователя).

    По умолчанию для клиентов используется файл конфигурации, находящийся в образе терминального клиента (/opt/ltsp/amd64/etc/lts.conf).

    Опционально рекомендуется создать отдельный файл конфигурации по умолчанию для LTSP клиентов:

    Command
    sudo ltsp-config --overwrite lts.conf

    После создания файла конфигурации на сервере терминалов для клиентов будет использоваться файл /var/lib/tftpboot/ltsp/amd64/lts.conf.

    Создание и настройка образа толстого клиента

    Предупреждение

    При создании "толстого" образа в него переносятся учетные записи машины, на которой создается образ. Эти записи можно использовать для входа в терминалы, или удалить, изменить, заменить непосредственно в образе. Если после создания образа толстого клиента на сервере LTSP добавляются или удаляются пользователи, то изменения в составе пользователей необходимо зарегистрировать в образе, для чего выполнить команду:

    Command
    sudo ltsp-update-image


    Для создания образа толстого клиента нужно:

    1. Либо создать сразу образ толстого клиента, используя опцию --fat-client-desktop, определяющую название пакета - программы рабочего стола:

      Command

      sudo ltsp-build-client --fat-client-desktop fly-wm ...

      В примере в опции --fat-client-desktop  использован стандартный менеджер окон Astra Linux — fly-wm (не путать с дисплейным менеджером fly-dm и файловым менеджером fly-fm);

      Для Astra Linux Special Edition 1.7 команда сборки толстого клиента может выглядеть так:

      Command

      sudo ltsp-build-client --fat-client-desktop fly-wm --late-packages sudo,mc --mirror "https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-main" \
          --early-mirror "https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-base" \
          --extra-mirror "https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-extended" \
          --purge-chroot --mode 2 \
          --kernel-packages linux-image-5.4-generic


    2. Либо использовать ранее созданный образ тонкого клиента, установить в него основные пакеты графического менеджера Fly:

      Command
      sudo ltsp-chroot -m apt install fly-all-main

      Параметр -m включает автоматическое монтирование каталогов, необходимых для корректной установки или удаления пакетов.
      При необходимости для команды ltsp-chroot может быть указан дополнительный параметр -a <имя каталога>, задающий расположение образа (аналогично параметру --chroot команды ltsp-build-client);


    3. Аналогично, с помощью команды ltsp-chroot -m apt install установить в созданный образ опциональные метапакеты (или же необходимые пакеты по отдельности):
      • Метапакет fly-all-optional — включает в себя пакеты: ark, clementine, compton, fly-admin-iso, fly-fm-crypt, gparted, guvcview, kgpg, librsvg2-bin, qapt-deb-installer, qbat, recoll, speedcrunch, synaptic, vlc, vlc-astra, vlc-l10n, vlc-plugin-access-extra, xca, yelp;
      • Метапакет fly-all-games — включает в себя пакеты (игры) klines, kmines, kpat, supertux, warzone2100, xonotic;
      • Пакет libreoffice — кроссплатформенный, свободно распространяемый офисный пакет с открытым исходным кодом;
      • Другие необходимые пакеты;

    4. Если был установлен дисплейный менеджер fly-dm (не путать с оконным менеджером fly-wm и файловым менеджером fly-fm), то запретить его автоматический запуск:

      Command
      sudo ltsp-chroot -m systemctl disable fly-dm

      При необходимости для команды ltsp-chroot может быть указан дополнительный параметр -a <имя каталога>, задающий расположение образа (аналогично параметру --chroot команды ltsp-build-client);


    5. Если в chroot-окружение вносились изменений, то обновить ранее собранный образ клиента:

      Command
      sudo ltsp-update-kernels <название_каталога> && sudo ltsp-update-image <название_каталога>

      где указать название каталога, в котором находятся файлы для сборки (каталог указывается относительно каталога /opt/ltsp/). Если не указать ничего - то будет использована архитектура amd64, т.е. будет использован  каталог, принятый по умолчанию — /opt/ltsp/amd64/)

    Настройка загрузки тонкого клиента по протоколу xdmcp для работы с ненулевыми классификационными метками

    1. Изменить режим работы тонкого клиента следующими командами:

      Command
      sudo ltsp-chroot -m
      astra-modeswitch set 2
      exit
      sudo ltsp-update-image


    2. Установить пакет xrdp:

      Command
      sudo apt install xrdp


    3. Убедиться, что в файле /opt/ltsp/amd64/usr/share/ltsp/screen.d/xdmcp строка:

      Блок кода
      X_ARGS="$X_ARGS -query ${XDM_SERVER}"


      заменена на

      Блок кода
      X_ARGS="$X_ARGS -query ${XDM_SERVER} -displayID 0:63:0x0:0x0"


    4. Выполнить команды:

      Command
      sudo ltsp-update-image
      sudo ltsp-config --overwrite lts.conf


    5. Файл /var/lib/tftpboot/ltsp/amd64/lts.conf привести к следующему виду (исправив IP-адреса на актуальные):

      Блок кода
      [default]
        LTSP_CONFIG=True
        LOCALDEV=True
        HOTPLUG=True
        DNS_SERVER=192.168.56.100
        SOUND=True
        MIC_VOLUME=0
        CAPTURE_VOLUME=100
        CAPTURE_SWITCH=toggle
        TIMEZONE=Europe/Moscow
        TIMESERVER=192.168.56.100
        SYSLOG_HOST=192.168.56.100
        NBD_SWAP=False
        #NBD_SWAP_SERVER=192.168.56.100
        #CONFIGURE_X=False
        SCREEN_07=xdmcp
        PRINTER_0_DEVICE=/dev/usb/lp0
        PRINTER_0_TYPE=U


    6. Перезагрузить сервер.

    Настройка удаленных подключений при работе с сервером терминалов

    1. Удаленные подключения к тонким клиентам невозможны, так как клиентская сессия выполняется на сервере и не имеет собственного IP-адреса. При наличии полноценной ОС на клиентской машине возможно удаленное подключение к серверу терминалов, функционально схожее с работой тонкого клиента. Настройка таких подключений выполняется на сервере так же, как для любого компьютера под управлением Astra Linux. Также возможно предоставление доступа к рабочему столу активного тонкого клиента. Например, по протоколу VNC с помощью сервера vino (пакет vino должен быть установлен на сервере терминалов), или с помощь других аналогичных технологий;

    2. Удаленное подключение к активным толстым клиентам возможно так же, как и к полноценным компьютерам. Настройка таких подключений выполняется на сервере терминалов, но, в отличие от настройки обычного подключения, не в корневой файловой системе сервера, а в chroot-окружении с последующим переносом изменений в образ толстого клиента;

    Подробнее про настройку удаленных подключений для см. Взаимодействие удаленных графических интерфейсов Astra Linux и Windows;

    Настройка служб DHCP

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

    Настройка службы dnsmasq

    Создать файл /etc/dnsmasq.d/ltsp-server-dnsmasq.conf конфигурации службы dnsmasq командой :

    Command
    sudo ltsp-config --overwrite dnsmasq

    Отредактировать файл конфигурации /etc/dnsmasq.d/ltsp-server-dnsmasq.conf.

    Информация

    В конфигурационном файле, устанавливаемом по умолчанию, имеются параметры использования proxy:

    Блок кода
    dhcp-range=192.168.56.0,proxy
    dhcp-range=192.168.122.0,proxy

    Для получения работоспособной конфигурации эти параметры следует отключить (или использовать пример конфигурационного файла, приведённый ниже).

    Минимальные исправления - указать диапазон адресов, выдаваемых сервером DHCP (в пример ниже отмечено выделением):
    Раскрыть
    titleПример файла конфигурации
    # Configures dnsmasq for PXE client booting.
    # All the files in /etc/dnsmasq.d/ override the main dnsmasq configuration in
    # /etc/dnsmasq.conf.
    # You may modify this file to suit your needs, or create new ones in dnsmasq.d/.
    #interface=eth1
    # Log lots of extra information about DHCP transactions.
    #log-dhcp
    # IP ranges to hand out.
    dhcp-range=192.168.56.20,192.168.56.250,8h
    # The rootpath option is used by both NFS and NBD.
    dhcp-option=17,/opt/ltsp/amd64
    # Define common netboot types.
    dhcp-vendorclass=etherboot,Etherboot
    dhcp-vendorclass=pxe,PXEClient
    dhcp-vendorclass=ltsp,"Linux ipconfig"
    # Set the boot filename depending on the client vendor identifier.
    # The boot filename is relative to tftp-root.
    dhcp-boot=net:pxe,/ltsp/amd64/pxelinux.0
    dhcp-boot=net:etherboot,/ltsp/amd64/nbi.img
    dhcp-boot=net:ltsp,/ltsp/amd64/lts.conf
    # Kill multicast.
    dhcp-option=vendor:pxe,6,2b
    # Disable re-use of the DHCP servername and filename fields as extra
    # option space. That's to avoid confusing some old or broken DHCP clients.
    dhcp-no-override
    # The known types are x86PC, PC98, IA64_EFI, Alpha, Arc_x86,
    # Intel_Lean_Client, IA32_EFI, BC_EFI, Xscale_EFI and X86-64_EFI
    pxe-service=X86PC, "Boot from network", /ltsp/amd64/pxelinux
    # Comment the following to disable the TFTP server functionality of dnsmasq.
    enable-tftp
    # The TFTP directory. Sometimes /srv/tftp is used instead.
    tftp-root=/var/lib/tftpboot/
    # Disable the DNS server functionality of dnsmasq by setting port=0

    Перезапустить сервис dnsmasq командой:

    Command
    sudo systemctl restart dnsmasq

    Настройка службы isc-dhcp-server

    Информация
    Предполагается, что служба isc-dhcp-server уже настроена и находится в эксплуатации. При этом она не обязательно дожна находиться на сервере терминалов.
    1. Создать конфигурационный файл /etc/ltsp/dhcpd.conf, выполнив на сервере терминалов команду:

      Command
      sudo ltsp-config --overwrite isc-dhcp-server

      При этом будет создан конфигурационный файл /etc/ltsp/dhcpd.conf следующего вида:

      Блок кода
      #
      # Default LTSP dhcpd.conf config file.
      #
      
      authoritative;
      
      subnet 192.168.67.0 netmask 255.255.255.0 {
        range 192.168.67.20 192.168.67.250;
        option domain-name "example.com";
        option domain-name-servers 192.168.67.1;
        option broadcast-address 192.168.67.255;
        option routers 192.168.67.1;
        next-server 192.168.67.1;
      # get-lease-hostnames true;
        option subnet-mask 255.255.255.0;
        option root-path "/opt/ltsp/amd64";
        if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" {
          filename "/ltsp/amd64/pxelinux.0";
        } else {
          filename "/ltsp/amd64/nbi.img";
        }
      }

      Указанные в полученном файле сетевые адреса и сетевые маски следует заменить на актуальные.

    2. Если в используемой сети нет службы DHCP, а служба DHCP нужна только для сервера терминалов и не используется более ни для чего, то после внесения актуальных сетевых адресов и масок полученный на предыдущем шаге файл можно использовать как файл конфигурации службы isc-dhcp-server:

      Command
      sudo mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.bak
      sudo cp /etc/ltsp/dhcpd.conf /etc/dhcp/dhcpd.conf
      sudo systemctl restart isc-dhcp-server

      Если служба DHCP используется для иных целей (в том числе, если используется служба, отличная от isc-dhcp-server), то параметры из полученного файла должны пыть перенесены в конфигурацию используемой службы.

    Создание образа тонкого клиента

    Для создания образа тонкого клиента используется сценарий ltsp-build-client. Особенности применения сценария зависят от создаваемой гостевой ОС (ОС СН Astra Linux SE или ОС ОН Astra Linux CE):

    ОС ОН Орёл

    В ОС ОН Орёл по умолчанию для сборки образа будет использоваться тот же дистрибутив и/или архитектура что и на серверной системе, и сценарий сборки образа в простейшем случае может быть вызван без параметров:

    Command
    sudo ltsp-build-client

    Если предполагается использовать графическую оболочку, то следует сразу установить пакет fly-all-main:

    Command
    sudo ltsp-build-client --early-packages fly-all-main
    Возможные необязательные параметры:
    --chroot <название папки> - название папки с образом относительно каталога /opt/ltsp/ (по умолчанию - amd64);
    --dist <название дистрибутива> - задаёт для сборки дистрибутив, отличный от используемого по умолчанию дистрибутива серверной системы. Поддерживаются два варианта: orel или smolensk;
    --mirror <url> - задаёт для сборки другое расположение зеркала репозитория, из котрого нужно ставить систему (по умолчанию http://dl.astralinux.ru/astra/current/orel/repository);
    --early-packages <название пакетов> — установка в клиентский образ дополнительных пакетов.
    Информация
    В опции --early-packages названия дополнительных пакетов должны быть указаны через запятую без пробелов.

    ОС СН Смоленск

    В ОС СН Смоленск для сборки образа нужно настроить репозиторий или примонтировать установочный диск (или образ диска) Astra Linux Special Edition релиз "Смоленск" версии 1.6. Например, образ установочного диска в файле smolensk-1.6-20.06.2018_15.56.iso можно примонтировать командой

    Command
    sudo mount -o loop smolensk-1.6-20.06.2018_15.56.iso /media/cdrom

    Для успешной сборки системы необходимы:

    • установочный диск;
    • диск со средствами разработки;
    • образ обновления установочного диска (update-iso);
    • образ обновления диска со средствами разработки (update-dev-iso).

    Сборка образа для ОС СН Смоленск осуществляется командой:

    Command
    sudo ltsp-build-client --update-bin <путь_к_update-iso> --update-dev <путь_к_update-dev-iso>
    При этом, в дополнение к необязательным опциям сценария сборки, применяемым в ОС ОН Орёл, в ОС СН Смоленск используются две обязательные опции:
    --update-bin - path/to/iso образ репозитория с обновлением smolensk;
    --update-dev - path/to/iso iso образ репозитория с обновлением smolensk-devel.

    Если предполагается использовать графическую оболочку, то следует сразу установить пакет fly-all-main (так же, как в ОС ОН Орёл, использовать опцию --early-packages).

    В ОС СН Смоленск помимо устанавливаемых в ОС ОН Орёл пакетов будут установлены пакеты parsec и linux-astra-modules. В процессе работы сценария будут появляться запросы на установку/монтирование необходимых дисков в каталог /media/cdrom.

    После завершения работы образ системы будет записан в /opt/ltsp/images. Распакованная система будет расположена в каталоге /opt/ltsp/amd64, или в том подкаталоге каталога /opt/ltsp/, который был указан с помощью необязательной опции --chroot.

    Настройка образа тонкого клиента

    Опционально в отладочных целях рекомендуется обновить каталоги пакетов и задать пароль для локального администратора в клиентском образе (вместо <adminname> указать имя администратора): 

    Command

    [ -d /parsecfs ] && sudo mount --bind /parsecfs /opt/ltsp/amd64/parsecfs
    sudo ltsp-chroot -m
    apt update
    useradd -g adm -G sudo -s /bin/bash -m <adminname>
    passwd <adminname>
    exit
    [ -d /parsecfs ] && sudo umount /opt/ltsp/amd64/parsecfs

    В приведённом выше примере первая и последняя команды (монтирование и размонтирование файловой системы /parsecfs) нужны (и сработают) только в ОС СН Смоленск, в ОС ОН Орёл они не нужны. При этом подразумевается, что распакованная система находится в каталоге /opt/ltsp/amd64/, если это не так, то эти команды нужно изменить соответствующим образом.

    Если ранее не был установлен пакет fly-all-main (или какой-то другой нужный пакет), то его можно доустановить в любой момент:

    Command
    sudo ltsp-chroot -m apt install fly-all-main

    При необходимости для команды ltsp-chroot может быть указан дополнительный параметр -a <имя каталога>, задающий расположение образа (аналогично параметру --chroot команды ltsp-build-client);
    Обновить созданный образ:

    Command
    sudo ltsp-update-image

    Перезапустить службы nbd-server, sshd, xrdp:

    Command
    sudo systemctl restart nbd-server sshd xrdp

    По умолчанию для клиентов используется файл конфигурации, находящийся в образе терминального клиента (/opt/ltsp/amd64/etc/lts.conf).
    Опционально рекомендуется создать отдельный файл конфигурации по умолчанию для LTSP клиентов:

    Command
    sudo ltsp-config --overwrite lts.conf

    После создания файла конфигурации на сервере терминалов для клиентов будет использоваться файл /var/lib/tftpboot/ltsp/amd64/lts.conf.

    Создание и настройка образа толстого клиента

    Для создания образа толстого клиента нужно:

    Создать и настроить образ тонкого клиента по описанной выше процедуре или создать сразу образ толстого клиента:

    Command

    sudo ltsp-build-client --fat-client-desktop fly-wm --late-packages sudo,mc

    Где параметры:

    --fat-client-desktop - название рабочего стола (fly-wm)

    --late-packages - название дополнительных пакетов, отсутствующих в стандартном наборе для создания тонкого клиента( в данном примере - пакеты sudo и mc)

    Информация
    В параметре --late-packages названия дополнительных пакетов должны быть указаны через запятую без пробелов.
    Дополнительно может быть указан необязательный параметр --chroot с именем каталога для размещения образа.

    Если используется образ тонкого клиента, то установить в него основные пакеты Fly:

    Command
    sudo ltsp-chroot -m apt install fly-all-main

    При необходимости для команды ltsp-chroot может быть указан дополнительный параметр -a <имя каталога>, задающий расположение образа (аналогично параметру --chroot команды ltsp-build-client);

    Аналогично, с помощью команды ltsp-chroot -m apt install установить в созданный образ опциональные метапакеты (или же необходимые пакеты по отдельности):
    • Метапакет fly-all-optional - включает в себя пакеты ark, clementine, compton, fly-admin-iso, fly-fm-crypt, gparted, guvcview, kgpg, librsvg2-bin, qapt-deb-installer, qbat, recoll, speedcrunch, synaptic, vlc, vlc-astra, vlc-l10n, vlc-plugin-access-extra, xca, yelp;
    • Метапакет fly-all-games - включает в себя пакеты klines, kmines, kpat, supertux, warzone2100, xonotic;
    • Пакет libreoffice -  кроссплатформенный, свободно распространяемый офисный пакет с открытым исходным кодом;
    • другие необходимые пакеты;

    Если был установлен fly-dm, то запретить его автозапуск:

    Command
    sudo ltsp-chroot -m systemctl disable fly-dm

    При необходимости для команды ltsp-chroot может быть указан дополнительный параметр -a <имя каталога>, задающий расположение образа (аналогично параметру --chroot команды ltsp-build-client);

    В файле /var/lib/tftpboot/ltsp/amd64/lts.conf изменить значение параметра LDM_SESSION на default (добавить параметр, если его нет), и добавить параметр LDM_PASSWORD_HASH для корректной работы блокировщика экрана:

    Информация
    # If you're using Unity, you might want to install gnome-session-fallback and
    # use it by default instead, as it performs better on LTSP thin clients.
    LDM_SESSION="default"
    LDM_PASSWORD_HASH=True
  • Обновить ранее собранный образ клиента:

    Command
    ltsp-update-kernels <ARCH> && sudo ltsp-update-image <ARCH>

    где вместо <ARCH> указать название каталога, в котором находятся файлы для сборки (каталог указывается относительно каталога /opt/ltsp/ и, если не указать ничего - то будет использована архитектура amd64, т.е. будет использован  каталог /opt/ltsp/amd64/)

  • Настройка удалённых подключений XDMCP и RDP

    По умолчанию подключение осуществляется с использованием оконного менеджера ldm.

    Для подключения по протоколу XDMCP:

    Информация

    В ОС СН Смоленск 1.6 заменить в файле /opt/ltsp/amd64/usr/share/ltsp/screen.d/xdmcp строку

    Блок кода
    X_ARGS="$X_ARGS -query ${XDM_SERVER}"

    на

    Блок кода
    X_ARGS="$X_ARGS -query ${XDM_SERVER} -displayID 0:63:0x0:0x0"

    В ОС ОН Орёл выполнение указанных действий не требуются.

    Для rdp подключений в файле /opt/ltsp/amd64/usr/share/ltsp/screen.d/xfreerdp последнюю строку привести к виду

    Блок кода
    title/opt/ltsp/amd64/usr/share/ltsp/screen.d/xfreerdp
    exec xinit /usr/share/ltsp/xinitrc /usr/local/bin/rdp.sh -- "$DISPLAY" "vt${TTY}" -nolisten tcp $X_ARGS >/dev/null
    

    Создать файл /opt/ltsp/amd64/usr/local/bin/rdp.sh (указать актуальный IP-адрес):

    Блок кода
    title/opt/ltsp/amd64/usr/local/bin/rdp.sh
    #!/bin/bash
    userdata=$(zenity --forms --title="Вход на сервер" --text="Форма авторизации" --add-entry="Логин:" --add-password="Пароль:");
    userlogin="`echo $userdata|cut -d '|' -f 1`";
    userpassword="`echo $userdata|cut -d '|' -f 2`";
    xfreerdp /v:192.168.56.100 /cert-ignore +sec-nla /d:example.com /u:$userlogin /p: $userpassword /f /drive:usb,/media /network:lan /printer

    И сделать созданный файл /opt/ltsp/amd64/usr/local/bin/rdp.sh исполняемым:

    Command

    chmod +x /opt/ltsp/amd64/usr/local/bin/rdp.sh

    Выполнить команды:

    Command

    sudo ltsp-chroot systemctl disable fly-dm
    sudo ltsp-chroot -m update-initramfs -uk all
    sudo ltsp-config --overwrite lts.conf

    Файл /var/lib/tftpboot/ltsp/amd64/lts.conf привести к следующему виду (исправив IP-адреса на актуальные):

    Блок кода
    titlenano /var/lib/tftpboot/ltsp/amd64/lts.conf
    [default]
      LTSP_CONFIG=True
      LOCALDEV=True
      HOTPLUG=True
      DNS_SERVER=192.168.56.100
      SOUND=True
      MIC_VOLUME=0
      CAPTURE_VOLUME=100
      CAPTURE_SWITCH=toggle
      TIMEZONE=Europe/Moscow
      TIMESERVER=192.168.56.100
      SYSLOG_HOST=192.168.56.100
      NBD_SWAP=False
      #NBD_SWAP_SERVER=192.168.56.100
      #CONFIGURE_X=False
      SCREEN_07=xfreerdp
      PRINTER_O_DEVICE=/dev/usb/lp0
      PRINTER_0_TYPE=U
    Информация
    Для того, чтобы по умолчанию подключение выполнялось по XDMCP опцию SCREEN_07=xfreerdp следует изменить на SCREEN_07=xdmcp.

    После выполнения вышеуказанных действий на сервере терминалов нужно создать пользователей,  после чего можно выполнять загрузку клиентских машин по сети.

    Дополнение: настройка автомонтирования usb-устройств

    Создать файл /opt/ltsp/amd64/etc/udev/rules.d/udev.rules:

    Блок кода
    title/opt/ltsp/amd64/etc/udev/rules.d/udev.rules
    ACTION=="add", KERNEL=="sd[a-z][0-9]", TAG+="sy sudo mount --bind /persecfs /opt/ltsp/<name>/parsecfsstemd", ENV{SYSTEMD_WANTS}="usbstick-handler@%k"

    Создать unit для запуска:

    Блок кода
    title/opt/ltsp/amd64/lib/systemd/system/usbstick-handler@.service
    [Unit]
    Description=Mount USB
    BindsTo=dev-%i.device
    After=dev-%i.device
    [Service]
    Type=oneshot
    RemainAfterExit=yes
    ExecStart=/usr/local/bin/automount %I
    ExecStop=/usr/bin/pumount /dev/%I

    Создать сценарий монтирования:

    Блок кода
    title/opt/ltsp/amd64/usr/local/bin/automount
    #!/bin/bash
    
    PART=$1
    FS_LABEL=`lsblk -o name,label | grep ${PART} | awk '{print $2}'`
    
    if [ -z ${FS_LABEL} ]
    then
    /usr/bin/mount -t auto /dev/${PART} /media/${PART}
    else
    /usr/bin/mount -t auto /dev/${PART} /media/$ {FS_LABEL}_${PART}
    fi

    Разрешить выполнение сценария:

    Command

    sudo chmod +x /opt/ltsp/amd64/usr/local/bin/automount

    Пересоберать образ:

    Commandsudo ltsp-update-kernels && sudo ltsp-update-image