Как установить аппаратный HASP-ключ защиты 1С на сервере и настроить его в терминальном режиме?

Системный администратор 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

При развертывании системы 1С:Предприятие на сервере под управлением операционной системы Windows Server (в нашем случае рассматривается Windows Server 2012) администраторы часто сталкиваются с аппаратными ключами защиты HASP. Если платформа устанавливается не как сервер приложений, а базы данных работают в файловом режиме (например, конфигурация 1С:Зарплата и Управление Персоналом), возникает множество неочевидных нюансов. Особенно остро проблемы проявляются, когда пользователи работают в терминальных сессиях (RDP).

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

Анализ проблемы: почему возникает ошибка защиты?

Рассмотрим классическую ситуацию, описанную пользователем. На сервер установлена платформа 1С:Предприятие 8.3. В USB-порт сервера вставлен сетевой многопользовательский ключ (маркировка H4 NET5 ORGL8 на 5 пользователей). Ключ светится, Windows определяет его в диспетчере устройств. Однако при запуске базы в терминальной сессии система выдает критическую ошибку:

Warning=15, ORGL8 Сетевой, не установлен

Проанализируем эту диагностическую запись. Код Warning=15 (или полный лог: Net Status=0, System Error=0, Warning=15) на техническом языке разработчиков системы защиты Sentinel HASP означает следующее: «Менеджер лицензий не найден» или «Менеджер лицензий не отвечает».

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

Особенности работы однопользовательских и сетевых ключей в терминале

Перед тем как перейти к настройке, необходимо четко понимать базовое ограничение технологии HASP:

Таким образом, просто вставить сетевой ключ в USB-разъем сервера недостаточно. Без установленной и запущенной службы HASP LM раздача лицензий в терминале осуществляться не будет.

Пошаговая инструкция по установке и настройке системы защиты

Рассмотрим по шагам весь процесс подготовки сервера к работе с аппаратным ключом.

Шаг 1. Физическое подключение и установка драйвера

Вставьте аппаратный USB-ключ в свободный порт сервера. Убедитесь, что светодиод внутри ключа горит ровным красным светом. Если ключ не горит, возможно, отключен сам USB-порт в настройках BIOS/UEFI сервера, либо порт неисправен.

Далее необходимо установить актуальный драйвер защиты (Sentinel HASP Run-time Installer) — в этом поможет автоматизация установки драйверов и ПО на сервера. Скачать его можно с официального сайта технологической поддержки 1С (ИТС) или с сайта производителя Aladdin/Thales. Настоятельно рекомендуется использовать установщик командной строки (Command Line Installation), так как он работает наиболее стабильно на серверных ОС.

Для установки драйвера запустите командную строку от имени администратора и выполните команду:

haspdinst.exe -i

После завершения установки в диспетчере устройств Windows в ветке «Контроллеры USB» (Universal Serial Bus controllers) должны появиться три устройства: Sentinel 3 Key Dongle, Sentinel HASP Key и Sentinel USB Key.

Шаг 2. Установка службы HASP License Manager

Для раздачи сетевых лицензий скачайте утилиту HASP HL License Manager. При установке программа предложит два варианта работы: в качестве обычного приложения (Application) или в качестве системной службы (Service).

Обязательно выбирайте установку в качестве службы (Service)! Это гарантирует, что менеджер лицензий будет запускаться автоматически при старте физического сервера, независимо от того, зашел ли какой-либо администратор в систему.

После завершения установки в списке служб Windows (Services.msc) должна появиться служба с именем HASP Loader (исполняемый файл nhsrvice.exe). Убедитесь, что тип запуска установлен в положение «Автоматически», а состояние службы — «Выполняется».

Шаг 3. Настройка Брандмауэра Windows (Firewall)

Менеджер лицензий взаимодействует с платформой 1С по сети. По умолчанию для обмена данными используется сетевой порт 475 по протоколам UDP и TCP. Если на сервере включен брандмауэр Windows (что является стандартом безопасности), он заблокирует эти запросы, и пользователи получат ту самую ошибку Warning=15.

Создадим разрешающее правило в Брандмауэре Windows:

  1. Откройте «Монитор брандмауэра Защитника Windows в режиме повышенной безопасности» (wf.msc).
  2. Выберите раздел «Правила для входящих подключений» (Inbound Rules) и нажмите «Создать правило».
  3. Выберите тип правила «Для порта» (Port), нажмите «Далее».
  4. Укажите протокол TCP, а в поле определенных локальных портов введите 475. Нажмите «Далее».
  5. Выберите «Разрешить подключение», укажите профили сети (Доменный, Частный) и задайте имя правилу, например: 1C HASP LM (TCP).
  6. Повторите операцию, создав аналогичное входящее правило для протокола UDP на порт 475 (назовите его 1C HASP LM (UDP)).

Альтернативный и более надежный вариант — разрешить любую сетевую активность непосредственно для исполняемого файла службы C:\Windows\System32\nhsrvice.exe (или пути, куда была установлена служба HASP Loader).

Шаг 4. Оптимизация поиска ключа через nethasp.ini

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

Чтобы ускорить запуск платформы до нескольких секунд, мы жестко пропишем адрес сервера лицензий в файле настроек защиты. Этот файл называется nethasp.ini.

В зависимости от разрядности платформы и операционной системы, файл по умолчанию находится по путям:

Откройте файл nethasp.ini с помощью текстового редактора (запущенного от имени администратора) и приведите разделы [NH_COMMON] и [NH_TCPIP] к следующему виду (раскомментируйте нужные строки, убрав символ точки с запятой):


[NH_COMMON]
NH_TCPIP = Enabled        ; Разрешаем использование протокола TCP/IP

[NH_TCPIP]
NH_SERVER_ADDR = 127.0.0.1 ; IP-адрес сервера, где установлен ключ и служба HASP LM
NH_PORT_NUMBER = 475      ; Стандартный порт HASP
NH_TCPIP_METHOD = UDP     ; Метод обмена (UDP работает быстрее)
NH_USE_BROADCAST = Disabled ; Отключаем долгий широковещательный поиск по всей сети

Важное примечание: Если пользователи работают на том же сервере, где физически установлен ключ (в терминальном режиме), в параметре NH_SERVER_ADDR мы указываем петлевой адрес 127.0.0.1. Если же база файловая, но пользователи запускают 1С со своих локальных компьютеров, то в файлах nethasp.ini на их рабочих станциях необходимо прописать реальный статический IP-адрес сервера в локальной сети (например, 192.168.1.100).

Отключение широковещательного поиска (NH_USE_BROADCAST = Disabled) мгновенно убирает задержку при запуске программы.

Важные подводные камни при работе с аппаратными ключами

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

Проблема использования нескольких ключей одной серии

Очень распространенная ошибка администрирования: попытка установить два сетевых ключа одной серии на один физический сервер. Например, если у вас есть ключ на 5 пользователей (серия ORGL8) и компания докупила еще один ключ на 10 пользователей той же серии ORGL8.

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

Как решить эту проблему?

  1. Произвести апгрейд (обмен) ключей у партнеров фирмы 1С, сдав два старых ключа и получив взамен один сетевой ключ большей емкости (например, на 20 пользователей). Это наиболее правильный путь.
  2. Разнести ключи по разным физическим или виртуальным машинам в локальной сети. На каждом сервере запускается своя служба HASP LM со своим ключом. На клиентах в файле nethasp.ini адреса серверов перечисляются через запятую в параметре NH_SERVER_ADDR:
    NH_SERVER_ADDR = 192.168.1.100, 192.168.1.101
  3. Использовать ключи разных серий. На одном сервере без проблем уживаются ключи серий ORGL8 (основная многопользовательская), ORG8A (дополнительная многопользовательская) и ORG8B (еще одна дополнительная многопользовательская). Они не конфликтуют друг с другом.

Мониторинг активных лицензий

Для администрирования и оперативного контроля занятых лицензий рекомендуется использовать бесплатную утилиту от разработчика защиты — HASP HL Monitor (известную также как AKS Monitor). Для этой задачи есть обработка для принудительного завершения сеансов 1С.

Установив эту утилиту на любой компьютер администратора, вы сможете в реальном времени подключаться к службе HASP LM по IP-адресу сервера и видеть:

Специфика подсчета лицензий в файловом режиме

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

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

При использовании современной программной защиты (пин-кодов) по умолчанию лицензируется каждый запуск (каждый сеанс), что привело бы к расходу трех лицензий в аналогичной ситуации. Таким образом, использование аппаратного HASP-ключа в связке с терминальным сервером позволяет существенно экономить лицензии компании.

← На главную