К статье
Практический материал

Администрирование · 13 мин

Как раздаются программные лицензии 1С по сети

Как работает сетевая раздача лицензий 1С: аппаратные и программные ключи, сервер лицензий HASP, настройка nethasp.ini, типичные ошибки и проверка результата.

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

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

Ниже разобраны оба механизма раздачи, настройка сервера лицензий, типовые ошибки и способы проверить, что раздача работает корректно.

Какие виды лицензий 1С существуют и чем они различаются

1С использует два принципиально разных типа защиты. Аппаратные ключи (HASP-ключи, USB) содержат лицензии «внутри себя» и делятся на локальные (однопользовательские, работают только на компьютере, куда вставлен ключ) и сетевые (ORGL8 на 5, 10, 20, 50, 100 и более пользователей), которые раздаются по сети специальной службой. Программные лицензии — это файлы с расширением .lic, привязанные к аппаратным параметрам конкретного компьютера или сервера.

Локальные программные лицензии активируются на рабочем месте пользователя и не требуют сети. Сетевые программные лицензии (многопользовательские) активируются на сервере и раздаются клиентам либо сервером 1С:Предприятия, либо отдельной службой программных лицензий. При смене существенных аппаратных параметров компьютера (материнская плата, процессор, диск, сетевая карта) программная лицензия может стать недействительной — это её главное отличие от аппаратного ключа.

Сравнение вариантов раздачи

Аппаратный сетевой ключ + HASP LM

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

Программные лицензии через сервер 1С

Удобно для клиент-серверного режима: раздачу выполняет сам сервер 1С, отдельный HASP не нужен. Ограничение — привязка к железу сервера, при его замене лицензии нужно перевыпускать.

Локальные лицензии на каждом ПК

Просто для 1–3 рабочих мест, но не масштабируется: лицензию нельзя передать другому сотруднику без переактивации.

Как работает раздача через аппаратный сетевой ключ

Сетевой USB-ключ вставляется в любой компьютер в локальной сети — это может быть выделенный сервер или даже одна из рабочих станций. На этот компьютер устанавливается менеджер лицензий HASP License Manager (служба hasplm), который «слушает» сеть и выдаёт лицензии клиентам по запросу. Один менеджер лицензий может обслуживать несколько ключей одновременно.

Клиентская часть при запуске 1С ищет менеджер лицензий широковещательным запросом по протоколу UDP (порт 475). Если менеджер найден и в нём есть свободная лицензия, сеанс запускается. Широковещательный поиск работает только в пределах одного сегмента сети: если клиент и сервер лицензий разделены маршрутизатором, автопоиск не сработает, и нужен файл настройки nethasp.ini.

Важное ограничение: один сетевой ключ платформы (серия ORGL8) и ключи других серий нельзя вставлять в один компьютер без дополнительных настроек — менеджер лицензий может «видеть» только один ключ одной серии. Также два менеджера лицензий с одинаковыми именами в одной сети создают конфликты и непредсказуемую выдачу лицензий.

Настройка nethasp.ini: когда и как указывать сервер лицензий вручную

Файл nethasp.ini управляет тем, как клиент ищет менеджер лицензий. Он нужен, когда автопоиск не работает: клиент и сервер в разных подсетях, в сети несколько менеджеров лицензий и нужно указать конкретный, либо широковещательный трафик блокируется файрволом. Файл размещается в каталоге conf установленной платформы 1С (например, в каталоге вида C:\Program Files\1cv8\<версия>\bin\conf) либо в каталоге, указанном в документации для вашей версии.

Минимальная рабочая конфигурация указывает протокол TCP и адрес сервера лицензий. Это убирает зависимость от широковещательных запросов и ускоряет запуск, потому что клиент не тратит время на поиск по сети.

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

[NH_TCPIP]
NH_SERVER_ADDR = 192.168.0.10
NH_TCPIP_METHOD = TCP
NH_USE_BROADCAST = Disabled

После правки файла перезапустите сеанс 1С. Если адрес указан верно и порт 475 на сервере открыт, клиент подключится напрямую. Проверить доступность порта можно командой telnet 192.168.0.10 475 или через Test-NetConnection в PowerShell.

Настройка раздачи через HASP License Manager
  1. 1
    Установите драйвер HASP и HASP License Manager на выделенный сервер, вставьте сетевой ключ
  2. 2
    Убедитесь, что служба HASP Loader запущена, а порт 475 (UDP и TCP) открыт в файрволе
  3. 3
    Проверьте в веб-интерфейсе Admin Control Center (localhost:1947), что ключ виден и показывает нужное число лицензий
  4. 4
    На клиентах при необходимости создайте nethasp.ini с адресом сервера в разделе [NH_TCPIP]
  5. 5
    Запустите 1С на клиенте и убедитесь, что сеанс стартовал без ошибки поиска лицензии
  6. 6
    В Admin Control Center проверьте, что лицензия занята запущенным сеансом

Раздача программных лицензий через сервер 1С:Предприятия

В клиент-серверном режиме раздачу лицензий может выполнять сам сервер 1С, и это рекомендуемый вариант для такой архитектуры. Многопользовательская программная лицензия активируется на сервере 1С (через диалог получения лицензии при запуске конфигуратора или утилиту ring / механизм активации), после чего сервер автоматически выдаёт её клиентским сеансам. Отдельный HASP License Manager в этой схеме не нужен.

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

Для файлового режима без сервера 1С программные многопользовательские лицензии раздаются через службу программных лицензий 1С (1C:Enterprise licensing server), которую можно развернуть на отдельной машине. Это менее распространённый сценарий, но он позволяет обойтись без аппаратных ключей в файловой архитектуре.

Как клиент ищет лицензию: порядок опроса источников

Понимание порядка поиска объясняет большинство загадочных ошибок. При запуске клиент 1С последовательно опрашивает источники лицензий: локальный аппаратный ключ на данном ПК, локальные программные лицензии, сервер 1С (если база клиент-серверная), затем сетевой поиск HASP — по параметрам nethasp.ini или широковещательным запросом. Первый найденный подходящий источник с свободной лицензией и будет использован.

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

Ошибка «Не найдена лицензия» у всех клиентов сразуПроблема на стороне сервера лицензий

Запущена ли служба HASP LM или сервер 1С, виден ли ключ в Admin Control Center, не истёк ли срок программной лицензии

Ошибка только у части клиентовЛибо исчерпаны лицензии, либо сетевая доступность

Число активных сеансов против числа лицензий; доступность порта 475 с проблемных ПК

Медленный запуск 1С по сетиКлиент долго ищет лицензию широковещательным запросом

Настроен ли nethasp.ini с прямым адресом сервера

Лицензии есть, но не раздаютсяКонфликт ключей или служб

Нет ли двух ключей одной серии или двух менеджеров лицензий с одинаковым именем

Проверка результата и мониторинг занятых лицензий

Для HASP-ключей основной инструмент контроля — Admin Control Center, веб-интерфейс, доступный по адресу http://localhost:1947 на машине с менеджером лицензий (или по сети, если доступ разрешён). В разделе ключей видно, сколько лицензий содержит ключ, а в разделе сессий — какие компьютеры и пользователи их заняли. Это первое место, куда стоит смотреть при жалобах на нехватку лицензий.

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

Контрольные точки

Как проверить, что раздача работает

Видимость ключа
Норма

Ключ отображается в Admin Control Center с корректным числом лицензий

Тревожный признак

Ключ не виден, виден с нулём лицензий или отображается не тот ключ

Запуск клиента
Норма

Сеанс стартует быстро, в ACC появляется запись о занятой лицензии

Тревожный признак

Долгое ожидание при запуске, затем ошибка поиска лицензии

Освобождение лицензии
Норма

После закрытия сеанса лицензия освобождается в течение короткого времени

Тревожный признак

Лицензии «зависают» занятыми после закрытия 1С — признак аварийно завершённых сеансов или проблем с сетью

Доступность порта
Норма

Test-NetConnection к серверу по порту 475 возвращает успех

Тревожный признак

Порт закрыт — клиенты вне сегмента не получат лицензии

Типичные ошибки и ограничения схемы

Типичные ошибки
01
Установка менеджера лицензий на компьютер, который выключается на ночь или уходит в перезагрузку: все пользователи теряют доступ к лицензиям до включения машины
02
Два сетевых ключа одной серии в одном сервере: виден только один, лицензии второго недоступны
03
Одинаковые имена у нескольких менеджеров лицензий в сети: клиенты подключаются к случайному, учёт лицензий становится непредсказуемым
04
Отсутствие nethasp.ini при клиентах в другой подсети: широковещательный запрос не проходит через маршрутизатор, лицензия «не находится»
05
Покупка лицензий без учёта множественных сеансов: сотрудник с тремя открытыми базами занимает три лицензии
06
Активация программной лицензии на виртуальной машине без фиксации её конфигурации: изменение виртуального железа делает лицензию недействительной

Отдельно стоит сказать об ограничениях безопасности. Сервер лицензий — критичная точка инфраструктуры: его отказ останавливает работу всех пользователей 1С. Разумный минимум — размещение службы на стабильном сервере с бесперебойным питанием, ограничение доступа к Admin Control Center паролем и документирование схемы: какие ключи где стоят, какие пин-коды программных лицензий использованы и где хранятся резервные.

Маршрут решения

Как выбрать действие

Клиенты и сервер лицензий в одной подсети, всё работаетОставьте автопоиск, но зафиксируйте схему в документации
Клиенты в другой подсети или через VPNНастройте nethasp.ini с прямым адресом сервера и откройте порт 475 TCP/UDP
Используется клиент-серверный режимАктивируйте программные лицензии на сервере 1С и раздавайте через него, без HASP
Лицензии периодически заканчиваютсяПроверьте число сеансов на пользователя и настройте автозавершение простаивающих сеансов, прежде чем докупать лицензии
Итог

Что важно запомнить

Сетевые лицензии 1С раздаются либо менеджером HASP с аппаратным ключом, либо сервером 1С с программными лицензиями. Одна лицензия — один сеанс. Для стабильной работы укажите сервер явно через nethasp.ini, следите за занятыми лицензиями в Admin Control Center и не допускайте конфликтов ключей и служб.

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

Можно ли использовать один сетевой ключ для разных версий платформы 1С?

Да. Сетевой ключ не привязан к конкретной версии платформы: лицензию могут занимать сеансы разных версий 1С:Предприятия 8. Важно лишь, чтобы на каждом клиенте был установлен актуальный драйвер HASP, а версия менеджера лицензий была не старше используемых платформ.

Почему 1С долго запускается, хотя лицензия в итоге находится?

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

Что произойдёт с лицензиями при замене сервера?

Аппаратный ключ достаточно переставить в новый сервер и установить там менеджер лицензий — лицензии сохранятся. Программные лицензии привязаны к старому железу и на новом сервере работать не будут: их нужно активировать заново по резервным пин-кодам из комплекта поставки.

Можно ли раздавать лицензии через интернет или VPN?

Технически да, если указать адрес сервера в nethasp.ini и обеспечить прохождение трафика по порту 475. Однако при обрыве соединения сеанс 1С теряет лицензию и завершается, поэтому для нестабильных каналов такая схема рискованна. Для удалённых пользователей надёжнее терминальный доступ или веб-клиент, где лицензия расходуется на стороне сервера.

Как узнать, кто занял все лицензии?

Для HASP-ключей откройте Admin Control Center на сервере лицензий и посмотрите раздел сессий: там указаны компьютеры и время занятия каждой лицензии. Для сервера 1С список активных сеансов с пользователями доступен в консоли кластера. Частый источник проблемы — незакрытые сеансы на компьютерах, которые ушли в спящий режим.

Нужен ли отдельный ключ для сервера 1С?

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