Кто сейчас держит лицензии 1С: сеансы, ключ HASP, rac и техжурнал

· 9 мин

Содержание

Посмотреть занятые лицензии 1С быстрее всего так: в клиент-серверной базе откройте консоль администрирования кластера, узел «Сеансы», и переключите вид на лицензии. В файловой базе с сетевым ключом — запустите монитор HASP (Aladdin Monitor) и смотрите число подключений к ключу. Для одного рабочего места хватает окна Справка → О программе.

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

Какой способ проверки подходит вашей схеме лицензирования

Сначала определите, откуда берутся лицензии. От этого зависит, где их считать.

СхемаГде лицензияЧем смотреть занятые
Файловая база, программные лицензииФайлы .lic на каждом компьютереОкно «О программе», ring license list, активные пользователи
Файловая база, сетевой ключ HASPКлюч на одном ПК + HASP License ManagerAladdin Monitor
Клиент-сервер, лицензии выдаёт серверКлюч или .lic на сервере 1СКонсоль кластера, rac session list --licenses
Клиент-сервер, лицензии на клиентахКлючи или .lic на рабочих местахОкно «О программе» на каждом ПК
Терминальный серверКлюч или .lic на терминальном сервереМонитор HASP или консоль кластера

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

Окно «О программе» и активные пользователи в Конфигураторе

Какая лицензия у этого рабочего места

В интерфейсе «Такси» откройте главное меню (кнопка с тремя полосками в заголовке окна) → Справка → О программе. То же окно есть в Конфигураторе: Справка → О программе.

В окне видны:

  • 🔑 тип лицензии — программная или аппаратный ключ;
  • 🖥️ откуда получена — с этого компьютера или выдана сервером 1С:Предприятия;
  • 📄 для программной лицензии — сведения о файле лицензии и числе мест.

Этот способ отвечает на вопрос «чем работаю я». Общую картину по всем пользователям он не даёт.

Кто сейчас в базе

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

В пользовательском режиме тот же список открывается через Функции для технического специалиста → Стандартные → Активные пользователи. Если пункта «Функции для технического специалиста» нет в главном меню, включите его в Сервис и настройки → Параметры.

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

  1. Отбросьте строки с фоновыми заданиями — это работа самой программы.
  2. Сгруппируйте оставшиеся строки по колонке «Компьютер».
  3. Число уникальных компьютеров с клиентскими сеансами — верхняя оценка занятых клиентских лицензий в файловом режиме.

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

Сетевой ключ HASP: сколько подключений в мониторе

Когда сетевой ключ стоит на одном компьютере, а остальные получают лицензии через HASP License Manager, менеджер лицензий и считает подключения. Посмотреть их помогает утилита Aladdin Monitor (её часто называют HASP Monitor).

Как посмотреть занятые лицензии в Aladdin Monitor

  1. Установите Aladdin Monitor на любой компьютер сети. Ставить его на сервер с ключом не обязательно.
  2. Запустите утилиту. Слева появится список найденных менеджеров лицензий по адресам.
  3. Раскройте нужный адрес и выберите ключ.
  4. Справа будет лимит ключа и текущее число подключений, ниже — список адресов станций, которые держат лицензию.

Если монитор не видит менеджер, добавьте его адрес вручную. Менеджер работает по UDP-порту 475 — проверьте, что брандмауэр на компьютере с ключом его пропускает.

Web-консоль Sentinel на порту 1947

На компьютере с ключом откройте в браузере http://localhost:1947. Это Sentinel Admin Control Center от драйвера ключа. Там видно, что ключ подключён и опознан системой. Для подсчёта подключений к ключу 1С через HASP License Manager практики используют Aladdin Monitor: он показывает именно логины к ключу.

Как клиенты ищут ключ

Если часть пользователей получает «не найден ключ», а монитор показывает свободные места, проверьте файл nethasp.ini в каталоге conf платформы на рабочем месте. Явный адрес менеджера ускоряет поиск и убирает случайные подключения к чужим ключам:

[NH_COMMON]
NH_TCPIP = Enabled

[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.10
NH_USE_BROADCAST = Disabled

Адрес 192.168.1.10 замените на адрес компьютера с ключом.

Консоль кластера: какие сеансы держат лицензии

В клиент-серверном варианте самый удобный инструмент — консоль администрирования серверов 1С:Предприятия (оснастка MMC, ставится вместе с сервером). Консоль подключается к агенту сервера по порту 1540.

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

  1. Запустите консоль и раскройте Центральные серверы 1С:Предприятия → имя сервера → Кластеры → кластер.
  2. Откройте Информационные базы → нужная база → Сеансы или общий узел Сеансы кластера — он показывает сеансы всех баз.
  3. В контекстном меню узла выберите вид «Лицензии».

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

Лицензии рабочих процессов

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

Выдача лицензий сервером

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

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

Проверка через командную строку: утилиты rac и ring

Консоль удобна, но не для автоматизации. Для скриптов и проверок по расписанию есть rac — утилита командной строки для администрирования кластера. Она обращается к серверу администрирования ras, по умолчанию на порту 1545.

Подготовка: запуск ras

Если ras ещё не запущен как служба, запустите его из каталога bin платформы на сервере 1С:

ras cluster --daemon

Для постоянной работы его регистрируют службой Windows. Без ras команды rac вернут ошибку подключения.

Список сеансов с лицензиями

Сначала узнайте идентификатор кластера:

rac cluster list

В выводе найдите строку cluster с GUID. Затем выведите сеансы вместе с лицензиями:

rac session list --cluster=<GUID кластера> --licenses

Если на кластере заданы администраторы, добавьте --cluster-user=<имя> и --cluster-pwd=<пароль>. Каждая запись в выводе — сеанс и полученная им лицензия: пользователь, компьютер, тип лицензии, признак выдачи сервером.

Быстро посчитать число записей в Windows:

rac session list --cluster=<GUID кластера> --licenses | find /c "user-name"

В Linux то же делается через grep -c user-name. Для серверной лицензии рабочих процессов используйте rac process list --cluster=<GUID кластера> --licenses. Точный набор полей зависит от версии платформы — сверьтесь с rac help session.

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

Утилита ring входит в поставку платформы и работает с программными лицензиями. Команда показывает все установленные на компьютере лицензии:

ring license list

Подробности по конкретной лицензии (число мест, привязка, срок действия при наличии) выводит ring license info. Параметры команды смотрите в ring license help.

ring показывает, что установлено, а не что занято. Занятость смотрите в сеансах или в консоли. Файлы программных лицензий лежат в C:\ProgramData\1C\licenses в Windows и в /var/1C/licenses в Linux.

Технологический журнал: история получения лицензий

Консоль и монитор показывают текущий момент. Если нужно понять, кто занял последнее место в 9:05 и почему в 9:10 у бухгалтера выпала ошибка, включите технологический журнал. Он фиксирует события платформы в текстовые логи.

Настройка logcfg.xml

Создайте файл logcfg.xml в каталоге conf платформы — на сервере 1С или на клиенте, где получается лицензия. В журнале есть два нужных события: LIC — операции с лицензиями и HASP — обращения к аппаратному ключу.

<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
  <log location="C:\1C_logs\lic" history="24">
    <event>
      <eq property="name" value="LIC"/>
    </event>
    <event>
      <eq property="name" value="HASP"/>
    </event>
    <property name="all"/>
  </log>
</config>

Платформа подхватывает файл без перезапуска, обычно в течение минуты. history="24" — хранить логи 24 часа.

Как читать логи

  • 📂 В папке C:\1C_logs\lic появятся подкаталоги по процессам, внутри — файлы по часам.
  • 🔍 Ищите строки с LIC: в них есть время, процесс и параметры операции с лицензией.
  • 🧩 Сопоставьте время события с моментом жалобы пользователя — так видно, какой процесс получал лицензию перед сбоем.

Журнал с <property name="all"/> на загруженном сервере растёт быстро. Не оставляйте его включённым надолго: соберите данные за нужный период и удалите logcfg.xml или сократите фильтр.

Почему цифры не сходятся: ошибки при подсчёте лицензий

Типичная ситуация: ключ на 10 мест, в базе 7 человек, а восьмой получает Не обнаружено свободной лицензии!. Причины обычно такие.

  • 👻 Зависшие сеансы. Компьютер выключили, не закрыв 1С. Сеанс и лицензия держатся, пока сервер не обнаружит обрыв соединения. В консоли такой сеанс виден со старым временем последней активности.
  • 🗂️ Несколько баз на одном ключе. Активные пользователи одной базы показывают 7, а ещё 3 места заняты в другой базе.
  • 🖥️ Терминальный сервер . Каждый пользовательский RDP-сеанс расходует отдельную лицензию, хотя компьютер физически один.
  • 🔀 Лицензии берутся не оттуда. Сервер 1С не выдаёт лицензии для базы, и клиенты занимают сетевой ключ в офисе.
  • 🔑 Чужой ключ в сети. Без явного NH_SERVER_ADDR клиент находит первый ответивший менеджер лицензий — иногда это ключ другого отдела.

Зависший сеанс можно завершить вручную в консоли кластера (контекстное меню сеанса → удалить) или командой rac session terminate. Пользователь этого сеанса потеряет несохранённые данные — перед удалением убедитесь, что за компьютером никто не работает , и предупредите владельца сеанса.

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

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

Сколько лицензий занимает один пользователь, если открыл три окна 1С?
При работе с одного компьютера несколько клиентских окон обычно расходуют одну клиентскую лицензию. Исключение — терминальный сервер: там каждый пользовательский сеанс считается отдельно.
Можно ли посмотреть занятые лицензии без прав администратора кластера?
Если на кластере заданы администраторы, консоль и rac потребуют их логин и пароль. Без них остаются окно «О программе» на своём компьютере и монитор HASP для сетевого ключа.
Через сколько освобождается лицензия после выключения компьютера?
Когда сервер обнаружит, что соединение оборвано. Это не мгновенно. Если место нужно сразу, завершите зависший сеанс в консоли кластера.
Как часто проверять занятость лицензий?
Разово — при жалобах пользователей. Если места кончаются регулярно, настройте ежедневный запуск rac session list по расписанию и сохраняйте вывод в файл: через неделю будет видно, в какие часы пик.
Видит ли монитор HASP программные лицензии?
Нет. Aladdin Monitor показывает только подключения к аппаратному ключу. Программные лицензии смотрите в консоли кластера или командой ring license list.