Сколько лицензий 1С занято и кем: ключи, сеансы и файлы .lic

· 9 мин

Содержание

Быстрее всего посмотреть лицензию , которую взял ваш сеанс 1С, через окно Справка → О программе: там видно, какая лицензия получена, программная или ключ защиты. Чтобы узнать, сколько лицензий 1С используется во всей сети и кем, на сервере выполните rac session list --licenses. В файловом варианте сравните список активных пользователей с монитором ключей HASP.

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

Какие бывают лицензии 1С и где их искать

Прежде чем считать, определите, чем защищена ваша 1С. От этого зависит, куда смотреть.

Вид защитыКак выглядитГде смотреть использование
🔑 Локальный USB-ключ HASPКлюч в USB-порту рабочего ПК, маркировка ORGL8«О программе» на этом ПК
🌐 Сетевой ключ HASPКлюч на одном компьютере сети, маркировка NET5, NET10 и т. д.Aladdin Monitor, сеансы
📄 Программная лицензияФайл .lic, активированный пин-кодом«О программе», ring license, сеансы
🖥 Лицензии на сервере 1СКлюч или файл на сервере, клиентам их выдаёт серверКонсоль кластера, rac

Число в маркировке сетевого ключа означает количество рабочих мест: NET10 — десять одновременных подключений.

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

💡 Без лицензии платформа просто не запускает базу. Исключение — учебная версия: ей лицензия не нужна, но у неё свои ограничения.

Что расходует лицензию, а что нет

  • ✅ Тонкий и толстый клиент — одна лицензия на компьютер, сколько бы окон ни было открыто.
  • ✅ Каждый пользователь терминального сервера — отдельная лицензия.
  • ⛔ Фоновые и регламентные задания клиентскую лицензию не берут: они выполняются на сервере.

Как посмотреть лицензию из 1С и Конфигуратора

Этот способ отвечает на вопрос «что взял мой сеанс». Он работает в любом варианте: файловом и клиент-серверном.

Окно «О программе»

  1. Запустите базу в режиме 1С:Предприятие.
  2. Откройте главное меню (кнопка с тремя полосками или значок «?» в правом верхнем углу).
  3. Выберите Справка → О программе.
  4. Найдите блок со сведениями о лицензии.

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

В Конфигураторе то же окно открывается через Справка → О программе.

Активные пользователи

Список активных сеансов показывает, кто сейчас работает в базе:

  • в Конфигураторе — Администрирование → Активные пользователи;
  • в режиме 1С:Предприятие — Главное меню → Функции для технического специалиста → Стандартные → Активные пользователи.

Если пункта «Функции для технического специалиста» нет, включите его: Главное меню → Сервис → Параметры и флажок «Режим технического специалиста».

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

Список показывает сеансы только одной базы. Если от одного ключа работают три базы, складывайте данные по всем трём.

Как у вас устроено лицензирование?

Диагностика ключа HASP: локального и сетевого

Локальный ключ

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

Чтобы понять, что именно 1С взяла этот ключ, откройте «О программе». Если там указан ключ защиты — всё в порядке.

Сетевой ключ и Aladdin Monitor

Сетевой ключ обслуживает служба HASP License Manager на компьютере, куда он вставлен. Она слушает порт 475 (UDP и TCP). Клиенты 1С находят её широковещательным запросом или по адресу из файла nethasp.ini.

Посмотреть, сколько мест занято:

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

Если в мониторе пусто, а ключ вставлен, проверьте две вещи: запущена ли служба менеджера лицензий и не закрыт ли порт 475 брандмауэром.

Файл 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С на клиенте.

Сеансы и занятые лицензии на сервере 1С

В клиент-серверном варианте сервер видит всё сам: какой сеанс какую лицензию взял, с какого компьютера, программную или аппаратную.

Через консоль администрирования

  1. Откройте «Администрирование серверов 1С Предприятия».
  2. Раскройте Центральные серверы 1С:Предприятия → <сервер> → Кластеры → <кластер>.
  3. Выберите узел «Сеансы» — там все сеансы всех баз кластера.
  4. Откройте свойства нужного сеанса, чтобы увидеть сведения о лицензии.

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

Через rac — быстрее и полнее

Утилита rac лежит в каталоге bin платформы. Ей нужен запущенный сервер администрирования ras, порт по умолчанию — 1545.

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

rac cluster list

Затем выведите лицензии всех сеансов:

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

Если у кластера задан администратор, добавьте --cluster-user=<имя> --cluster-pwd=<пароль>.

Для каждого сеанса с лицензией вы увидите блок полей. Полезнее всего:

  • user-name и host — кто и с какого компьютера;
  • license-type — soft (программная) или HASP (ключ);
  • full-name — путь к файлу лицензии или имя ключа;
  • max-users-all — на сколько мест рассчитана лицензия;
  • max-users-cur — сколько из них сейчас занято;
  • issued-by-server — выдана ли лицензия сервером.

Не завершайте «лишние» сеансы, чтобы освободить места, в рабочее время. Пользователь потеряет несохранённые данные. Сначала предупредите его.

Программные лицензии: пин-коды и файлы .lic

Программная лицензия появляется после активации пин-кода. Пин-код при активации привязывает файл .lic к оборудованию компьютера.

Что входит в комплект

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

Не удаляйте файлы .lic «на всякий случай»: без резервного пин-кода восстановить лицензию будет нечем.

Утилита ring license

Утилита ring входит в состав средств работы с лицензиями платформы (1C:Enterprise License Tools). Она показывает, какие лицензии установлены на компьютере, без запуска 1С:

ring license list

Подробности по одной лицензии:

ring license info --name <имя-лицензии-из-списка>

Проверить, подходит ли лицензия к текущему оборудованию:

ring license validate --name <имя-лицензии-из-списка>

Если параметры команд в вашей версии другие, смотрите ring license help.

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

💡 Если validate сообщает о несоответствии оборудования, лицензия перестала подходить к компьютеру после замены деталей. Её восстанавливают резервным пин-кодом.

Журналы: где видны выдача лицензий и ошибки

Когда пользователи жалуются, что «1С не пускает», журналы помогают понять, кто и когда занял места.

Типичное сообщение

Самая частая ошибка:

Не обнаружен ключ защиты программы или полученная программная лицензия!

Она означает, что сеанс не нашёл ни свободного места в ключе, ни подходящего файла .lic. Причины разные:

  • 🔌 ключ не виден компьютеру или менеджеру лицензий;
  • 📈 все места ключа или лицензии уже заняты;
  • 🧩 файл .lic перестал подходить к оборудованию;
  • 🚧 брандмауэр закрыл порт 475 до менеджера лицензий.

Технологический журнал: событие LIC

В технологическом журнале платформы операции с лицензиями пишутся событием LIC. Включается он файлом logcfg.xml в каталоге conf платформы:

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

Параметр history="24" хранит журнал 24 часа. Каталог C:\techlog\lic создайте заранее и дайте права на запись пользователю, от имени которого работает 1С или служба сервера.

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

Журнал регистрации

Журнал регистрации базы (Администрирование → Журнал регистрации в Конфигураторе) показывает начало и конец сеансов. По нему можно восстановить, кто сидел в базе в момент, когда новый пользователь не смог войти.

Скрипт для регулярного подсчёта лицензий

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

Скрипт PowerShell ниже раз в запуск считает занятые лицензии по типам и дописывает строку в CSV. Он работает в клиент-серверном варианте, где запущен ras.

$rac = "C:\Program Files\1cv8\<версия>\bin\rac.exe"
$log = "C:\scripts\lic_usage.csv"

$clusterLine = & $rac cluster list | Select-String '^cluster\s*:' | Select-Object -First 1
$cluster = ($clusterLine.Line -split ':', 2)[1].Trim()

$lines = & $rac session list --cluster=$cluster --licenses
$types = $lines | Select-String '^license-type\s*:' |
    ForEach-Object { ($_.Line -split ':', 2)[1].Trim() }
$hosts = $lines | Select-String '^host\s*:' |
    ForEach-Object { ($_.Line -split ':', 2)[1].Trim() } |
    Sort-Object -Unique

$soft = @($types | Where-Object { $_ -eq 'soft' }).Count
$hasp = @($types | Where-Object { $_ -eq 'HASP' }).Count
$row  = "{0};{1};{2};{3}" -f (Get-Date -Format 'yyyy-MM-dd HH:mm'), $soft, $hasp, $hosts.Count

Add-Content -Path $log -Value $row

В CSV будут четыре колонки: время, программные лицензии, лицензии ключей HASP и число уникальных компьютеров. Поставьте скрипт в Планировщик заданий Windows с запуском раз в 15 минут. Через неделю будет видно, в какие часы места кончаются и сколько их не хватает.

💡 Если у кластера есть администратор, добавьте к обеим командам rac параметры --cluster-user и --cluster-pwd. Пароль храните не в тексте скрипта, а в защищённом хранилище учётных данных.

В файловом варианте серверного счётчика нет. Там статистику дают Aladdin Monitor (для сетевого ключа) и активные пользователи каждой базы.

Частые ошибки при подсчёте

  • Считают сеансы вместо компьютеров. Один бухгалтер с тремя окнами — это одно место. Сравнивайте по полю host.
  • Смотрят одну базу. Ключ или лицензия общие на все базы, а «Активные пользователи» видят только текущую.
  • Путают установленные и занятые. ring license list показывает, что куплено и активировано. Что занято сейчас, показывают сеансы.
  • Забывают терминальный сервер. Двадцать пользователей RDP на одном сервере займут двадцать мест, хотя компьютер один.
  • Ищут в Конфигураторе пункт «Лицензии». Отдельного списка занятых лицензий в Конфигураторе нет — только окно «О программе» и активные пользователи.

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

Как узнать, сколько лицензий куплено, а не занято?
Сложите места по всем ключам и файлам: число в маркировке сетевого ключа (NET10 — десять мест) и количество мест из ring license info для каждого файла .lic.
Расходуют ли лицензию фоновые задания?
Нет. Регламентные и фоновые задания выполняются на сервере 1С и клиентскую лицензию не занимают.
Нужна ли лицензия учебной версии 1С?
Нет, учебная версия работает без ключа и программной лицензии, но с ограничениями по объёму данных и возможностям.
Можно ли смешивать ключ HASP и программные лицензии?
Да. Места суммируются, а в выводе rac session list --licenses у каждого сеанса видно, какая лицензия ему досталась: soft или HASP.
Где посмотреть лицензию самого сервера 1С?
Серверную лицензию получают рабочие процессы кластера. Сведения о них даёт rac; нужный ключ команды для вашей версии подскажет rac help process.