При администрировании серверных решений 1С:Предприятие часто возникает ситуация, когда на один сервер устанавливается несколько комплектов программных лицензий (например, два комплекта по 5 пользователей для расширения общего пула до 10 рабочих мест). Однако иногда администраторы сталкиваются с непонятным поведением системы: одна лицензия успешно раздается пользователям по сети, а вторая «срабатывает» только в том случае, если пользователь запускает программу непосредственно внутри сессии удаленного рабочего стола (RDP) на самом сервере.
В рамках этой статьи мы подробно разберем, почему возникает такая проблема, как устроен механизм раздачи программных лицензий 1С, рассмотрим особенности их размещения в файловой системе и проанализируем варианты правильной настройки.
Если после установки двух лицензий по 5 пользователей одна из них раздается по сети, а вторая доступна только локально через RDP, причина кроется в особенностях активации и размещения файлов лицензий. Рассмотрим две наиболее распространенные ошибки администраторов.
Ошибка 1. Использование неверного типа пин-кода (Однопользовательский режим вместо Многопользовательского)
Это классическая ситуация при первой настройке. Дело в том, что клиентские программные лицензии 1С номиналом 5, 10 и 20 рабочих мест поставляются в коробке с двумя разными наборами пин-кодов:
Если администратор при активации второй коробки по ошибке использовал пин-коды из однопользовательского набора непосредственно на сервере, система поведет себя следующим образом:
Решение проблемы: Для исправления этой ситуации необходимо произвести повторную активацию проблемного комплекта лицензий, строго выбрав вариант активации многопользовательской лицензии и использовав соответствующий пин-код из комплекта поставки.
Ошибка 2. Неверный выбор каталога хранения файлов лицензий (права доступа)
Программная лицензия представляет собой файл с расширением .lic. При активации лицензии через конфигуратор или в режиме «Предприятие» система предлагает выбрать, для кого будет доступна лицензия: «Для всех пользователей данного компьютера» или «Для текущего пользователя».
Если для первой лицензии был выбран вариант «Для всех пользователей», файл сохранился в общий каталог:
C:\ProgramData\1C\licenses
Служба сервера 1С:Предприятие (которая по умолчанию работает под системной учетной записью, например, USR1CV8) имеет полный доступ к этой папке. Она видит этот файл и успешно раздает 5 лицензий по сети.
Если же при активации второй лицензии администратор оставил значение по умолчанию («Для текущего пользователя»), файл лицензии сохранился в личный профиль учетной записи администратора, под которой производилась активация, например:
C:\Users\Администратор\AppData\Local\1C\1Cv8\Conf
В этом случае служба сервера 1С USR1CV8 физически не имеет прав доступа к профилю пользователя «Администратор» и не видит этот файл лицензии. Соответственно, сервер не может раздавать эти лицензии по сети. Но когда сам администратор (или пользователь с аналогичными правами) заходит по RDP, его сессия имеет доступ к его же профилю, и лицензия успешно подхватывается локально.
Решение проблемы: Перенесите файл лицензии .lic из профиля пользователя в общую папку C:\ProgramData\1C\licenses и убедитесь, что у службы, под которой запущен сервер 1С, есть права на чтение файлов в этом каталоге.
Переводя все лицензии в режим раздачи сервером по сети, необходимо учитывать фундаментальные различия в алгоритмах подсчета лицензий платформой 1С. Выбор схемы раздачи напрямую влияет на то, как быстро у вас будут заканчиваться свободные рабочие места.
Сценарий 1. Лицензии раздает сервер 1С по сети (клиент-серверный вариант)
В этом режиме подсчет ведется по сеансам (на каждое открытое окно программы). Если одному бухгалтеру на его локальном компьютере требуется одновременно открыть базы «Бухгалтерия предприятия», «Зарплата и управление персоналом» и «Управление торговлей», сервер 1С выдаст ему 3 отдельные лицензии из общего пула. Для работы 10 сотрудников, открывающих по 2 базы, вам потребуется пул минимум в 20 лицензий.
Сценарий 2. Работа на терминальном сервере (внутри RDP-сессии)
Если пользователи работают на самом сервере в терминальном режиме, и клиентские приложения 1С запущены непосредственно в RDP-сессиях, поиск лицензии происходит локально на этой машине. В терминальном режиме лицензия выделяется на одну сессию RDP (на конкретного пользователя). Это означает, что внутри своего удаленного рабочего стола пользователь может открыть неограниченное количество баз 1С одновременно (например, 5 баз), но при этом будет расходоваться всего 1 лицензия.
Поэтому перед тем как объединять все лицензии для сетевой раздачи сервером, проанализируйте модель работы ваших пользователей. Если сотрудники часто работают с несколькими базами параллельно, терминальный режим работы через RDP может оказаться значительно выгоднее с экономической точки зрения.
В отличие от аппаратных USB-ключей защиты, у которых существует жесткое ограничение (нельзя использовать на одном сервере два сетевых ключа одной серии, например, два ключа по 10 пользователей работать вместе не будут), программные лицензии можно объединять без каких-либо ограничений.
Вы можете активировать на одном сервере любое количество программных лицензий разного номинала (например, 5, 10 и 50 пользователей). Для этого достаточно разместить все полученные файлы лицензий .lic в одну общую папку C:\ProgramData\1C\licenses. При запуске служба сервера 1С автоматически просуммирует номинал всех доступных файлов лицензий в этой папке.
Важное предостережение: Категорически запрещается вручную копировать файлы лицензий с одного сервера на другой или пытаться использовать один и тот же пин-код для одновременной генерации файлов лицензий на разных машинах. Платформа 1С осуществляет проверку уникальности лицензий при обращении к серверу лицензирования. Если система обнаружит дублирующиеся файлы или попытку использовать скомпрометированный пин-код, такие лицензии будут мгновенно заблокированы службой защиты и внесены в черный список, после чего их придется восстанавливать через обращение в техническую поддержку.
По умолчанию при активации программной лицензии файлы привязываются к ключевым характеристикам аппаратной части компьютера (материнская плата, процессор, сетевая карта, операционная система, объем оперативной памяти и т.д.). Любое изменение этих параметров (например, увеличение оперативной памяти на виртуальной машине или замена сетевой карты) приводит к тому, что лицензия «слетает» и её необходимо активировать заново с использованием резервного пин-кода.
Чтобы избежать этой проблемы, платформа 1С предоставляет механизм привязки программной лицензии к уникальному идентификатору (ID) подключенного к серверу аппаратного USB-ключа защиты HASP. Рассмотрим особенности этого подхода:
Таким образом, комбинирование аппаратной защиты и программного лицензирования является отличным решением для крупных и динамически развивающихся ИТ-инфраструктур, снижая риски простоя системы при плановых обновлениях серверного оборудования.