Ключ HASP для 1С 8.3: от USB-разъёма до сетевой лицензии

· 9 мин

Содержание

Защита 1С HASP работает так: платформа при запуске ищет аппаратный ключ — сначала локально через драйвер Sentinel, затем по сети через HASP License Manager. Нашла ключ со свободной лицензией — сеанс открывается, не нашла — появляется Не обнаружен ключ защиты программы. Чтобы всё работало, нужны три вещи: правильный тип ключа, установленный драйвер и, для сетевых ключей, менеджер лицензий с открытым портом 475.

Механизм общий для платформы 8.3 и не зависит от конфигурации: Бухгалтерия, ЗУП и УТ лицензируются одинаково. Разница только в том, где стоит ключ и как клиенты до него добираются — локально, через сеть или через сервер 1С.

Как устроена аппаратная защита 1С и какие бывают ключи HASP

Ключ HASP — это USB-устройство с прошитой лицензией. Сам по себе он ничего не делает: его читает драйвер, а платформа спрашивает драйвер или менеджер лицензий, есть ли свободное место.

Ключи делятся по двум признакам: кого лицензируют (клиента или сервер 1С) и сколько мест дают.

Тип ключаМаркировкаЧто лицензируетКак раздаёт лицензии
Однопользовательский клиентскийORGL81 рабочее местоТолько локально, через драйвер
Многопользовательский клиентскийNET5, NET10, NET20, NET50 и т.д.5, 10, 20, 50… одновременных сеансовПо сети через License Manager или с сервера 1С
СерверныйENSR8 / EN8SAСервер 1С:ПредприятияЛокально на компьютере с сервером

Что из этого следует на практике:

  • 🔌 Однопользовательский ключ всегда вставляют в тот компьютер, где запускают 1С. По сети его не раздать.
  • 🌐 Сетевой ключ можно воткнуть в любой компьютер сети — главное, чтобы там работал License Manager, а клиенты его видели.
  • 🖥️ Серверный ключ нужен только для клиент-серверного варианта. Клиентских лицензий он не даёт: пользователям всё равно нужен NET-ключ или программные лицензии.
  • 🔢 Числа в маркировке NET-ключа — это одновременные сеансы, а не именные пользователи. Одиннадцатый пользователь на NET10 не войдёт, пока кто-то не закроет 1С.

32-битный и 64-битный серверные ключи различаются. Ключ для 64-битного сервера подходит и 32-битному, наоборот — нет. Перед переходом на 64-битный сервер 1С проверьте, какой ключ у вас в наличии.

Порядок поиска лицензии

Платформа перебирает источники по очереди:

  1. Программная лицензия, активированная на этом компьютере.
  2. Локальный ключ HASP, подключённый к USB.
  3. Сетевой ключ через License Manager (по адресам из nhsrv.ini или широковещательным запросом).
  4. В клиент-серверном варианте — лицензия, которую выдаёт сервер 1С из ключа или файлов лицензий на своей стороне.

Отсюда частый эффект: на одном компьютере лицензия берётся из программного файла, на соседнем — из сетевого ключа. Пока мест хватает, этого никто не замечает.

Установка и обновление драйвера ключа защиты

Без драйвера Windows видит ключ как неизвестное USB-устройство, а платформа не видит его вовсе. Драйвер нужен на компьютере, куда физически вставлен ключ. Клиентам, которые берут лицензию по сети, драйвер не нужен.

Способ 1. Из установщика платформы

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

Этот способ ставит драйвер из дистрибутива платформы. Для свежих версий Windows он бывает устаревшим — тогда переходите ко второму способу.

Способ 2. Отдельный пакет Sentinel Runtime

Актуальный драйвер распространяется как Sentinel HASP/LDK Run-time Environment. Есть графический установщик и консольный haspdinst.exe.

:: запуск из командной строки от имени администратора
haspdinst.exe -i

Ключ -i ставит драйвер, -r удаляет его. Полный список параметров выводит haspdinst.exe -help.

Порядок обновления «начисто»:

  1. Закройте 1С на этом компьютере и выньте ключ.
  2. Удалите старый драйвер: haspdinst.exe -r.
  3. Перезагрузите компьютер.
  4. Установите новый: haspdinst.exe -i.
  5. Вставьте ключ и дождитесь, пока в диспетчере устройств он определится без жёлтого значка.

Проверить драйвер можно без 1С: откройте в браузере http://localhost:1947. Это Admin Control Center — веб-консоль из комплекта драйвера. В разделе ключей (Sentinel Keys) должен быть виден ваш ключ.

Не вынимайте ключ, пока в базе работают пользователи — сеансы, которые держат лицензию от этого ключа, получат ошибку защиты и могут потерять несохранённые данные.

Настройка сервера лицензирования: HASP License Manager и nhsrv.ini

Сетевой ключ раздаёт лицензии через HASP License Manager — службу hasplms. Её ставят на компьютер с ключом, лучше всего на сервер, который не выключают на ночь.

Установка License Manager

  1. Установите драйвер ключа (раздел выше).
  2. Установите HASP License Manager. В установщике выберите вариант службы Windows (Service), а не приложения — тогда менеджер стартует без входа пользователя.
  3. Убедитесь, что служба запущена: services.msc, ищите службу с HASP Loader в названии.
  4. Откройте в брандмауэре порт 475 для UDP и TCP — входящие подключения.
netsh advfirewall firewall add rule name="HASP LM UDP 475" dir=in action=allow protocol=UDP localport=475
netsh advfirewall firewall add rule name="HASP LM TCP 475" dir=in action=allow protocol=TCP localport=475

Указание адреса сервера на клиентах

По умолчанию клиент ищет License Manager широковещательным запросом. В одной подсети это работает, через VPN, маршрутизатор или VLAN — нет. Тогда адрес прописывают явно в файле nhsrv.ini.

Файл лежит в каталоге conf платформы: обычно C:\Program Files\1cv8\conf\nhsrv.ini. Если его нет — создайте текстовый файл с таким содержимым:

[NH_COMMON]
NH_TCPIP = Enabled

[NH_TCPIP]
NH_SERVER_ADDR = 192.168.10.5
NH_USE_BROADCAST = Disabled

Здесь 192.168.10.5 — адрес компьютера с ключом. Несколько менеджеров перечисляют через запятую. Отключение широковещания ускоряет запуск: клиент сразу идёт по адресу и не ждёт ответов со всей сети.

Если на компьютере стоят несколько версий платформы и одна из них игнорирует общий nhsrv.ini, положите копию в каталог конкретной версии: ...\1cv8\8.3.xx.xxxx\bin\conf\.

Ключ на сервере 1С

В клиент-серверном варианте есть второй путь: вставить NET-ключ в сервер 1С. Тогда лицензии пользователям выдаёт сам сервер, и nhsrv.ini на клиентах не нужен.

Чтобы сервер раздавал клиентские лицензии, в консоли кластера у рабочего сервера должны быть разрешены требования назначения функциональности для объекта «Клиентская лицензия». По умолчанию они разрешены; проблема появляется, если их кто-то менял.

Диагностика ошибок защиты HASP

Начинайте с текста сообщения и того, у кого оно появилось: у всех или у одного пользователя.

Диагностика: выберите симптом

Чем смотреть, кто занял лицензии

  • 👀 Aladdin Monitor — утилита из комплекта License Manager. Показывает менеджеры в сети, ключи и адреса подключённых клиентов.
  • 🧾 Консоль администрирования серверов 1С — в списке сеансов информационной базы видно, кто подключён; из консоли можно завершить сеанс.
  • 🛠️ Утилита rac — rac session list --licenses выводит лицензии, занятые сеансами, если нужен список для скрипта.

Завершение сеанса из консоли обрывает работу пользователя без сохранения. Сначала предупредите человека или делайте это вне рабочего времени.

Технологический журнал

Если причина не находится, включите технологический журнал с событием LIC — в нём платформа пишет операции с лицензиями. Фрагмент logcfg.xml:

<config xmlns="http://v8.1c.ru/v8/tech-log">
  <log location="C:\1c_techlog" history="24">
    <event>
      <eq property="name" value="LIC"/>
    </event>
    <property name="all"/>
  </log>
</config>

Файл кладут в каталог conf платформы. Журнал быстро растёт, поэтому включайте его на время диагностики и затем удаляйте logcfg.xml.

Ключ HASP в виртуальной машине и на терминальном сервере

Виртуализация

USB-ключ привязан к физическому порту, а виртуальная машина этого порта не видит. Варианты решения:

СпособКогда подходитРиски
Проброс USB в гипервизореVMware ESXi, Proxmox, VirtualBox — там есть проброс USB-устройства в ВМКлюч отваливается при миграции ВМ на другой хост
License Manager на физическом хостеСетевой NET-ключ, хост работает на WindowsНе подходит для ORGL8 и серверного ключа
USB over IP (аппаратный хаб или ПО)Hyper-V, облако, кластер из нескольких хостовДополнительная точка отказа, нужна стабильная сеть
Программные лицензииНовые внедрения, частые переезды ВМЛицензия слетает при сильной смене «железа» ВМ

В Hyper-V штатного проброса USB-устройств в ВМ нет, поэтому там обычно используют USB-хаб с доступом по сети или выносят License Manager на отдельную физическую машину.

Терминальный сервер (RDP)

Для работы через удалённый рабочий стол берут многопользовательский ключ. Каждый открытый сеанс 1С в терминале занимает одно место на ключе — так же, как отдельный компьютер.

  • 📌 Ключ вставляют прямо в терминальный сервер или в другой компьютер с License Manager.
  • 📌 Один пользователь, открывший две копии 1С, может занять два места. Следите за этим, когда лицензий впритык.
  • 📌 Пробрасывать ключ с ноутбука пользователя в RDP-сессию — ненадёжная схема: сессия закрылась, лицензия пропала.

Профилактика и обслуживание защиты 1С

Ключ HASP выходит из строя редко, но вся организация встаёт, если с ним что-то случилось. Несколько привычек снимают большинство рисков:

Обслуживание ключа HASP
Выполнено: 0 / 7

Отдельно про сохранность. Документы на лицензию — это доказательство, что вы законно владеете программой. Потерянный или сломанный ключ восстанавливают через партнёра 1С по этим документам. Без них восстановление сильно усложняется.

Если ключ сломался, а работать нужно сегодня, обсудите с партнёром временную программную лицензию — это законный путь, пока идёт замена.

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

Частые вопросы о ключах HASP

Можно ли использовать вместе ключ HASP и программные лицензии?
Да. Платформа суммирует доступные места: например, NET10 плюс программная лицензия на 5 мест дают 15 одновременных сеансов.
Нужен ли драйвер HASP на каждом компьютере?
Нет. Драйвер ставят только туда, куда вставлен ключ. Клиенты, которые берут лицензию по сети, обходятся без него.
Что будет, если вынуть сетевой ключ во время работы?
Пользователи, которые держат лицензию от этого ключа, получат ошибку защиты. Платформа периодически проверяет наличие лицензии, поэтому сбой проявится не мгновенно, но обязательно.
Можно ли подключить два сетевых ключа к одному License Manager?
Ключи разных серий — да, места суммируются. Два ключа одной серии на одном компьютере работают некорректно: виден только один. Такие ключи разносят по разным компьютерам с отдельными License Manager и оба адреса прописывают в nhsrv.ini.
Подходит ли ключ от 1С 8.2 к платформе 8.3?
Клиентские ключи восьмой версии работают и с 8.3. Серверный ключ проверьте на разрядность: для 64-битного сервера нужен 64-битный ключ.