Возможно ли развернуть терминальный сервер 1С на Ubuntu 22.04 для УТ 10.3 и с какими проблемами придется столкнуться?

Системный администратор 1С v8.3 (Обычные формы) 1С:Управление торговлей Управленческий учет IT и автоматизация бизнеса
← На главную

В данной статье мы подробно разберем задачу организации удаленного доступа к базе 1С:Управление Торговлей 10.3 (УТ 10.3) с использованием терминального сервера на базе ОС Linux (в частности, Ubuntu 22.04). Рассмотрим технические ограничения, связанные с архитектурой "Обычных форм", обсудим проблемы с COM-объектами и проанализируем альтернативные варианты решения задачи, предложенные профессиональным сообществом.

Постановка задачи и исходные данные

Рассмотрим ситуацию, с которой часто сталкиваются системные администраторы при оптимизации затрат на лицензирование ПО. Имеется следующая вводная:

  1. Операционная система сервера: Ubuntu 22.04.
  2. Конфигурация 1С: Управление Торговлей 10.3.
  3. Платформа: 1С:Предприятие 8.3.
  4. Режим работы: Файловая база данных.
  5. Задача: Организовать работу 3-4 пользователей в удаленном офисе через терминальный режим.

На первый взгляд задача кажется тривиальной: установить Linux, настроить xRDP (аналог RDP для Linux), поставить клиент 1С и запустить работу. Однако, как мы выясним далее, дьявол кроется в деталях архитектуры самой конфигурации 1С.

Анализ архитектурных ограничений: Обычные формы на Linux

Главный "подводный камень", о котором необходимо знать до начала работ, — это тип интерфейса конфигурации УТ 10.3. Эта конфигурация написана на обычных формах. Это означает, что для ее работы требуется "Толстый клиент".

Давайте разберем, почему это критично:

Критическая проблема: COM-соединения и внешнее оборудование

Наиболее весомый аргумент против использования Linux-терминала для старых конфигураций — это технологии интеграции. УТ 10.3 активно использует технологию COM (Component Object Model), которая является нативной технологией Windows.

Проанализируем, где это вызовет сбои:

  1. Работа с Excel и Word. Штатные механизмы сохранения печатных форм в УТ 10.3 или загрузки прайс-листов часто используют COMОбъект("Excel.Application"). В среде Linux этот код работать не будет, так как там нет MS Office и технологии COM как таковой. Это приведет к ошибкам при попытке выгрузить любой отчет или документ.
  2. Торговое оборудование. Если к терминальной сессии планируется подключать сканеры штрих-кодов, фискальные регистраторы или эквайринговые терминалы, возникнут серьезные сложности. Драйверы для старого оборудования часто написаны только под Windows (в виде DLL-библиотек или COM-компонент). Проброс портов в xRDP работает иначе, чем в Windows RDP, и "подружить" Linux-клиент 1С с драйвером торгового оборудования бывает невозможно.
  3. Внешние компоненты (DLL). Многие обработки (например, для банк-клиентов или криптографии) используют внешние компоненты, скомпилированные под Windows. В Linux они работать не будут.

Технические нюансы настройки терминала на Ubuntu 22.04

Если мы все же решимся на эксперимент, нам придется преодолеть ряд системных проблем самой Ubuntu.

Конфликт Wayland и xRDP.
Ubuntu 22.04 по умолчанию использует графический сервер Wayland. Он плохо совместим со стандартным сервером удаленных рабочих столов xRDP. При попытке подключения мы часто получаем черный экран или разрыв сессии. Для решения этой проблемы необходимо принудительно переключить систему на использование Xorg. Это делается правкой конфигурационного файла GDM:


# /etc/gdm3/custom.conf
WaylandEnable=false

Выбор графической оболочки.
Стандартный GNOME слишком тяжел для терминального сервера на слабом железе. Для 3-4 пользователей рекомендуется установить легкие окружения, такие как XFCE или MATE. В файле конфигурации старта сессии xRDP нужно будет прописать запуск именно этой оболочки (например, startxfce4).

Раскладка клавиатуры.
Классическая проблема xRDP — переключение языков. Клиент 1С в терминальной сессии может не воспринимать смену раскладки, передаваемую от Windows-клиента. Это требует генерации специальных файлов km-0419.ini (для русского языка) и настройки xrdp.ini.

Альтернативные решения и рекомендации

Исходя из обсуждения и технического анализа, мы видим, что "лобовое" решение с установкой Linux-клиента 1С для УТ 10.3 является неэффективным и трудозатратным в поддержке. Рассмотрим варианты, которые предлагают опытные администраторы.

Вариант 1. Виртуализация (Proxmox + Windows)

Это наиболее надежный путь, если требуется сохранить лицензионную чистоту хост-системы и при этом обеспечить стабильную работу 1С.

Суть метода:

  1. В качестве базовой ОС на сервер устанавливается гипервизор Proxmox (который, по сути, также является Debian Linux).
  2. Внутри Proxmox разворачиваются виртуальные машины с Windows (например, Windows 10/11 или Server).
  3. Пользователи подключаются по RDP непосредственно к этим виртуальным машинам Windows.

Преимущества:

Вариант 2. VPN + Локальный клиент (Только если база клиент-серверная)

В теме обсуждался вариант настройки VPN-канала до центрального офиса и работы пользователей со своих локальных компьютеров. Однако, так как у нас файловая база данных, этот вариант категорически не рекомендуется. Работа толстого клиента с файловой базой через VPN (SMB/CIFS протокол) приведет к:

Этот вариант допустим только при наличии SQL-версии базы данных (Клиент-серверный вариант), где трафик между клиентом и сервером оптимизирован.

Вариант 3. Переход на современные конфигурации (УТ 11)

Стратегически правильное решение — обновление учетной системы до 1С:Управление Торговлей 11.

Почему это решает проблему:

Итоги

Развертывание терминального сервера на Ubuntu 22.04 для 1С:УТ 10.3 технически возможно, но сопряжено с таким количеством проблем, что делает эксплуатацию системы мучительной как для администратора, так и для пользователей. Отсутствие поддержки COM-объектов сделает невозможным использование многих функций программы.

Рекомендация: Используйте виртуализацию. Разверните на сервере гипервизор (Proxmox или аналог) и создайте виртуальные машины с Windows для доступа пользователей. Это обеспечит стабильную работу "старой" конфигурации 1С без необходимости бороться с несовместимостью Linux-среды.

← На главную