Сервер лицензий 1С: сетевые ключи HASP, пин-коды и выдача лицензий клиентам

· 10 мин

Содержание

Раздача лицензий 1С по сети настраивается одним из двух способов. Аппаратный сетевой ключ HASP вставляют в один компьютер, ставят на него службу HASP License Manager и прописывают адрес этого компьютера в nethasp.ini на клиентах. Программные лицензии (пин-коды) активируют на сервере 1С:Предприятия — тогда сервер сам выдаёт их пользователям, которые подключаются к клиент-серверной базе.

Отдельного «сервера лицензий 1С» как программы нет. Роль сервера лицензий играет либо компьютер с менеджером HASP, либо кластер 1С. От того, какие у вас лицензии и в каком режиме работают базы, зависит вся дальнейшая настройка. Всё описанное относится к платформе 8.3 и не зависит от конфигурации: БП, ЗУП и УТ лицензируются одинаково.

С чего начать: какие лицензии у вас есть и кто их будет раздавать

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

Вид лицензииНосительКто раздаёт по сети
Клиентская, аппаратнаяUSB-ключ HASP (однопользовательский или сетевой NET)Служба HASP License Manager
Клиентская, программнаяФайл лицензии, полученный по пин-кодуСервер 1С:Предприятия
Серверная, аппаратнаяUSB-ключ сервераСам сервер 1С, ключ в его машине
Серверная, программнаяФайл лицензии по пин-кодуСам сервер 1С

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

Что проверить до начала настройки:

  • 🔑 Сколько ключей и какого типа. Сетевой ключ на корпусе или в документах помечен количеством мест (NET5, NET10, NET20 и т. д.).
  • 📄 Есть ли конверт с пин-кодами и регистрационная анкета. Без основного и резервных пин-кодов программную лицензию не получить.
  • 🖥 Какой компьютер будет раздавать лицензии. Он должен работать постоянно: выключили его — у всех пропала 1С.
  • 🗄 Режим баз: файловый или клиент-серверный. Программные лицензии раздаются по сети только через сервер 1С. В файловом режиме многопользовательская программная лицензия работает на том компьютере, где активирована (например, на терминальном сервере).

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

Установка менеджера лицензий HASP на сервер Windows

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

Порядок установки:

  1. Вставьте ключ в USB-порт будущего сервера лицензий.
  2. Установите драйвер защиты. Проще всего — запустить установщик платформы 1С и отметить пункт Установить драйвер защиты на последнем шаге. Если платформу на эту машину ставить не нужно, используйте отдельный установщик драйвера Sentinel HASP (haspdinst.exe) из дистрибутива или с сайта производителя.
  3. Убедитесь, что ключ опознан: в диспетчере устройств он виден как устройство Sentinel или HASP, а светодиод на ключе горит ровно.
  4. Установите HASP License Manager (установщик lmsetup.exe). На вопросе о режиме работы выберите Service — как служба Windows. Режим приложения не годится: менеджер будет работать только пока кто-то вошёл в систему.
  5. Проверьте в оснастке services.msc, что служба HASP License Manager запущена и стоит в автоматическом запуске.

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

Для контроля удобно поставить Aladdin Monitor (aksmon). Он показывает, какие менеджеры видны в сети, какие ключи к ним подключены и сколько мест уже занято.

Особенности для виртуальных машин

На виртуальном сервере USB-ключ пробрасывают средствами гипервизора или через USB-over-IP устройство. Драйвер и License Manager ставятся внутрь гостевой системы, как на обычный сервер. Если проброс нестабилен, ключ периодически «пропадает», и пользователи ловят ошибку посреди работы — такую схему лучше заменить физическим компьютером под ключ.

Как настроить раздачу аппаратных ключей HASP клиентам

Без настройки клиент 1С ищет сетевой ключ широковещательным запросом. В маленькой сети с одним сегментом это работает. Если между клиентом и сервером лицензий маршрутизатор, VPN или несколько подсетей, широковещательный запрос не дойдёт, и адрес нужно указать явно.

Делается это в файле nethasp.ini. Он лежит в каталоге conf установленной платформы, например C:\Program Files\1cv8\conf\nethasp.ini. Если файла нет, создайте его. Пример содержимого:

[NH_COMMON]
NH_TCPIP = Enabled

[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.10
NH_USE_BROADCAST = Disabled
NH_TCPIP_METHOD = UDP

Что означают параметры:

  • NH_SERVER_ADDR — IP-адрес компьютера с ключом и License Manager. Можно указать несколько адресов через запятую, если ключи стоят на разных машинах.
  • NH_USE_BROADCAST = Disabled — отключает широковещательный поиск. Клиент сразу идёт по указанному адресу, и запуск 1С ускоряется.
  • NH_TCPIP_METHOD — протокол обращения к менеджеру. По умолчанию UDP; если в сети UDP режется, поставьте TCP.

Файл одинаков для всех клиентов, поэтому его удобно раскатать групповой политикой или скриптом входа. Для 32- и 64-разрядного клиента одной версии каталог conf разный (Program Files и Program Files (x86)): положите файл в оба, если на машинах стоят обе разрядности.

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

Пин-коды: как активировать программные лицензии на сервере 1С

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

Активация

  1. Запустите клиент 1С на сервере (или на машине, которая подключается к серверной базе с указанием, что лицензия должна быть получена на сервере).
  2. При первом запуске без лицензии платформа выдаст ошибку и предложит получить лицензию . Нажмите кнопку получения лицензии.
  3. Выберите вариант с первичной активацией и введите регистрационный номер комплекта и пин-код из конверта.
  4. Заполните анкету владельца. Данные должны совпадать с теми, что вы укажете при повторной активации, — сохраните их в надёжном месте.
  5. Выберите способ получения: через интернет (самый быстрый), по электронной почте или по телефону, если у сервера нет выхода в сеть.
  6. Дождитесь сообщения об успешной активации. Файл лицензии с расширением .lic появится в каталоге лицензий.

Где хранятся файлы лицензий:

СистемаКаталог
WindowsC:\ProgramData\1C\licenses
Linux/var/1C/licenses

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

Включение выдачи лицензий в кластере

После активации на сервере проверьте настройки в консоли администрирования серверов 1С:Предприятия:

  • ✅ В свойствах информационной базы должна быть разрешена выдача лицензий сервером 1С:Предприятия.
  • ✅ Если в кластере несколько рабочих серверов, в свойствах рабочего сервера, где лежит файл лицензии, задайте требование назначения функциональности для объекта «Клиентская лицензия». Иначе запрос лицензии может уйти на сервер, у которого файла нет.
  • ✅ Служба агента сервера 1С должна иметь права на чтение каталога с лицензиями.

Список занятых клиентских лицензий в любой момент можно посмотреть утилитой rac. Команда rac session list --licenses покажет, какому сеансу какая лицензия выдана и откуда она получена — из файла на сервере или с ключа.

Сетевой доступ к серверу лицензий: порты и брандмауэр

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

Что раздаётПортПротоколГде открыть
HASP License Manager475UDP и TCPВходящие на компьютере с ключом
Агент сервера 1С1540TCPВходящие на сервере 1С
Менеджер кластера1541TCPВходящие на сервере 1С
Рабочие процессы1560–1591TCPВходящие на сервере 1С

Клиент 1С сначала обращается к агенту на порт 1540, затем к менеджеру кластера на 1541 и к рабочим процессам. Диапазон портов рабочих процессов задаётся в свойствах рабочего сервера; 1560–1591 — значение по умолчанию. Если вы его меняли, откройте свой диапазон.

Пример правил брандмауэра из командной строки администратора:

netsh advfirewall firewall add rule name="HASP LM UDP" dir=in action=allow protocol=UDP localport=475
netsh advfirewall firewall add rule name="HASP LM TCP" dir=in action=allow protocol=TCP localport=475
netsh advfirewall firewall add rule name="1C Server" dir=in action=allow protocol=TCP localport=1540-1541,1560-1591

Проверить, что порт доступен с клиента, можно в PowerShell:

Test-NetConnection 192.168.1.10 -Port 1541

Для UDP 475 такая проверка не подходит — смотрите в Aladdin Monitor на клиентской машине, видит ли он менеджер лицензий.

Для сервера 1С клиент должен разрешать имя сервера в тот же адрес, по которому сервер сам себя называет. Если сервер зарегистрирован в кластере по имени, а у клиента это имя не резолвится, подключение оборвётся уже после агента. Помогает запись в DNS или в файл hosts на клиенте.

Как совмещать ключи и пин-коды в одной сети

Аппаратные и программные лицензии можно использовать одновременно. Например, старый сетевой ключ на 10 мест и программная лицензия на 5 мест, активированная на сервере 1С, дают в сумме 15 одновременных пользователей клиент-серверной базы.

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

  • 🔸 Если на рабочей станции случайно активирован пин-код, она будет использовать свою лицензию и не займёт место на сервере. Это нормально, но учитывайте при подсчёте.
  • 🔸 Для файловых баз работает только поиск локальной лицензии и ключа HASP, сервер 1С в этой цепочке не участвует.
  • 🔸 Пользователи через RDP на терминальном сервере берут лицензии с той машины, где запущен клиент 1С, то есть с терминального сервера.
Какая у вас схема?

Диагностика: почему клиент не получает лицензию

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

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

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

Если причина не ясна, включите сбор событий лицензирования на сервере 1С. Для этого в каталоге conf платформы на сервере создайте или дополните файл logcfg.xml:

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

Сервер подхватывает файл без перезапуска, в течение примерно минуты. В событиях LIC видно, какие источники лицензий перебирал процесс и на каком этапе получил отказ.

Не оставляйте технологический журнал включённым надолго: он быстро занимает место на диске. После разбора удалите или переименуйте logcfg.xml.

Когда помогает перезапуск службы

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

Частые вопросы

Можно ли подключить два сетевых ключа к одному License Manager?
Да, менеджер обслуживает несколько ключей, вставленных в один компьютер. Места суммируются, клиенты получают их без дополнительных настроек.
Сколько лицензий занимает один пользователь, открывший две базы?
Клиентская лицензия выдаётся на компьютер, поэтому несколько окон 1С на одной рабочей станции обычно расходуют одно место. На терминальном сервере каждый пользователь занимает своё место.
Нужен ли интернет серверу лицензий постоянно?
Нет. Интернет нужен только в момент активации пин-кода, и то её можно провести по телефону или почте. Для раздачи лицензий по локальной сети внешний доступ не требуется.
Можно ли перенести программную лицензию на новый сервер?
Новый сервер требует новой активации. Используйте резервный пин-код из комплекта. Если резервные пин-коды закончились, обратитесь к партнёру, у которого покупали лицензию.
Работает ли HASP License Manager на Linux?
Да, для Linux есть свой вариант менеджера и драйвера. Порт и настройка nethasp.ini на клиентах те же, что и для Windows.