Как исправить ошибку «Не обнаружено свободной лицензии» в 1С при наличии сетевых ключей HASP?

Системный администратор IT и автоматизация бизнеса
← На главную

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

1. Отключение раздачи лицензий кластером серверов 1С

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

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

  1. Откроем Консоль администрирования кластера серверов 1С:Предприятия.
  2. Перейдем к списку информационных баз кластера.
  3. Откроем свойства нужной информационной базы.
  4. Найдем параметр Разрешить выдачу лицензий сервером 1С:Предприятия и установим значение Нет.
  5. Повторим данную процедуру для всех рабочих информационных баз кластера.

После отключения этого параметра клиентские приложения будут запрашивать лицензию напрямую у Менеджера лицензий (HASP License Manager), экономя слоты для пользователей, открывающих несколько баз на одном компьютере.

2. Настройка файла nethasp.ini на клиентских машинах

По умолчанию платформа 1С пытается обнаружить ключ с помощью широковещательных UDP-рассылок (Broadcast) по всей локальной сети. В сегментированных сетях или при наличии сетевых экранов широковещательные пакеты теряются, что приводит к таймаутам. Решим задачу путем точной адресации в конфигурационном файле nethasp.ini.

Файл располагается в каталоге установки платформы (например, C:\Program Files\1cv82\conf\ или C:\Program Files (x86)\1cv8\conf\). Отредактируем параметры подключения:


[NH_COMMON]
NH_IPX = Disabled
NH_NETBIOS = Disabled
NH_TCPIP = Enabled

[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.10, 192.168.1.11
NH_USE_BROADCAST = Disabled
NH_TCPIP_METHOD = TCP
NH_SESSION = 5
NH_SEND_METHOD = UDP

Разберем назначение ключевых параметров:

  1. Параметры NH_IPX = Disabled и NH_NETBIOS = Disabled отключают поиск по устаревшим протоколам, исключая лишние задержки.
  2. Параметр NH_SERVER_ADDR содержит точные IP-адреса серверов, на которых физически установлены ключи защиты и запущена служба HASP Loader.
  3. NH_USE_BROADCAST = Disabled запрещает широковещательный поиск и отправляет запросы строго по указанным адресам.

3. Правила размещения нескольких аппаратных ключей защиты

Если в сети используется несколько сетевых ключей защиты HASP, необходимо учитывать аппаратные ограничения:

  1. Один физический компьютер — один ключ одного номинала: Менеджер лицензий (HASP LM) на одном сервере не может одновременно обслуживать два ключа одинаковой серии (например, два ключа по 5 или по 10 пользователей). Из двух одинаковых ключей система увидит только один.
  2. Разнесение по машинам: Ключи одинакового номинала должны быть установлены на физически разные компьютеры сети, и на каждом из них должна быть запущена отдельная служба HASP License Manager.
  3. Сетевые порты: На серверах с ключами убедимся, что сетевой экран не блокирует порт 475 по протоколам TCP и UDP.

4. Принудительный поиск аппаратной лицензии клиентом

Когда на клиентских ПК настроен гибридный режим или в системе присутствуют поврежденные файлы программных лицензий (*.lic), платформа может прерывать поиск до обращения к сетевому ключу. Настроим явное использование аппаратной защиты.

В конфигурационном файле 1CEStart.cfg (расположенном в %APPDATA%\1C\1CEStart\) пропишем параметр:

UseHWLicenses=1

Также в диалоговом окне запуска 1С можно нажать кнопку Настройка и установить флаг Использовать аппаратную лицензию (ключ защиты).

5. Настройка сервера лицензий (nhsrv.ini) и перезапуск службы

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


[NHS_IPX]
NHS_ENABLE = Disabled

[NHS_NETBIOS]
NHS_ENABLE = Disabled

[NHS_TCPIP]
NHS_ENABLE = Enabled
NHS_HIGHPRIORITY = 1

В качестве временной меры при зависании неактивных сессий в пуле ключа настроим периодический перезапуск службы через командную строку Windows:


net stop "HASP Loader"
net start "HASP Loader"

6. Аппаратные факторы и управление питанием

Проанализируем аппаратную часть хоста, на котором установлен USB-ключ:

  1. В диспетчере устройств и схеме электропитания Windows отключим Параметр временного отключения USB-порта (USB Selective Suspend), чтобы операционная система не отключала питание ключа при простое.
  2. При использовании портов USB 3.0 переключим ключ HASP в порт USB 2.0, так как некоторые старые ревизии ключей теряют связь при работе с современными xHCI-контроллерами.
  3. Убедимся, что на компьютерах с ключами установлена актуальная версия драйвера HASP с сайта производителя Aladdin/SafeNet/Thales.
← На главную