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

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

В этой статье: как работает лицензирование 1С, когда нужен отдельный сервер лицензирования, установка на Windows и Linux, настройка и мониторинг. Если вы уже работаете в клиент-серверном режиме и планируете масштабирование — эта статья для вас.

Как работает лицензирование 1С

1С:Предприятие использует два типа лицензий: программные (электронные) и аппаратные (HASP-ключи). Оба типа выполняют одну задачу — разрешают определённому числу пользователей одновременно работать с системой. Разница — в способе хранения и привязки.

Программные vs аппаратные (HASP) лицензии

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

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

Аппаратные лицензии (HASP) — USB-ключ с записанным числом лицензий. Вставил в сервер — лицензии доступны. Переткнул в другой сервер — работают там.

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

КритерийПрограммные лицензииHASP (аппаратные)
Способ привязкиК оборудованию сервера (автоматически)К USB-ключу (физически)
Перенос на другой серверДеактивация + повторная активацияПереткнуть USB-ключ
ВиртуализацияРаботают без проблемТребуется проброс USB (ненадёжно)
Риск потериНет (файл на диске)Да (физический ключ)
АктивацияЧерез утилиту ring (онлайн/офлайн)Автоматически при подключении
Лимит переактивацийОграничен (обычно 3-5 раз)Без ограничений

Для серверов лицензирования программные лицензии удобнее. Нет зависимости от физического устройства, нет проблем с пробросом USB в виртуальные среды, нет риска потери ключа.

Клиентские и серверная лицензия

Клиентская лицензия — право на одно рабочее место. Лицензия на 50 пользователей означает, что одновременно могут работать 50 клиентов. 51-й получит отказ. Лицензия считается занятой пока сеанс активен — даже если пользователь ушёл на обед и оставил 1С открытой.

Серверная лицензия (32-битная или 64-битная) — право запускать сервер 1С:Предприятие. Без неё сервер работает в демо-режиме: не более 12 информационных баз, ограничения по функциональности. Серверная лицензия одна на кластер, не на рабочее место.

Клиентские лицензии продаются комплектами разного объёма. Выбирайте комплект по пиковому числу одновременных пользователей с запасом 20-30%:

КомплектРабочих местКогда использовать
На 1 рабочее место1Тестовые среды, одиночные рабочие места
На 5 рабочих мест5Малый бизнес, небольшая бухгалтерия
На 10 рабочих мест10Средний отдел, типовое начало
На 20 рабочих мест20Компания с несколькими отделами
На 50 рабочих мест50Средний бизнес, ERP
На 100 рабочих мест100Крупная компания, холдинг
На 300 рабочих мест300Enterprise, территориально распределённые компании
На 500 рабочих мест500Крупный enterprise

Комплекты суммируются: два комплекта по 50 дают 100 рабочих мест. Активируйте все комплекты на сервере лицензирования — менеджер кластера сложит их в общий пул автоматически.

Как менеджер кластера раздаёт лицензии

При подключении пользователя к информационной базе менеджер кластера (rmngr) ищет свободную лицензию. Порядок поиска:

  1. Программные лицензии на текущем сервере 1С
  2. HASP-ключи, подключённые к текущему серверу
  3. Сервер лицензирования, указанный в параметрах кластера
  4. HASP-ключи в сети (через HASP License Manager)

Если на шагах 1-2 свободная лицензия найдена — она выдаётся. Если нет — запрос уходит на сервер лицензирования. Если и там пусто — ошибка «Лицензия не обнаружена». Понимание этого порядка критично для диагностики проблем.

Когда нужен отдельный сервер лицензирования 1С

Один сервер 1С с лицензиями на борту — рабочая схема для небольших компаний. Отдельный сервер лицензирования 1С нужен в трёх случаях.

Несколько серверов 1С в сети

Если в компании два и более кластера серверов 1С — каждый ищет лицензии у себя. Купили 100 клиентских лицензий, активировали 50 на одном сервере, 50 на другом.

Когда на первом работают 55 человек, а на втором — 30, первый отказывает пользователям. 20 лицензий на втором свободны, но недоступны. Центральный сервер лицензирования объединяет все 100 лицензий в один пул.

Терминальные серверы

На терминальном сервере (RDP) пользователи запускают тонкий клиент 1С. Если терминальных серверов несколько — каждый должен иметь доступ к лицензиям. Активировать лицензии на каждом терминальном сервере — неудобно и расточительно. Сервер лицензирования раздаёт ключи всем терминальным серверам из единого пула.

Территориально распределённые офисы

Головной офис и два филиала, в каждом свой сервер 1С. Без сервера лицензирования нужно покупать отдельные комплекты лицензий для каждой площадки. С центральным сервером лицензирования — один комплект на всю компанию. Экономия при 3-4 офисах может составить сотни тысяч рублей в год. Условие — стабильный канал между площадками (VPN или выделенная линия).

Экономия на практике. Допустим, в трёх офисах работают 30, 20 и 10 пользователей. Без сервера лицензирования нужно три комплекта: на 50, на 20 и на 10. Итого 80 лицензий при реальной потребности в 60. С сервером лицензирования достаточно одного комплекта на 100 (с запасом) или комплекта на 50 + на 20 = 70 лицензий. Разница — 10-30 лицензий, это десятки тысяч рублей.

Узнать, какой сервер потянет вашу нагрузку, можно в статье о подборе сервера по числу пользователей.

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

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

Установка компонентов

Скачайте дистрибутив «Сервер 1С:Предприятие» с releases.1c.ru. Запустите установщик и выберите:

Установщик создаст пользователя USR1CV8 и запустит службу «Агент сервера 1С:Предприятие». После установки проверьте, что служба работает:

sc query "1C:Enterprise 8.3 Server Agent"
:: Состояние: 4 (RUNNING)

Активация программных лицензий

Лицензии активируются утилитой ring — командной строкой для управления лицензиями 1С. ring входит в состав платформы начиная с версии 8.3.12. Расположение: C:\Program Files\1cv8\8.3.XX.XXXX\bin\ring.exe.

:: Активация клиентских лицензий по пин-коду
ring license activate --first "XXXX-XXXX-XXXX-XXXX" --pin "XXXX-XXXX-XXXX-XXXX-XXXX"

:: Активация серверной лицензии
ring license activate --first "XXXX-XXXX-XXXX-XXXX" --pin "XXXX-XXXX-XXXX-XXXX-XXXX"

:: Проверка установленных лицензий
ring license list

Параметр --first — первый пин-код из комплекта. Параметр --pin — пин-код активации. Оба указаны в конверте или в электронном письме от 1С. Если интернет недоступен — используйте офлайн-активацию: ring license activate --request сгенерирует файл запроса. Загрузите его на портал 1С.

Настройка доступа по сети

Другие серверы 1С будут обращаться к серверу лицензирования по TCP-порту 1541 (менеджер кластера). Убедитесь, что порты открыты:

netsh advfirewall firewall add rule name="1C License Server ragent" dir=in action=allow protocol=TCP localport=1540
netsh advfirewall firewall add rule name="1C License Server rmngr" dir=in action=allow protocol=TCP localport=1541
netsh advfirewall firewall add rule name="1C License Server rphost" dir=in action=allow protocol=TCP localport=1560-1591
netsh advfirewall firewall add rule name="1C License Server rac" dir=in action=allow protocol=TCP localport=1545

Если сервер лицензирования будет только раздавать лицензии (без собственных информационных баз) — достаточно портов 1540, 1541 и 1545. Диапазон 1560-1591 нужен, только если на этом сервере также будут работать пользователи.

Установка сервера лицензирования 1С на Linux

На Linux установка аналогична Windows: пакеты серверной платформы + активация через ring. Процесс отличается только командами.

Пакеты и установка

# Ubuntu/Debian — установка зависимостей
sudo apt install -y libfreetype6 libgsf-1-114 unixodbc libglib2.0-0

# Установка пакетов 1С из архива
sudo dpkg -i 1c-enterprise83-common_8.3.*.deb
sudo dpkg -i 1c-enterprise83-server_8.3.*.deb

# Для RHEL/CentOS/AlmaLinux
sudo rpm -ivh 1c-enterprise83-common-8.3.*.rpm
sudo rpm -ivh 1c-enterprise83-server-8.3.*.rpm

# Запуск службы
sudo systemctl enable srv1cv83
sudo systemctl start srv1cv83

Служба работает от пользователя usr1cv8. Проверьте статус:

sudo systemctl status srv1cv83
# Active: active (running)

ss -tlnp | grep -E "1540|1541"
# LISTEN  0  128  *:1540  *:*  users:(("ragent",pid=...))
# LISTEN  0  128  *:1541  *:*  users:(("rmngr",pid=...))

Активация лицензий через ring

Утилита ring на Linux расположена в /opt/1cv8/x86_64/8.3.XX.XXXX/ring. Для удобства добавьте путь в PATH или создайте симлинк:

# Активация от имени usr1cv8
sudo -u usr1cv8 /opt/1cv8/x86_64/8.3.XX.XXXX/ring license activate \
  --first "XXXX-XXXX-XXXX-XXXX" \
  --pin "XXXX-XXXX-XXXX-XXXX-XXXX"

# Проверка установленных лицензий
sudo -u usr1cv8 /opt/1cv8/x86_64/8.3.XX.XXXX/ring license list

Важно: ring запускается от имени usr1cv8, а не от root. Лицензии привязываются к профилю пользователя, под которым работает служба 1С. Если активировать от root — сервер 1С не увидит лицензии.

Astra Linux. Для сертифицированных ИТ-инфраструктур (государственные организации, оборонка) 1С поставляет пакеты для Astra Linux SE. Установка аналогична Debian (deb-пакеты), но версия платформы должна быть сертифицирована ФСТЭК. Проверяйте совместимость на сайте 1С перед установкой.

Откройте порты. Для firewalld:

sudo firewall-cmd --permanent --add-port=1540/tcp
sudo firewall-cmd --permanent --add-port=1541/tcp
sudo firewall-cmd --permanent --add-port=1545/tcp
sudo firewall-cmd --reload

Для iptables (Astra Linux, Ubuntu без firewalld):

sudo iptables -A INPUT -p tcp --dport 1540 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 1541 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 1545 -j ACCEPT
sudo iptables-save | sudo tee /etc/iptables/rules.v4

Настройка клиентов для работы с сервером лицензирования

После установки и активации лицензий на сервере лицензирования нужно указать остальным серверам 1С, где искать лицензии. Это делается через параметры кластера или конфигурационные файлы.

Параметры кластера

В консоли администрирования (MMC) или через rac откройте свойства кластера. В поле «Сервер лицензирования» укажите адрес и порт сервера лицензирования:

# Получить UUID кластера
rac cluster list

# Указать сервер лицензирования в параметрах кластера
rac cluster update --cluster=<cluster-uuid> \
  --license-distribution=allow

Параметр --license-distribution=allow разрешает серверам кластера использовать лицензии с других серверов. Значение deny — запрещает. По умолчанию: allow.

Для явного указания сервера лицензирования добавьте его как рабочий сервер кластера. Даже если на нём не будут запускаться рабочие процессы (rphost) — менеджер кластера увидит его лицензии:

# Добавить сервер лицензирования в кластер
rac server --cluster=<cluster-uuid> insert \
  --name="license-server.domain.local" \
  --agent-host="license-server.domain.local" \
  --port-range=1560:1591 \
  --using=normal

# Проверить, что сервер добавлен
rac server --cluster=<cluster-uuid> list

Конфигурационные файлы

Альтернативный способ — указать сервер лицензирования в конфигурационном файле клиента 1С. Файл nethasp.ini управляет поиском HASP-ключей в сети. Для программных лицензий этот способ не нужен — используйте параметры кластера.

Файл nethasp.ini располагается в каталоге конфигурации 1С:

[NH_COMMON]
NH_TCPIP = Enabled

[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.100
NH_PORT_NUMBER = 475
NH_TCPIP_METHOD = TCP

Где 192.168.1.100 — IP-адрес сервера с HASP-ключом. Порт 475 — стандартный порт HASP License Manager. Этот файл нужен только для аппаратных лицензий. Для программных лицензий конфигурация идёт через параметры кластера.

Мониторинг и управление лицензиями

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

Команды ring для управления лицензиями

# Список всех установленных лицензий
ring license list

# Подробная информация о каждой лицензии
ring license info --show-all

# Деактивация лицензии (перенос на другой сервер)
ring license deactivate --serial "XXXX-XXXX-XXXX-XXXX"

# Генерация файла запроса для офлайн-активации
ring license activate --request --path "/tmp/license-request.txt"

Команда ring license list показывает тип лицензии (серверная/клиентская), количество рабочих мест, серийный номер и дату активации. Это первое, что нужно проверить при проблемах с лицензиями.

Просмотр выданных лицензий через rac

Утилита rac показывает текущее распределение лицензий по сеансам:

# Получить UUID кластера
CLUSTER=$(rac cluster list | grep cluster | head -1 | awk '{print $3}')

# Список активных сеансов с информацией о лицензиях
rac session --cluster=$CLUSTER list

# Поля в выводе:
#   session         : UUID сеанса
#   user-name       : имя пользователя 1С
#   host            : имя компьютера клиента
#   app-id          : тип клиента (1CV8, 1CV8C, WebClient, BackgroundJob)
#   license-type    : тип используемой лицензии (soft, hasp)
#   started-at      : время начала сеанса
#   last-active-at  : время последней активности

Подсчитать занятые лицензии: сколько сеансов с app-id типа 1CV8 или 1CV8C — столько клиентских лицензий занято. Фоновые задания (BackgroundJob) не потребляют клиентские лицензии.

Пример скрипта для мониторинга лицензий (bash, запускать по cron каждые 5 минут):

#!/bin/bash
# Мониторинг лицензий 1С — записывает статистику в лог
RAC="/opt/1cv8/x86_64/8.3.XX.XXXX/rac"
CLUSTER=$($RAC cluster list | grep cluster | head -1 | awk '{print $3}')
DATE=$(date "+%Y-%m-%d %H:%M")

# Считаем активные сеансы (кроме фоновых заданий)
TOTAL=$($RAC session --cluster=$CLUSTER list | grep -c "session")
BG=$($RAC session --cluster=$CLUSTER list | grep -c "BackgroundJob")
ACTIVE=$((TOTAL - BG))

echo "$DATE | Активных сеансов: $ACTIVE | Фоновых: $BG | Всего: $TOTAL" >> /var/log/1c-license-monitor.log

# Алерт если занято более 80% лицензий (замените 80 на ваш лимит)
MAX_LICENSES=100
THRESHOLD=$((MAX_LICENSES * 80 / 100))
if [ "$ACTIVE" -ge "$THRESHOLD" ]; then
    echo "$DATE | ВНИМАНИЕ: занято $ACTIVE из $MAX_LICENSES лицензий" | mail -s "1C: лицензии >80%" admin@company.ru
fi

Высвобождение зависших лицензий

Зависший сеанс — пользователь закрыл 1С аварийно (через диспетчер задач, обрыв связи), а сеанс на сервере остался. Лицензия занята, но никто не работает. Если таких сеансов накопится — лицензии «кончатся».

# Найти зависшие сеансы (не активны более 30 минут)
rac session --cluster=$CLUSTER list | grep -B5 "last-active-at"

# Принудительно завершить конкретный сеанс
rac session --cluster=$CLUSTER terminate --session=<session-uuid>

# Задать автоматическое завершение неактивных сеансов (10 минут)
rac cluster update --cluster=$CLUSTER --expiration-timeout=600

Параметр expiration-timeout=600 — лучшая защита от зависших сеансов. Менеджер кластера автоматически завершит сеанс, если клиент не обращался к серверу 10 минут. Лицензия освободится. Не путайте с session-fault-tolerance-level — он отвечает за отказоустойчивость сеансов, а не за таймаут.

Типичные ошибки

Три ошибки, с которыми сталкивается каждый администратор при настройке сервера лицензирования 1С.

Лицензия не обнаружена

Пользователь открывает 1С и получает: «Лицензия не обнаружена». Причин несколько:

Все лицензии заняты

Лицензии есть, но все заняты. Новый пользователь получает отказ. Диагностика:

# Сколько сеансов сейчас активно
rac session --cluster=$CLUSTER list | grep -c "session"

# Сколько лицензий доступно
ring license list
# Ищите строку "count" — количество рабочих мест

Если сеансов больше, чем лицензий — нужно либо купить дополнительные лицензии, либо найти и завершить зависшие сеансы.

Частая причина: пользователи не закрывают 1С, уходя домой. Терминальные сессии RDP остаются активными, сеансы 1С внутри — тоже. Решение: настройте expiration-timeout и политику завершения RDP-сеансов по таймауту.

Ещё одна ситуация: лицензии активированы на нескольких серверах, а не на сервере лицензирования. Каждый сервер видит только «свои» лицензии. Решение: деактивируйте лицензии на отдельных серверах через ring license deactivate и активируйте все на одном сервере лицензирования.

Конфликт HASP и программных лицензий

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

Рекомендация: используйте один тип лицензий. Если переходите с HASP на программные — извлеките ключ из USB-порта после активации программных лицензий. Если нужно совмещение — убедитесь, что HASP License Manager настроен корректно, и проверьте nethasp.ini на каждом сервере.

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

Вопросы и ответы

Что такое сервер лицензирования 1С и зачем он нужен?

Сервер лицензирования 1С — это сервер 1С:Предприятие, на котором активированы клиентские и серверные лицензии для раздачи другим серверам в сети. Он нужен, когда в компании несколько серверов 1С, терминальных серверов или территориально распределённых офисов. Центральный пул лицензий исключает ситуации, когда лицензии простаивают на одном сервере при нехватке на другом.

Чем программные лицензии 1С отличаются от HASP?

Программные лицензии активируются пин-кодом и привязываются к оборудованию сервера. Хранятся на диске, не требуют физического ключа. HASP — USB-устройство с записанными лицензиями. Легко переносится между серверами, но создаёт проблемы с виртуализацией (проброс USB) и может физически выйти из строя. Для серверов лицензирования рекомендуются программные лицензии.

Как узнать, сколько лицензий 1С свободно?

Два способа. Через ring: команда ring license list покажет общее количество лицензий на сервере. Через rac: команда rac session —cluster= list покажет все активные сеансы — каждый занимает одну клиентскую лицензию. Свободные лицензии = общее количество минус число активных сеансов (без BackgroundJob).

Можно ли установить сервер лицензирования 1С на Linux?

Да. Процесс аналогичен Windows: установите серверные пакеты 1С (deb или rpm), запустите службу srv1cv83, активируйте лицензии через утилиту ring от пользователя usr1cv8. Важно: ring должен запускаться от usr1cv8, а не от root — иначе лицензии привяжутся к профилю root и будут невидимы для сервера 1С.

Как перенести лицензии 1С на другой сервер?

Для программных лицензий: деактивируйте на старом сервере через ring license deactivate —serial, затем активируйте на новом через ring license activate. 1С разрешает ограниченное количество переактиваций. Для HASP: просто переткните USB-ключ в новый сервер. Убедитесь, что служба 1С перезапущена после переноса.

Сколько стоит лицензия на сервер 1С?

Серверная лицензия 1С:Предприятие 8.3 (64-битная) стоит около 86 400 рублей (цена на 2026 год). Клиентские лицензии: на 1 рабочее место — около 6 300 рублей, на 5 — около 21 600, на 10 — около 41 400, на 50 — около 152 000, на 100 — около 260 000. Цены зависят от региона и партнёра 1С. Подробнее о стоимости серверной инфраструктуры — в статье о стоимости сервера для 1С.

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

Можно использовать рабочий сервер 1С — достаточно активировать на нём все лицензии и добавить его в кластеры остальных серверов. Отдельный выделенный сервер оправдан при 100+ пользователях или территориально распределённой инфраструктуре. Минимальные требования к серверу лицензирования невысоки: 2 ядра, 4 ГБ RAM, любой SSD — он не выполняет тяжёлых вычислений.

Когда внедрять сервер лицензирования и что это даёт

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

Программные лицензии для сервера лицензирования удобнее HASP: нет зависимости от физического ключа, нет проблем с пробросом USB в виртуальные среды. Обязательно настройте expiration-timeout для автоматического освобождения зависших сеансов — это главная причина «пропадания» лицензий.

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

Не уверены, что выбранный сервер потянет вашу нагрузку? Пришлите профиль базы (число пользователей, размер, версия СУБД) — бесплатно посчитаем конфигурацию под вас.

hasp rac ring rmngr гайд лицензирование-1с настройка