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

· 9 мин

Содержание

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

Выбор простой. Есть синий или зелёный USB-ключ с маркировкой NET — ставите менеджер лицензий и прописываете его адрес в nethasp.ini на клиентах. Купили программные лицензии и работаете в клиент-серверном варианте — активируете их на машине с сервером 1С и включаете выдачу лицензий сервером. Файловая база с программными лицензиями обходится без отдельного сервера: лицензию активируют на каждом рабочем месте или в общем каталоге.

Как устроена защита 1С 8.3

Платформа не запустит базу, пока не найдёт подходящую лицензию. Исключение одно — учебная версия. Лицензия бывает двух видов, и они устроены по-разному.

  • 🔑 Аппаратная — USB-ключ HASP. Количество мест «зашито» в ключ. Ключ можно переставить на другой компьютер без обращения куда-либо.
  • 📄 Программная — файл с расширением .lic, который получают активацией по пин-коду. Файл привязан к параметрам компьютера: процессору, дискам, сетевым картам, имени машины.

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

Что защищаетсяАппаратный вариантПрограммный вариантКто раздаёт по сети
Одно рабочее местолокальный ключ на 1 пользователялицензия на 1 местоникто, только локально
Несколько местсетевой ключ на 5, 10, 20… местмногопользовательская лицензияHASP LM / сервер 1С
Сервер 1С:Предприятиясерверный ключсерверная лицензияне раздаётся, нужна самому серверу

Программные лицензии на Windows лежат в C:\ProgramData\1C\licenses, на Linux — в /var/1C/licenses. Скопировать файл на другой компьютер и запустить там не получится: при несовпадении параметров машины лицензия перестаёт работать.

Что делает сервер лицензирования в сети

Задача у любого из механизмов одна — вести учёт занятых мест. Подробнее, что происходит при запуске клиента:

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

Отсюда главная польза: 20 бухгалтеров в три смены могут обходиться ключом на 10 мест, если одновременно работают не больше десяти. Лицензии покупаются под пиковую нагрузку, а не под штатное расписание.

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

HASP-ключи и программные лицензии: что выбрать

Оба варианта законны и равноценны по функциям. Разница в эксплуатации.

КритерийСетевой HASP-ключПрограммная лицензия
Перенос на другой серверпереставить ключповторная активация, число повторных ограничено резервными пин-кодами
Работа в виртуальной машиненужен проброс USB или USB-over-IPработает, но при изменении параметров ВМ слетает
Риск потериключ могут вынуть, сломать, потерятьфайл можно сохранить в резервную копию
Замена оборудованияне влияеттребует повторной активации
Нужен ли отдельный сервисда, HASP License Managerнет, лицензии выдаёт сервер 1С

Сетевой ключ и программная лицензия не суммируются в одном «пуле». Если у вас ключ на 10 мест и программная лицензия на 5, это два независимых источника: платформа берёт место из первого найденного.

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

Установка и настройка сервиса лицензий

Менеджер лицензий для сетевого HASP-ключа

  1. Выберите компьютер, который включён всегда, когда работают пользователи. Это может быть сервер 1С, файловый сервер или любой надёжный ПК.
  2. Установите драйвер ключа. Он входит в дистрибутив платформы: при установке 1С отметьте пункт установки драйвера защиты. Отдельно драйвер называется Sentinel HASP / LDK Run-time.
  3. Вставьте ключ. После установки драйвера на нём должен загореться светодиод.
  4. Установите HASP License Manager (дистрибутив lmsetup.exe) и выберите вариант установки как службы Windows. Тогда менеджер будет работать без входа пользователя в систему.
  5. Откройте в брандмауэре порт 475 (UDP и TCP) — по нему клиенты обращаются к менеджеру.

Проверить, видит ли драйвер ключ, можно в браузере на этом компьютере: http://localhost:1947. Это панель Sentinel Admin Control Center, в списке ключей должна появиться строка с вашим ключом.

Настройка клиентов через nethasp.ini

По умолчанию клиент ищет менеджер широковещательным запросом. В сети с несколькими подсетями, 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

Вместо 192.168.1.10 подставьте адрес компьютера с менеджером лицензий. Если менеджеров несколько, адреса перечисляют через запятую.

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

  1. Активируйте клиентские и серверную лицензии на компьютере, где работает сервер 1С. Активацию запускают из клиента 1С, открытого на этой машине: при отсутствии лицензии платформа сама предложит получить её, дальше мастер попросит пин-код и данные организации.
  2. Убедитесь, что лицензии легли в каталог лицензий для всех пользователей, а не в профиль текущего пользователя Windows. Сервер 1С работает от имени служебной учётной записи и профиль администратора не видит.
  3. В консоли администрирования серверов откройте свойства информационной базы и проверьте параметр «Выдача лицензий сервером 1С:Предприятия». Он должен разрешать выдачу.
  4. Если в кластере несколько рабочих серверов, а лицензии активированы только на одном, назначьте ему требование функциональности «Клиентская лицензия». Иначе выдача может уйти на сервер, где лицензий нет.

Тот же параметр базы меняется из командной строки утилитой rac (команда infobase update с параметром --license-distribution). Точный синтаксис для вашей версии платформы смотрите в rac help infobase.

Если сервер работает на Linux

Схема та же, меняются только инструменты. Для аппаратного ключа ставят драйвер aksusbd из пакета Sentinel для Linux и менеджер сетевых ключей hasplm. Панель http://localhost:1947 доступна и здесь, проверка ключа выглядит так же, как в Windows.

Программные лицензии на Linux активируют из клиента 1С, запущенного на этой машине. Перенести готовый файл с другого сервера не получится — привязка к оборудованию работает и здесь. Файлы ложатся в /var/1C/licenses. Проверьте права: служебный пользователь, от имени которого работает сервер 1С (обычно usr1cv8), должен иметь доступ к каталогу на чтение.

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

Перед вводом сервера лицензий в работу
Выполнено: 0 / 6

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

Самое частое сообщение — Не найден ключ защиты программы или полученная программная лицензия. Оно значит только одно: платформа не нашла ни одного источника лицензии со свободным местом. Причину ищут по цепочке «клиент → сеть → сервер лицензий».

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

Для проверки сетевого ключа удобна утилита Aladdin Monitor (HASP Monitor). Запустите её на клиентском компьютере: если в списке не появилась машина с менеджером лицензий, проблема в сети, а не в 1С.

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

Учёт сеансов и экономия лицензий

Лицензия расходуется на сеанс, но правила подсчёта зависят от способа подключения.

  • 🖥️ С одного компьютера по аппаратному ключу несколько окон 1С обычно занимают одно место.
  • 🌐 На терминальном сервере каждый пользовательский сеанс Windows считается отдельно: десять человек через RDP — десять мест.
  • 📱 Веб-клиент и мобильный клиент в клиент-серверном варианте получают лицензию от сервера 1С.
  • ⚙️ Фоновые и регламентные задания, а также сеансы самого сервера клиентских лицензий не требуют.

Посмотреть, кто сейчас держит лицензию, можно в консоли администрирования серверов: раскройте кластер, затем Информационные базы → <база> → Сеансы. В списке видно пользователя, компьютер, время начала и время последней активности. Из командной строки то же даёт rac session list --licenses.

Что помогает уложиться в купленные места:

  1. Приучите сотрудников закрывать 1С в конце дня, а не сворачивать окно. Место освобождается только при завершении сеанса, а не при блокировке экрана Windows.
  2. Удаляйте зависшие сеансы. Сеанс, у которого последняя активность была вчера, почти всегда остался от закрытого «крестиком» ноутбука. Завершить его можно из консоли кластера командой удаления сеанса — пользователь при этом потеряет несохранённые данные, поэтому сначала уточните, что за ним никто не сидит.
  3. Разведите ночные обработки во времени. Обмены и выгрузки через внешнее соединение или COM-соединение тоже занимают клиентскую лицензию, и если они наползают на утро, места заканчиваются у людей.
  4. Не открывайте одну и ту же базу на сотруднике и в терминале одновременно — это два места.
Какие лицензии 1С у вас сейчас?

Частые вопросы о сервере лицензий 1С

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