Как найти и проверить лицензии 1С на сервере предприятия

· 9 мин

Содержание

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

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

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

На одном сервере обычно живут два разных вида лицензий. Их часто путают, отсюда половина вопросов «куда делась лицензия».

  • 🖥️ Лицензия на сервер 1С:Предприятия — разрешает работу самого кластера (32- или 64-битного, КОРП или обычного). Без неё рабочие процессы не обслуживают клиентов.
  • 👥 Клиентские лицензии — на количество одновременных пользователей. Их можно активировать на сервере, и тогда сервер раздаёт их тонким и веб-клиентам.

Каждый вид может быть программным (файл) или аппаратным (USB-ключ).

Вид защитыЧто физическиГде искать
Программная сервернаяфайл .licC:\ProgramData\1C\licenses или /var/1C/licenses
Программная клиентскаяфайл .licтам же, на машине, где активировали
Аппаратная сервернаяUSB-ключ HASPпорт сервера или USB-хаб, драйвер HASP
Аппаратная клиентская (сетевая)USB-ключ HASPлюбой компьютер сети с менеджером лицензий

Программная лицензия привязана к оборудованию того компьютера, где её активировали. Файл с одного сервера на другом работать не будет, даже если скопировать его в правильную папку.

Где лежат файлы программных лицензий на сервере

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

Сервер на Windows

Основное место — общий каталог:

C:\ProgramData\1C\licenses

Чтобы его увидеть:

  1. Откройте Проводник и вставьте путь прямо в адресную строку — скрытая папка откроется.
  2. Или включите на вкладке «Вид» отображение скрытых элементов.
  3. Либо нажмите Win+R и введите %ALLUSERSPROFILE%\1C\licenses.

Второе место — пользовательский каталог %APPDATA%\1C\licenses. Для сервера это профиль учётной записи службы агента. По умолчанию служба работает от пользователя USR1CV8, поэтому путь выглядит так:

C:\Users\USR1CV8\AppData\Roaming\1C\licenses

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

Сервер на Linux

Общий каталог:

/var/1C/licenses

Проверить содержимое и права:

ls -la /var/1C/licenses

Владельцем файлов и каталога должен быть пользователь, от которого работает сервер (обычно usr1cv8), либо у него должны быть права на чтение. Частая причина «сервер не видит лицензию» на Linux — файл создан от root с правами только для владельца.

Как выглядит файл лицензии

  • 📄 Имя — набор цифр, например 20231115143022.lic. Это дата и время активации.
  • 📦 Файлов может быть несколько: по одному на каждый активированный комплект (сервер, 5 пользователей, ещё 10 пользователей).
  • 🔒 Файл текстовый, но редактировать его нельзя: любое изменение делает лицензию недействительной.

Узнать, что внутри, без риска можно утилитой ring (входит в состав средств лицензирования платформы):

ring license list
ring license info --name <имя_лицензии>

Первая команда покажет список активированных лицензий, вторая — регистрационный номер, тип комплекта и данные, указанные при активации. Если какой-то параметр не срабатывает в вашей версии утилиты, посмотрите справку ring license help.

Аппаратные ключи HASP на сервере

Если у вас коробка с USB-ключом, «файла лицензии» нет — лицензия зашита в сам ключ. Задача тогда другая: убедиться, что ключ виден системе и платформе.

Где проверить ключ

  1. Физически. Ключ вставлен в порт сервера. У виртуального сервера ключ часто стоит в USB-хабе или проброшен через USB-over-IP — проверьте, что проброс активен.
  2. Драйвер. Должен быть установлен драйвер HASP (Sentinel). В диспетчере устройств ключ отображается в разделе USB-устройств.
  3. Веб-панель менеджера. Откройте в браузере на сервере http://localhost:1947 — это панель управления Sentinel. В списке ключей будет ваш ключ, если драйвер его видит.

Локальный ключ и сетевой

  • 🔌 Ключ на сервер 1С вставляется прямо в сервер, где работает кластер. Сетевым он не бывает.
  • 🌐 Сетевой клиентский ключ можно воткнуть в любой компьютер сети. На этом компьютере должен работать менеджер лицензий HASP, а клиенты и сервер 1С находят его по сети.

Чтобы 1С искала сетевой ключ на конкретном адресе, используется файл 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 — адрес машины с ключом. Отключение широковещательного поиска ускоряет получение лицензии в больших сетях.

Менеджер лицензий HASP работает через порт 475 (TCP и UDP). Если между клиентом и ключом есть межсетевой экран, порт должен быть открыт.

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

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

Где в консоли

  1. Запустите «Администрирование серверов 1С Предприятия».
  2. Раскройте Центральные серверы 1С:Предприятия → <ваш сервер> → Кластеры → <кластер>.
  3. Откройте ветку Лицензии. В списке видно, какому сеансу выдана лицензия, тип (программная или аппаратная), полное имя файла лицензии или серию ключа.

То же есть на уровне рабочего процесса: Рабочие процессы → <процесс> → Лицензии. Так видно, какую лицензию взял конкретный rphost.

Если консоль не открывается или пустая — проверьте регистрацию оснастки. Для этого из командной строки от имени администратора выполните в каталоге bin нужной версии платформы:

regsvr32 radmin.dll

Регистрировать нужно ту же версию radmin.dll, что и у сервера: консоль одной версии не подключается к кластеру другой.

Через командную строку

Без графической консоли список лицензий по сеансам даёт утилита rac (нужен запущенный сервер администрирования ras):

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

Вывод покажет, кто занимает лицензию, с какого компьютера и из какого файла или ключа она взята. Удобно, когда нужно найти «зависший» сеанс, который держит лицензию.

Кто выдаёт клиентские лицензии

Сервер может выдавать клиентские лицензии сеансам информационной базы. Управляют этим в двух местах:

  • ⚙️ Свойства информационной базы в консоли — параметр выдачи лицензий сервером. В rac ему соответствует --license-distribution у команды rac infobase update.
  • 🧭 Требования назначения функциональности в свойствах рабочего сервера — тип объекта «Клиентская лицензия». Через него указывают, какой рабочий сервер кластера выдаёт клиентские лицензии. Это нужно, когда в кластере несколько серверов, а лицензии активированы только на одном.

Если клиентские лицензии активированы на сервере, а пользователи работают через тонкий клиент, платформа сначала ищет лицензию на компьютере пользователя, затем получает её от сервера. Локальный файл на клиенте «перехватывает» выдачу.

Кластер из нескольких рабочих серверов

В кластере с двумя и более рабочими серверами лицензия на сервер нужна каждому рабочему серверу, который обслуживает клиентов. Файл .lic или ключ должен быть на той машине, где работают её процессы rphost: лицензия с соседнего сервера не подхватывается.

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

Сервер не видит лицензию: как найти причину

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

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

Что проверить в первую очередь

  1. Есть ли файлы в C:\ProgramData\1C\licenses (или /var/1C/licenses).
  2. Что показывает ring license list — лицензия видна утилите или нет.
  3. Что в ветке Лицензии консоли кластера — выдаются ли лицензии вообще.
  4. Менялось ли что-то в оборудовании: сетевая карта, диск, материнская плата, перенос виртуальной машины на другой хост.
  5. Не стоит ли параметр запуска /UseHwLicenses-, отключающий поиск аппаратных ключей, если защита у вас именно на ключе.

Если для применения изменений нужно перезапустить службу «Агент сервера 1С:Предприятия», все пользователи потеряют сеансы и несохранённые данные. Делайте это вне рабочего времени и предупредите людей заранее.

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

Программную лицензию нельзя «скопировать на новый сервер». Её активируют заново на новом оборудовании.

Что хранить, чтобы восстановить лицензию

  • 🔑 Конверт или карточку с пин-кодами. В комплекте есть основной и резервные пин-коды, их число ограничено.
  • 📝 Регистрационные данные, указанные при первой активации: организация, ИНН, адрес и прочее. При повторной активации их нужно ввести в точности так же, вплоть до символа, иначе центр лицензирования откажет.
  • 💾 Копию файлов .lic. Она поможет, если ОС переустановили на том же оборудовании и привязка сохранилась, а также для проверки данных через ring license info.

Удобнее всего сохранить данные активации сразу: файл лицензии содержит регистрационные сведения, и ring license info выведет их для записи.

Порядок переноса на новый сервер

  1. Сохраните копию каталога licenses со старого сервера.
  2. Выпишите регистрационные данные из ring license info.
  3. Установите на новом сервере платформу той же или более новой версии.
  4. Запустите активацию: из клиента 1С на новом сервере или через ring license activate (параметры смотрите в справке ring license help).
  5. Введите резервный пин-код и прежние регистрационные данные.
  6. Убедитесь, что новый файл появился в общем каталоге и лицензия видна в консоли кластера.

Когда пин-коды закончились

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

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

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

Можно ли держать серверную и клиентские лицензии на разных компьютерах?
Да. Серверная лицензия должна быть на машине с кластером, а клиентские могут быть на компьютерах пользователей, на сервере или в сетевом ключе HASP.
Почему после переноса виртуальной машины лицензия перестала работать?
Программная лицензия привязана к параметрам оборудования. При смене хоста они меняются, и лицензию нужно активировать заново резервным пин-кодом.
Можно ли удалить старый файл .lic?
Можно, если вы уверены, что он недействителен. Перед удалением сохраните копию: в файле есть регистрационные данные, нужные для повторной активации.
Сколько файлов лицензий может лежать в одной папке?
Ограничения на число файлов нет. Платформа суммирует все действительные лицензии из каталога, например серверную и несколько клиентских комплектов.
Как понять, лицензия на сервере программная или аппаратная?
В ветке «Лицензии» консоли кластера для каждой выданной лицензии указан её тип и источник: имя файла или серия ключа.