Как исправить ошибку «Файл программной лицензии не предусматривает возможность запуска клиентских приложений» при использовании 1С на Linux?

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

При развертывании клиент-серверной базы 1С:Предприятие 8.3 с сервером под управлением Linux и пользовательскими рабочими станциями на ОС Windows системные администраторы часто сталкиваются со следующей проблемой. Сервер 1С и кластер успешно настроены, база создана, серверный пин-код активирован. Однако при попытке запустить тонкий клиент или Конфигуратор с Windows-машины платформа выдает сообщение об ошибке:

Ошибка программного лицензирования. Файл программной лицензии не предусматривает возможность запуска клиентских приложений 1С:Предприятия или внешних соединений: file:///var/1C/licenses/...lic

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

Выясним причину ошибки: в чем особенности лицензии «1С:Предприятие 8.3. Сервер МИНИ на 5 подключений»

Основной источник путаницы заключается в торговом наименовании программного продукта — «1С:Предприятие 8.3. Сервер МИНИ на 5 подключений» (артикул 4601546109019). Из названия у пользователей и администраторов складывается ложное впечатление, что данная поставка включает в себя как серверную лицензию, так и комплект из 5 клиентских лицензий. Это не так.

Разберем техническую суть данного продукта:

  1. Тип лицензии: Комплект поставки содержит только одну серверную лицензию (набор пин-кодов для службы сервера 1С). В комплект не входит ни одной клиентской лицензии на запуск платформы или Конфигуратора.
  2. Назначение 5 подключений: Указание «на 5 подключений» обозначает программное ограничение технологического кластера 1С. Лицензия МИНИ позволяет запускать службы сервера 1С (процессы ragent, rmngr, rphost), но жестко лимитирует количество сеансов в рамках кластера — не более 5 пользовательских сеансов и 1 сеанса Конфигуратора суммарно по всем информационным базам сервера.
  3. Происхождение ошибки: Когда системный администратор активирует серверный пин-код и размещает файл .lic в папке /var/1C/licenses, этот файл дает право работать самому серверу 1С. Однако когда клиент на Windows пытается подключиться, сервер передает ему этот `.lic` файл в качестве клиентской лицензии. Платформа анализирует заголовок лицензии, видит тип «Серверная» и справедливо сообщает, что данный файл не разрешает запуск клиентского приложения.

Разберем различие между серверными и клиентскими лицензиями 1С

Программное лицензирование платформы 1С:Предприятие строится на четком разделении двух независимых типов лицензий. Проанализируем их различия:

1. Серверная лицензия (ПРОФ, КОРП или МИНИ)

Серверная лицензия необходима исключительно для запуска процессов кластера 1С:Предприятия. Без активированной серверной лицензии кластер 1С не сможет стартовать или принимать подключения к клиент-серверным базам данных. При этом серверная лицензия сама по себе никогда не предоставляет пользователям право запуска интерфейса 1С.

2. Клиентские лицензии (на 1, 5, 10, 20 и более рабочих мест)

Клиентская лицензия дает право запускать исполняемый файл платформы (клиентское приложение: тонкий клиент, толстый клиент или Конфигуратор). Без клиентской лицензии сеанс пользователя закрывается с ошибкой отсуствия лицензии.

Настройка в свойствах информационной базы «Разрешить выдачу лицензий сервером = Да» указывает серверу 1С отдавать подключенным клиентам имеющиеся у него клиентские лицензии. Если на сервер загружена только серверная лицензия, включать эту галочку бессмысленно — серверу просто нечего выдавать клиентам.

Рассмотрим варианты правильной организации лицензирования в связке Linux-сервер и Windows-клиенты

Для полноценной работы схемы, где сервер 1С развернут на Linux, а пользователи работают на Windows, обязательны к наличию **две составляющие**: активированная лицензия «Сервер МИНИ» и приобретаемые отдельно **клиентские лицензии 1С**.

Существует два основных варианта развертывания клиентских лицензий:

Вариант А. Централизованная активация клиентских лицензий на Linux-сервере

При этом подходе клиентские программные лицензии активируются непосредственно на сервере Linux, а сервер 1С раздает их подключающимся пользователям по сети.

  1. Приобретается комплект клиентских программных лицензий (например, лицензия на 5 рабочих мест).
  2. Активация пин-кода клиентской лицензии выполняется на сервере Linux. В диалоге получения лицензии в разделе «Дополнительно» выбирается пункт «На этот компьютер (сервер)».
  3. В свойствах информационной базы в консоли кластера (или в администрировании) устанавливается флаг Разрешить выдачу лицензий сервером = Да.
  4. Пользователи запускают 1С на Windows-компьютерах. Локальные ключи на Windows-ПК не требуются — сервер 1С автоматически берет клиентскую лицензию из своего пула и закрепляет ее за сеансом пользователя.

Вариант Б. Локальная активация клиентских лицензий на Windows-клиентах

При этом подходе клиентские лицензии находятся на стороне пользовательских ПК.

  1. Используются однопользовательские программные пин-коды (активируются локально на каждом ПК под управлением Windows) или аппаратные USB-ключи защиты HASP, вставленные в клиентские машины.
  2. Флаг Разрешить выдачу лицензий сервером в настройках базы можно отключить или оставить — клиент при запуске сам предъявляет свою локальную лицензию серверу 1С.

Шаг за шагом: порядок активации и установки лицензий

Разберем практические шаги по правильной активации обеих лицензий на сервере Linux.

Шаг 1. Активация лицензии «Сервер МИНИ»

Активируйте пин-код из комплекта «Сервер МИНИ». Назначение этой лицензии — исключительно серверное. При успешной активации на сервере создается файл с расширением .lic. Сервер 1С идентифицирует его как лицензию, разрешающую работу процессов кластера с ограничением до 5 сеансов.

Шаг 2. Активация клиентской лицензии

Запустите процедуру получения лицензии для клиентского комплекта (на 1, 5 или более рабочих мест):

  1. Запустите платформу 1С на клиентском ПК или через Конфигуратор.
  2. Выберите «Получить лицензию».
  3. Введите регистрационный номер комплекта и клиентский пин-код.
  4. В окне выбора места установки перейдите в раздел «Дополнительно» и укажите вариант установки «На этот компьютер (сервер)».
  5. Заполните данные владельца лицензии и завершите процедуру активации. На сервере появится второй файл .lic, содержащий информацию о клиентских местах.

Шаг 3. Включение выдачи лицензий сервером

В параметрах информационной базы через Конфигуратор (меню Администрирование -> Параметры информационной базы) или через консоль кластера 1С найдите параметр «Разрешить выдачу лицензий сервером» и установите значение «Да».

Проанализируем специфику работы с программными лицензиями в ОС Linux

При работе сервера 1С на базе ОС Linux важно учитывать технические нюансы работы с файлами программных лицензий .lic:

  1. Расположение файлов лицензий: Файлы лицензий должны находить в одном из стандартных каталогов поиска 1С:
    • /var/1C/licenses (общий каталог лицензий)
    • /home/usr1cv8/.1cv8/conf (каталог пользователя, под которым запущен сервис 1С)
    • /opt/1C/v8.3/x86_64/licenses (каталог установленной платформы)
  2. Права доступа: Часто причиной проблем с лицензированием в Linux являются неверно выставленные права на файлы. Пользователь системы, от имени которого запущен процесс ragent (обычно это usr1cv8), должен иметь доступ к чтению файлов лицензий.

    Убедитесь, что владельцем файлов является пользователь usr1cv8:grp1cv8, а права на файлы установлены в значение 644 (rw-r--r--):

    chown -R usr1cv8:grp1cv8 /var/1C/licenses

    chmod 644 /var/1C/licenses/*.lic

  3. Привязка к оборудованию: Программная лицензия привязывается к ключевым параметрам сервера (CPU, материнская плата, MAC-адрес, объем RAM, имя хоста). Если сервер 1С развернут в средах виртуализации (KVM, VMware, Hyper-V), изменение конфигурации виртуальной машины приведет к слёту лицензии и потребует повторной активации с помощью резервного пин-кода.

Таким образом, для исправления ошибки необходимо приобрести комплект клиентских лицензий 1С, активировать его на сервере Linux и разрешить выдачу лицензий сервером в настройках информационной базы.

← На главную