Как исправить постоянный «слет» программной лицензии 1С на терминальном сервере при использовании аппаратного ключа

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

Ситуация, когда в организации используется смешанный тип лицензирования — например, основной массив пользователей работает через аппаратный USB-ключ, а дополнительные рабочие места обеспечиваются программными лицензиями — встречается довольно часто. Однако именно в такой связке на терминальных серверах возникают сложности: программная лицензия может «слетать» каждые несколько дней, требуя повторной активации. Разберем подробно, почему это происходит и как стабилизировать работу системы.

Почему программная лицензия «слетает» на терминальном сервере

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

Рассмотрим основные причины изменения параметров на сервере:

  1. Динамические MAC-адреса: В виртуальных средах (особенно Hyper-V) сетевым адаптерам часто назначаются динамические MAC-адреса. При перезагрузке сервера или обновлении сетевых настроек адрес меняется, и лицензия становится недействительной.
  2. Виртуализация и миграция: Если ваша виртуальная машина «переезжает» с одного узла кластера на другой (технологии типа Live Migration), может измениться идентификатор процессора (CPU ID), что мгновенно приведет к сбою.
  3. Обновления ОС и драйверов: Установка крупных пакетов обновлений Windows может изменить версию ядра или данные о BIOS, которые считывает система защиты 1С.
  4. Появление новых сетевых интерфейсов: Установка VPN-клиентов или виртуальных адаптеров для софта (например, Docker) меняет конфигурацию сетевого оборудования, которую 1С учитывает при формировании привязки.

Особенности работы однопользовательской лицензии в RDP

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

Разберем два варианта активации в терминальной сессии:

Важно понимать: Если у вас файловая база, то одна программная лицензия, активированная «на компьютер», позволит одному пользователю открыть любое количество окон 1С. Если же используется клиент-серверный вариант (SQL), то лицензия будет расходоваться на каждый сеанс (каждое запущенное окно 1С потребует отдельную лицензию из общего пула).

Настройка совместной работы с аппаратным USB-ключом

Выясним причину конфликта между USB-ключом (HASP) на 10 пользователей и программной лицензией на 1 пользователя. Платформа 1С имеет определенный приоритет поиска лицензий:

  1. Поиск локального USB-ключа.
  2. Поиск локальной программной лицензии.
  3. Поиск сетевого USB-ключа через HASP License Manager.
  4. Поиск программных лицензий на сервере 1С:Предприятия.

Если 11-й пользователь пытается зайти, а программная лицензия «слетела», он не получит доступ, так как все 10 лицензий на аппаратном ключе уже заняты. Чтобы система работала стабильно, необходимо правильно настроить файл nshasp.ini. Проанализируем его параметры: убедитесь, что в нем не стоит запрет на использование локальных лицензий и корректно указаны адреса менеджеров лицензий.

Пошаговая инструкция по диагностике и стабилизации

Рассмотрим алгоритм действий, который поможет навсегда забыть о повторном вводе пин-кодов:

Шаг 1. Фиксация параметров виртуальной машины

Если сервер виртуальный, первым делом необходимо сделать его параметры статичными. Зайдем в настройки виртуальной машины:

Шаг 2. Анализ причин изменения параметров

Чтобы точно узнать, какой параметр «подводит», проанализируем файл conninfo.txt. Он создается в папке с лицензиями при каждой проверке защиты. Сравните данные в этом файле в момент, когда все работает, и в момент, когда лицензия «слетела». 1С также пишет причину сбоя в окне ошибки. Нажмите кнопку «Подробно», там будет указано, например: Изменились параметры компьютера: сетевые адаптеры.

Шаг 3. Правильная активация лицензии

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

  1. Запустим 1С от имени Администратора (это важно для записи файла в ProgramData).
  2. В окне активации выберем «Дополнительно» — «На этот компьютер».
  3. Убедимся, что в списке ключевых параметров не выбраны лишние пункты, которые могут часто меняться (если платформа позволяет редактировать состав параметров в данной версии).
  4. Обязательно сохраним данные, введенные в анкету (ФИО, адрес, организация), в текстовый файл. При повторной активации (в случае реальной смены железа) эти данные должны совпадать до каждого знака препинания.

Шаг 4. Настройка файла nshasp.ini

Чтобы платформа не игнорировала программную лицензию при наличии аппаратного ключа, проверим файл nshasp.ini, который обычно находится в папке C:\Program Files\1cv8\conf (или в папке bin версии платформы). Проанализируем настройки:


[NH_COMMON]
NH_TCPIP = Enabled

[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.10 ; Адрес вашего сервера с USB-ключом
NH_USE_BROADCAST = Disabled

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

Что делать, если пин-коды закончились

Посмотрим на ситуацию, когда все три резервных пин-кода уже использованы из-за постоянных «слетов». В этом случае необходимо написать письмо в центр лицензирования 1С (lic@1c.ru). В письме укажите:

Как правило, после подтверждения данных организации, разработчики предоставляют новый резервный пин-код.

Таким образом, мы выяснили, что стабильность программной лицензии на терминальном сервере зависит от неизменности аппаратных параметров и правильного выбора режима активации «Для всех пользователей». Выполнив фиксацию MAC-адреса и настроив приоритеты поиска ключей, вы обеспечите бесперебойную работу всех 11 сотрудников.

← На главную