При работе с платформой «1С:Предприятие» часто возникает ситуация, когда отключение опции «Разрешить серверу выдавать лицензии» приводит к тому, что тонкий клиент перестает видеть сетевой аппаратный ключ защиты (HASP). Отключение этой опции в настройках базы на сервере приложений — логичный шаг, когда требуется сэкономить лицензии. Разберем подробнее, почему так происходит и как правильно настроить систему, чтобы тонкий клиент успешно находил сетевой ключ.
Почему отличается расход лицензий сервером и клиентом?
Проанализируем механику работы лицензирования в «1С:Предприятие»:
Выдача лицензий сервером 1С: Сервер выдает лицензии посеансно. Это означает, что если пользователь откроет на одном компьютере три разных информационных базы или три окна одной программы, сервер 1С израсходует 3 сетевые лицензии с ключа.
Выдача лицензий менеджером ключей (HASP LM): Менеджер лицензий, запущенный на стороне клиента или сети, выдает 1 лицензию на рабочую станцию (ПК). Сколько бы баз или сеансов 1С ни запустил пользователь на своем компьютере, будет израсходована всего 1 лицензия с ключа.
Именно поэтому отключение выдачи лицензий сервером является обоснованным решением. Однако после этого тонкий клиент должен самостоятельно обнаружить аппаратный ключ по сети.
Шаг 1. Установка и запуск HASP License Manager на сервере
Для того чтобы сетевой аппаратный USB-ключ (HASP) был доступен клиентским компьютерам, недостаточно просто вставить его в сервер. На компьютере, где физически установлен ключ, должна быть запущен специальная служба — менеджер лицензий.
Скачаем и установим программу HASP License Manager (hasplm) на сервер, где расположен аппаратный USB-ключ.
Убедимся, что менеджер лицензий запущен в качестве службы Windows (Service) и работает непрерывно.
Шаг 2. Настройка файла nethasp.ini на клиентском компьютере
По умолчанию тонкий клиент ищет сетевые ключи с помощью широковещательных запросов (broadcast). В сложных сетях, при наличии брандмауэров или маршрутизаторов между подсетями, такие запросы блокируются. Чтобы тонкий клиент сразу обращался к нужному серверу, необходимо настроить файл nethasp.ini.
Рассмотрим порядок действий по настройке файла конфигурации:
Найдем файл nethasp.ini в каталоге установки платформы на клиентском ПК. Обычно он находится по пути:
C:\Program Files\1cv8\conf\ (или C:\Program Files (x86)\1cv8\conf\ для 32-разрядного клиента).
Откроем файл текстовым редактором и отредактируем секцию [NH_TCPIP], указав точный IP-адрес сервера с ключом и отключив широковещательный поиск:
Шаг 3. Проверка режима подключения тонкого клиента
Выясним важную техническую особенность работы тонкого клиента через различные протоколы:
Подключение через веб-сервер (HTTP/HTTPS): Если тонкий клиент подключается к базе, опубликованной на IIS или Apache, он не может напрямую запрашивать лицензию у сетевого ключа по локальной сети. В этом режиме либо сервер (модуль веб-сервера) должен выдавать лицензию, либо локальный ключ должен быть вставлен непосредственно в ПК пользователя.
Прямое подключение по TCP/IP: Чтобы тонкий клиент сам забирал лицензию с сетевого ключа через HASP LM, подключение к серверу 1С должно быть прямым (по умолчанию используется порт 1541).
Шаг 4. Дополнительные параметры запуска и сетевые настройки
Если после настройки nethasp.ini ключ все еще не обнаруживается, выполним следующие проверки:
Настройка сетевого экрана (файрвола): Менеджер лицензий HASP LM использует порт 475 (протоколы UDP и TCP). Проверим, чтобы данный порт был открыт на сервере и клиентских машинах.
Принудительный поиск аппаратных ключей: В свойствах подключения базы в списке запуска 1С зайдем в дополнительные параметры и убедимся, что включена опция поиска аппаратных ключей. Также можно добавить параметр строки запуска:
/UseHardwareLicenses+
Проверка наличия локальных ключей: Если в клиентский ПК вставлен любой другой USB-ключ (даже от иной программы или однопользовательский), платформа 1С может опрашивать его первым. Если нужная лицензия на нем отсутствует, поиск сетевого ключа прекратится. В таком случае локальный ключ необходимо извлечь.
Таким образом, для работы тонкого клиента с сетевым ключом напрямую достаточно запустить HASP License Manager на сервере ключа, указать его IP-адрес в файле nethasp.ini на рабочем месте пользователя и убедиться, что открыт сетевой порт 475.