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

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

Как 1С раздаёт лицензии: механизмы, ключи и настройка

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

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

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

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

Клиентская лицензия — основной тип лицензии, которая расходуется на каждый запущенный сеанс. Лицензии продаются поштучно и пакетами (на 5, 10, 20, 50, 100 и более пользователей), причём пакеты разного номинала комбинируются: платформа суммирует доступные лицензии из всех найденных источников. Однопользовательская лицензия из коробки с типовой конфигурацией — это тоже клиентская лицензия, просто на один сеанс.

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

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

Программные лицензии: активация и привязка к компьютеру

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

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

Главное ограничение механизма — чувствительность к смене оборудования. Замена сетевой карты, диска или материнской платы может сделать лицензию недействительной, и тогда потребуется повторная активация резервным пин-кодом. Когда резервные пин-коды заканчиваются, приходится обращаться в центр лицензирования за новым комплектом.

Аппаратные ключи HASP и менеджер лицензий

Аппаратная защита построена на USB-ключах HASP. Однопользовательский ключ (обычно фиолетового цвета, серия ORGL8) вставляется в компьютер, где работает пользователь. Сетевые ключи (красные, серия ENSR8) устанавливаются на любой компьютер в локальной сети и раздают лицензии нескольким машинам одновременно — число лицензий зашито в самом ключе.

Раздачей занимается программа HASP License Manager (менеджер лицензий), которая устанавливается на компьютере с сетевым ключом и слушает сеть по протоколу UDP, порт 475. Клиентская платформа при запуске ищет менеджер лицензий широковещательным запросом или по адресам, указанным в конфигурационном файле nethasp.ini. Если поиск ограничен широковещанием, клиенты за пределами локального сегмента сети менеджер не увидят — поэтому в распределённых сетях адрес сервера ключей прописывают явно.

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

Настройка раздачи по сети через HASP
  1. 1
    Установите драйвер ключа HASP и менеджер лицензий на выделенном компьютере, затем подключите сетевой ключ.
  2. 2
    Проверьте, что менеджер лицензий запущен как служба и видит ключ (через утилиту мониторинга Aladdin Monitor или аналог).
  3. 3
    Откройте на сервере ключей UDP-порт 475 в брандмауэре.
  4. 4
    На клиентских машинах укажите адрес сервера в файле nethasp.ini (параметры NH_SERVER_ADDR и NH_USE_BROADCAST = disabled).
  5. 5
    Запустите 1С у клиента и убедитесь, что сеанс стартовал без сообщения о лицензии.

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

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

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

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

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

Как выбрать способ раздачи

Файловые базы, до нескольких десятков пользователей в одной локальной сетиСетевой ключ HASP с менеджером лицензий на выделенной машине
Клиент-серверный режим, все базы на одном кластереАктивируйте программные лицензии на сервере и включите выдачу лицензий сервером
Один-два пользователя на отдельных компьютерахЛокальная программная лицензия или локальный USB-ключ на каждом рабочем месте
Пользователи подключаются через терминальный серверМногопользовательская программная лицензия, активированная на самом терминальном сервере

Как платформа считает занятые лицензии

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

Лицензия освобождается при завершении сеанса. Если сеанс завис или был разорван некорректно, лицензия может оставаться занятой, пока не истечёт тайм-аут сеанса на сервере или в кластере. Это типичная причина ситуации «лицензии есть, но система пишет, что свободных нет»: помогает просмотр списка активных сеансов в консоли кластера и принудительное завершение «мёртвых» сеансов.

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

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

Как проверить результат

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

Сеанс открывается без сообщения о лицензии

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

Ошибка «Не найдена лицензия» или «Не найдено свободной лицензии»

Мониторинг HASP
Норма

Ключ виден, счётчик занятых лицензий растёт при входе пользователей

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

Ключ не отображается или счётчик не меняется

Консоль кластера 1С
Норма

Число сеансов соответствует числу занятых лицензий

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

Висят завершённые аварийно сеансы, удерживающие лицензии

Журнал событий
Норма

Нет ошибок обращения к менеджеру лицензий

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

Ошибки доступа по сети к порту 475 или к серверу лицензирования

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

Самая распространённая проблема — клиент не находит сетевой ключ из-за закрытого порта 475 или отсутствия настройки nethasp.ini в сети с маршрутизацией. Вторая по частоте — «съедание» лицензий зависшими сеансами в клиент-серверном режиме. Третья — повреждение программной лицензии после обновления Windows, замены оборудования или переноса системы на другой диск.

Отдельный класс ошибок связан с виртуализацией. Программная лицензия, активированная на виртуальной машине, может стать недействительной при миграции ВМ на другой хост, так как меняются параметры оборудования. Аппаратный ключ на сервере виртуализации требует проброса USB внутрь виртуальной машины, что не всегда стабильно; надёжнее выносить ключ на физическое устройство или использовать USB-over-IP-решения.

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

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

Проверка, восстановление и перенос лицензий

Для диагностики используйте встроенные средства: список сеансов в консоли кластера показывает занятые сервером лицензии, утилита мониторинга HASP — распределение лицензий сетевого ключа, а диалог «О программе» в клиенте — источник, откуда была получена лицензия для текущего сеанса. Этого достаточно, чтобы понять, какой механизм раздачи реально работает и где происходит сбой.

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

Перед плановыми работами — обновлением платформы, миграцией сервера, заменой железа — зафиксируйте текущее состояние: какие лицензии где активированы, где лежат файлы.lic, какие ключи в каких серверах стоят. Такой реестр лицензий экономит часы при аварийном восстановлении.

В небольших сетях надёжнее всего показывает себя связка «сетевой ключ HASP на отдельном всегда включённом компьютере + явно прописанный nethasp.ini на клиентах». Такая схема переживает переустановки клиентских систем и смену компьютеров без каких-либо действий с лицензиями.
ПЗ
Практическое замечание

Часто задаваемые вопросы

Почему 1С пишет «Не найдена лицензия», хотя ключ вставлен?

Чаще всего не установлен или не запущен драйвер ключа HASP, либо ключ вставлен в другой компьютер, а клиент не настроен на поиск по сети. Проверьте драйвер, службу менеджера лицензий, доступность UDP-порта 475 и настройки nethasp.ini на клиенте.

Сколько сеансов может работать по одной клиентской лицензии?

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

Можно ли совмещать программные и аппаратные лицензии?

Да, платформа суммирует лицензии из разных источников: например, сетевой ключ на 10 лицензий и программная лицензия на 5 дадут в сумме 15 доступных сеансов. Это удобно при постепенном наращивании парка лицензий.

Что делать, если программная лицензия слетела после обновления Windows?

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

Нужна ли отдельная лицензия для веб-сервера при публикации базы?

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

Почему в консоли кластера лицензий занято больше, чем реальных пользователей?

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

Итог

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

1С раздаёт лицензии через локальные программные активации, сетевые ключи HASP с менеджером лицензий и через сервер 1С в клиент-серверном режиме. Одна лицензия — один сеанс; зависшие сеансы удерживают лицензии. Храните пин-коды, настраивайте nethasp.ini явно и контролируйте занятость лицензий через консоль кластера и мониторинг ключей.