При работе с программными продуктами «1С:Предприятие 8» часто возникает ситуация, когда имеется физический однопользовательский ключ защиты, но работать с базой необходимо на виртуальном сервере или удаленной машине. Рассмотрим подробно, как устроена система лицензирования, почему стандартные средства раздачи лицензий могут не работать и какими способами можно решить задачу проброса ключа.
Прежде всего, проанализируем маркировку аппаратного ключа. В рассматриваемом случае используется ключ с маркировкой H4 M1 ORGL8. Это локальный однопользовательский ключ защиты. Его ключевая особенность заключается в том, что на уровне микрокода в нем отсутствует разрешение на работу через HASP License Manager.
Разберем, что это означает на практике. Даже если вы установите менеджер лицензий на компьютер, к которому подключен такой ключ, программа-менеджер не будет транслировать лицензию в сеть. Другие рабочие станции или серверы «1С» не смогут увидеть этот ключ по протоколам TCP/UDP (порт 475), так как он предназначен исключительно для локального использования на той машине, к которой он подключен физически.
Для сравнения, сетевые многопользовательские ключи имеют маркировку, начинающуюся с префикса NET (например, NET5 ORGL8). Только такие ключи могут обслуживаться менеджером лицензий и быть доступными для всей локальной сети.
Чтобы понять, как обойти ограничение, выясним, в какой последовательности клиентское приложение «1С» ищет лицензию. Рассмотрим этот алгоритм пошагово:
nethasp.ini, чтобы найти сетевые ключи в локальном сегменте или по конкретным IP-адресам.В ситуации с виртуальным сервером стандартный путь через менеджер лицензий (шаг 2) не сработает для ключа ORGL8. Поэтому необходимо имитировать шаг 1 — локальное подключение.
Поскольку физически подключить USB-ключ к виртуальной машине невозможно, проанализируем технологию проброса портов по сети. Это наиболее надежный технический вариант для работы с аппаратными лицензиями в облачной или виртуальной среде.
Рассмотрим основные способы реализации:
USB Network Gate, VirtualHere или FabulaTech. Они позволяют «расшарить» USB-порт на физическом компьютере, где стоит ключ, и «подключить» его на виртуальном сервере. Операционная система сервера будет воспринимать этот ключ как локально вставленный в USB-разъем.AnywhereUSB или решения от SEH), которые подключаются напрямую в Ethernet-сеть. Вы вставляете ключ в такое устройство, а виртуальный сервер по IP-адресу подключает этот порт к себе. Это решение считается наиболее стабильным для корпоративного сектора.VMware ESXi, Hyper-V или Proxmox, можно воспользоваться функцией USB Passthrough. В этом случае ключ вставляется в физический USB-порт хост-сервера и «пробрасывается» в настройках конкретной виртуальной машины.Если работа с аппаратным ключом кажется слишком сложной, рассмотрим альтернативу — переход на программные лицензии. Программная лицензия представляет собой файл с расширением .lic, который привязывается к характеристикам сервера.
Выясним основные нюансы работы с программными лицензиями в виртуальной среде:
Риски привязки: Программная лицензия крайне чувствительна к изменению параметров сервера. В виртуальной среде лицензия может «слететь», если изменятся:
Процесс активации: При первой установке используется основной ПИН-код. В комплекте обычно идут еще 2 резервных. Рассмотрим пример того, как технически может выглядеть файл запроса, хотя платформа делает это автоматически через мастер активации. Важно помнить, что если сервер тестовый и планируется его частое пересоздание, ПИН-коды быстро закончатся. В этом случае придется писать официальный запрос в Центр лицензирования «1С» для получения дополнительного кода.
Если вы все же смогли «подключить» ключ к серверу (например, через проброс), но клиенты все равно не могут запустить «1С», необходимо проверить настройки в консоли администрирования серверов 1С:Предприятия.
Разберем алгоритм настройки:
1cv8 dev console.В этом случае сервер сам заберет лицензию с локального (проброшенного) ключа ORGL8 и отдаст её клиентской сессии. Однако помните: локальный ключ ORGL8 позволит запустить только одну сессию или неограниченное число сессий только в рамках одного терминального сеанса, если сервер работает в режиме терминалов.
Для проверки видимости ключей в сети профессионалы используют утилиту Aladdin Monitor (AKS Monitor). Рассмотрим, как интерпретировать её показатели:
Если ключ является локальным (ORGL8), он не отобразится в этой утилите. Это нормальное поведение, так как монитор видит только то, что транслирует HASP License Manager. Если же вы используете сетевой ключ (NET...), но он не виден в мониторе, проверьте настройки файла nethasp.ini. Типовой пример настройки для поиска ключа по конкретному адресу выглядит так:
[NH_COMMON]
NH_TCPIP = ENABLE
[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.100 ; IP-адрес машины с ключом
NH_TCPIP_METHOD = TCP
NH_USE_BROADCAST = DISABLE
Подводя итог, можно сказать: передать локальный ключ H4 M1 ORGL8 по сети стандартным менеджером лицензий невозможно из-за ограничений самого железа. Единственным рабочим вариантом для виртуального сервера остается использование систем USB-over-IP или переход на программные лицензии с жесткой фиксацией параметров виртуальной машины, чтобы избежать частых переактиваций.