Что делать, если 1С пишет «Не найдена лицензия» при работе через RDP: настраиваем HASP и nethasp.ini

Системный администратор IT и автоматизация бизнеса
← На главную

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

В этой статье мы подробно разберем, почему возникает эта ошибка, как устроена защита «1С» на базе HASP, и по шагам настроим сетевое распределение лицензий с помощью конфигурационных файлов nethasp.ini и nhsrv.ini.

Выясняем причину: почему локальные ключи не работают в RDP

Проанализируем базовое ограничение платформы «1С:Предприятие», о котором часто забывают. Локальный аппаратный ключ защиты (обычно он фиолетового цвета, с маркировкой ORGL8, H4M1 или HL Pro) рассчитан на работу строго на одном физическом компьютере. Платформа «1С» намеренно блокирует опрос локальных USB-ключей, если запуск программы происходит внутри терминальной сессии RDP.

Существует лишь одно редкое исключение из этого правила: локальный ключ сработает в RDP, если вы подключитесь к серверу в режиме консоли (сессия 0) с помощью команды mstsc /admin (или mstsc /console для старых версий Windows Server). Однако работать в таком режиме сможет только один-единственный пользователь. Как только попытается зайти второй сотрудник, система выдаст ошибку лицензирования.

Для полноценной работы в терминальном режиме необходимо использовать один из двух вариантов:

  1. Многопользовательские программные лицензии (желтый бланк с пин-кодами, которые активируются непосредственно на сервере терминалов).
  2. Сетевые аппаратные ключи защиты (обычно красного цвета, маркировки ORGL8 Net 5, ORGL8 Net 10, ORGL8 Net 20 и т. д. до 500+ пользователей).

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

Особенности установки HASP License Manager на Windows Server 2008 R2 и новее

Часто администраторы сталкиваются с тем, что служба HASP License Manager (HLM) отказывается устанавливаться или запускаться на современных серверных операционных системах. Разберем основные причины этой проблемы:

Во-первых, установка драйверов защиты и службы менеджера лицензий из стандартной RDP-сессии часто блокируется механизмами защиты ядра ОС. Чтобы успешно выполнить установку, обязательно подключайтесь к серверу в консольном режиме (mstsc /admin) или выполняйте инсталляцию непосредственно за физическим монитором машины.

Во-вторых, в системе может возникнуть конфликт старых версий драйверов. Если ранее на сервере устанавливалась платформа «1С» с включенной опцией «Установить драйвер защиты», то встроенные службы будут конфликтовать с полноценным менеджером лицензий. Чтобы исправить это, выполним полную очистку системы:

  1. Скачайте официальную утилиту командной строки для установки драйверов HASP (обычно файл называется haspdinst.exe).
  2. Запустите командную строку от имени Администратора и выполните очистку системы: haspdinst.exe -purge
  3. Перезагрузите сервер.
  4. Установите драйвер заново, а затем разверните службу HASP License Manager в качестве системной службы (Service), а не обычного приложения (Application). Это гарантирует запуск менеджера лицензий до входа пользователей в систему.

Влияние виртуализации и сбоев питания: почему пропадают ключи

Если ваша инфраструктура развернута на виртуальных машинах (например, Hyper-V, VMware ESXi или Proxmox), физические USB-порты хоста пробрасываются в гостевую операционную систему с помощью специального софта (USB-over-IP) или аппаратных концентраторов (например, AnywhereUSB).

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

В такой ситуации перезапустите службу менеджера лицензий вручную через оснастку services.msc (служба HASP Loader) после того, как убедитесь, что USB-устройство успешно определилось в диспетчере устройств виртуальной машины.

Пошаговая настройка конфигурационных файлов для раздачи лицензий

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

Критически важный нюанс: поскольку пользователи работают в терминальном режиме, сама программа «1С» физически выполняется на сервере терминалов. Это значит, что редактировать конфигурационный файл nethasp.ini нужно только на сервере терминалов, а не на локальных компьютерах сотрудников! Любые правки на рабочих местах пользователей RDP будут проигнорированы.

Шаг 1. Настройка сервера лицензий (где физически установлен ключ)

Перейдем на компьютер, в который установлен красный USB-ключ. Найдем в каталоге установленного менеджера лицензий файл конфигурации nhsrv.ini. Откроем его текстовым редактором и зададим уникальное имя для нашего менеджера лицензий (имя не должно превышать 7 символов):


[NHS_SERVER]
NHS_SERVERNAMES = hlmSRV

После изменения этого параметра обязательно перезапустите службу HASP Loader на этом компьютере.

Шаг 2. Настройка терминального сервера (клиентская часть)

Перейдем на сервер терминалов. Нам нужно отредактировать файл nethasp.ini. Обычно он располагается в каталоге установленной платформы по пути: C:\Program Files (x86)\1cv8\conf\nethasp.ini (или в аналогичной папке для 64-битной версии платформы).

Откроем его и принудительно отключим неиспользуемые протоколы (например, устаревший IPX и NetBIOS), оставив только TCP/IP. Это существенно ускорит запуск «1С» и избавит от лишнего широковещательного трафика в сети. Укажем точный IP-адрес компьютера, на котором мы настроили менеджер лицензий на Шаге 1:


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

[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.50
NH_SERVER_NAME = hlmSRV
NH_TCPIP_METHOD = UDP

Разберем параметры подробнее:

Настройка Брандмауэра и особенности работы утилиты Aladdin Monitor

Часто после прописывания всех IP-адресов лицензия по-прежнему не обнаруживается. Причиной тому является сетевой экран (брандмауэр Windows или сторонний антивирус).

Менеджер лицензий HASP осуществляет обмен данными по порту 475. Вам необходимо создать правила для входящих и исходящих подключений на компьютере с ключом и на сервере терминалов:

Для диагностики работы ключей системные администраторы используют утилиту Aladdin Monitor (AKS Monitor). Однако при работе с ней нужно учитывать важную техническую особенность: сессионный принцип отображения.

Когда вы только запустили менеджер лицензий и открыли Aladdin Monitor, вы увидите IP-адрес сервера в списке, но сам сетевой ключ и доступные лицензии отображаться не будут. Ключ появится в списке монитора только тогда, когда хотя бы один пользователь успешно запустит «1С» и получит активную лицензию. До этого момента таблица лицензий будет пустой, что часто вводит администраторов в заблуждение.

Также помните, что Aladdin Monitor общается с менеджером лицензий строго по протоколу UDP (порт 475). Если этот протокол заблокирован в сети, но TCP открыт, «1С» сможет запускаться и работать, но утилита мониторинга показывать ключ не будет.

Резюме и правила хорошего тона при работе с лицензиями «1С»

Подведем итог и систематизируем правила, которые помогут вам избежать проблем с аппаратной защитой:

← На главную