К статье
Практический материал

Администрирование · 11 мин

Что такое сервер защиты 1С и как его настроить

Сервер защиты 1С (сервер лицензий HASP): назначение, принцип работы, типы ключей, настройка srv1c и nethasp.ini, типичные ошибки поиска лицензий.

Сервер защиты 1С — это служба, которая управляет программными и аппаратными лицензиями платформы «1С:Предприятие» и раздаёт их пользователям по сети. Без неё максимально доступный режим работы — только с локальным ключом, вставленным непосредственно в компьютер, что неудобно и рискованно при нескольких пользователях. Чаще всего под сервером защиты понимают менеджер лицензий HASP (Sentinel License Manager) либо встроенную службу сервера 1С, которая умеет раздавать программные лицензии самостоятельно.

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

Материал рассчитан на администраторов и внедренцев, которым нужно развернуть сервер лицензий, выбрать между аппаратным и программным ключом и устранять типовые ошибки поиска лицензий. Рассматриваются варианты для Windows и Linux, а также ограничения каждого подхода.

Какие виды лицензий и ключей существуют в 1С

Платформа «1С:Предприятие» работает с двумя типами защиты. Аппаратные ключи HASP (USB) бывают локальными (на одно рабочее место) и сетевыми (на 5, 10, 20, 50, 100 и более пользователей). Сетевой ключ вставляется в любой компьютер или сервер в локальной сети, а менеджер лицензий «раздаёт» его ресурсы клиентам. Программные лицензии привязываются к аппаратной конфигурации конкретного компьютера через файл с расширением lic и активируются пин-кодом.

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

Из чего состоит сервер защиты и как он работает

Классическая схема с аппаратным ключом включает три компонента: сам USB-ключ, драйвер ключа (Sentinel HASP Driver) и менеджер лицензий. Драйвер обеспечивает доступ операционной системы к ключу, а менеджер лицензий принимает запросы от клиентов по сети — по умолчанию используется широковещательный поиск по UDP (порт 475) и прямые обращения по TCP/UDP 1947. Если в сети есть фильтрация трафика, эти порты должны быть открыты между клиентами и сервером лицензий.

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

Порядок поиска лицензии клиентом важен для диагностики. Платформа последовательно проверяет: локальный ключ на компьютере пользователя, лицензии на сервере 1С (если база клиент-серверная), затем серверы лицензий, указанные в файле nethasp.ini, и в конце — широковещательный поиск по сети. Первый найденный подходящий вариант используется, остальные игнорируются.

Как выбрать между аппаратным ключом и программной лицензией

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

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

Сравнение вариантов защиты

Сетевой USB-ключ + менеджер HASP

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

Программные лицензии на сервере 1С

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

Локальный ключ на каждом ПК

Просто для 1–3 пользователей без сети. Не масштабируется и не подходит для клиент-серверного режима.

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

Для аппаратного ключа установка сводится к трём шагам: установить драйвер ключа Sentinel, установить менеджер лицензий как службу и убедиться, что ключ определился. В Windows менеджер лицензий ставится пакетом haspdinst или дистрибутивом от поставщика; в Linux используется пакет aksusbd и hasplm. После установки состояние ключа и список занятых лицензий удобно смотреть через веб-интерфейс Admin Control Center, который по умолчанию доступен на порту 1947.

На клиентских машинах поиск сервера лицензий настраивается файлом nethasp.ini, который размещается в каталоге conf платформы (например, C:\Program Files\1cv8\conf). В нём задаётся адрес сервера и протокол обращения. Явное указание адреса сервера убирает зависимость от широковещательного поиска, который часто блокируется в сетях с VLAN и маршрутизацией.

ini
[NH_COMMON]
NH_IPX = Disabled
NH_NETBIOS = Disabled
NH_TCPIP = Enabled

[NH_TCPIP]
NH_SERVER_ADDR = 192.168.0.10
NH_TCPIP_METHOD = UDP
NH_USE_BROADCAST = Disabled
Порядок развёртывания сервера лицензий
  1. 1
    Установите драйвер ключа Sentinel на сервер, куда подключён USB-ключ
  2. 2
    Установите менеджер лицензий HASP как службу и запустите её
  3. 3
    Откройте в брандмауэре порты 475 и 1947 (TCP/UDP) для клиентских машин
  4. 4
    Проверьте через Admin Control Center (порт 1947), что ключ виден и лицензии доступны
  5. 5
    Настройте nethasp.ini на клиентах с явным адресом сервера
  6. 6
    Запустите 1С у пользователя и убедитесь, что лицензия получена

Раздача программных лицензий через сервер 1С

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

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

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

Типичные ошибки и как их диагностировать

Самая частая жалоба — «не найдена лицензия» при работающем сервере. Диагностику ведите по цепочке поиска: проверьте, видит ли ключ Admin Control Center на сервере; доступен ли сервер с клиентской машины по сети (ping, telnet на порт 1947); правильно ли заполнен nethasp.ini и лежит ли он в нужном каталоге conf; не перехватывает ли лицензию другой менеджер лицензий в сети.

Отдельный класс проблем — конфликт нескольких менеджеров лицензий. Если в сети два сервера с ключами (например, ключ на сервер 1С и ключ на пользовательские лицензии установлены на разных машинах), клиент может получить «не ту» лицензию или не получить её вовсе. Решение — явно указать в nethasp.ini адреса обоих серверов через запятую или консолидировать ключи на одном сервере.

Для программных лицензий типичная ситуация — «слёт» после обновления Windows, смены оборудования или миграции виртуальной машины на другой хост. Признак: платформа сообщает, что лицензия повреждена или не найдена, хотя lic-файл на месте. Лечится только повторной активацией резервным пин-кодом.

Типичные ошибки
01
Установка ключа на компьютер, который выключается на ночь: пользователи теряют доступ к лицензиям вне рабочего времени этого ПК
02
Отсутствие nethasp.ini и надежда на broadcast-поиск: в сетях с VLAN клиенты не находят сервер лицензий
03
Активация всех пин-кодов сразу без резерва: при слёте лицензии нечем восстановить работу
04
Покупка только серверной лицензии без клиентских: сервер работает, а пользователи подключиться не могут
05
Проброс USB-ключа в виртуальную машину без проверки стабильности: при перезапуске хоста ключ отваливается

Как проверить, что сервер защиты работает корректно

Базовая проверка — открыть Admin Control Center в браузере (http://адрес_сервера:1947) и посмотреть раздел с ключами: ключ должен отображаться с корректным числом лицензий. Далее запустите 1С на клиенте и убедитесь, что в списке сессий менеджера лицензий появилась занятая лицензия. Если лицензия занята, а пользователь работает — цепочка настроена верно.

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

Контрольные точки

Как проверить результат

Ключ в Admin Control Center
Норма

Ключ виден, указано верное число лицензий

Тревожный признак

Ключ не отображается или виден как локальный вместо сетевого

Запуск 1С у клиента
Норма

База открывается, лицензия занята на сервере

Тревожный признак

Ошибка поиска лицензии или лицензия берётся с локального ключа

Повторный запуск после перезагрузки сервера
Норма

Служба менеджера лицензий стартует автоматически, клиенты подключаются

Тревожный признак

После перезагрузки службу приходится запускать вручную

Частые вопросы о сервере защиты 1С

Можно ли использовать один сетевой ключ для разных версий платформы 1С?

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

Что делать, если в сети несколько серверов лицензий?

Укажите адреса всех серверов в nethasp.ini через запятую в параметре NH_SERVER_ADDR. Клиент будет опрашивать их по порядку и возьмёт лицензию там, где она свободна. Следите, чтобы суммарного числа лицензий хватало на всех пользователей.

Сколько лицензий «съедает» один пользователь?

Как правило, одна клиентская лицензия на одно рабочее место, независимо от числа открытых баз. Однако отдельные режимы (например, работа через веб-сервер или фоновые сеансы) могут занимать дополнительные лицензии — проверяйте фактическое потребление в Admin Control Center.

Работает ли сервер лицензий на Linux?

Да, менеджер лицензий HASP выпускается и для Linux (пакеты aksusbd и hasplm). Для программных лицензий под Linux существуют ограничения на раздачу через сервер 1С в отдельных конфигурациях, поэтому перед внедрением сверяйтесь с документацией на вашу версию платформы.

Что делать при утере аппаратного ключа?

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

Можно ли пробросить USB-ключ в виртуальную машину?

Можно — средствами гипервизора (USB passthrough) или через устройства USB-over-IP. Учитывайте риски: при миграции ВМ на другой хост ключ может стать недоступен, поэтому для виртуальных сред часто надёжнее программные лицензии или выделенный физический сервер лицензий.

Итог

Что важно запомнить

Сервер защиты 1С — это служба раздачи лицензий: менеджер HASP для аппаратных ключей или кластер серверов 1С для программных. Настройте явный адрес сервера в nethasp.ini, откройте порты 475 и 1947, храните резервные пин-коды и контролируйте занятые лицензии через Admin Control Center.