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

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

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

Вариант 1. Использование программных USB-over-IP концентраторов

Если гипервизор не поддерживает удобный проброс портов или ключ физически установлен на отдельном компьютере в локальной сети, наиболее гибким решением является использование программных USB-редиректоров (таких как VirtualHere, USB Redirector). Серверная часть утилиты устанавливается на машине с физическим USB-портом, а клиентская служба монтирует устройство внутри гостевой ОС виртуальной машины.

Рассмотрим порядок настройки на примере схемы с выделенным сервером ключей:

  1. Устанавливаем серверный модуль USB-редиректора на физическом компьютере или хосте, куда физически подключен ключ 1С.
  2. В диспетчере устройств физического хоста обязательно отключаем функцию экономии энергии для корневых USB-концентраторов (снимаем флаг Разрешить отключение этого устройства для экономии энергии), чтобы избежать спонтанного отключения ключа в моменты простоя.
  3. Устанавливаем клиентский модуль в гостевой операционной системе виртуального сервера 1С.
  4. Подключаем виртуальное USB-устройство в клиенте. В гостевой ОС появится новое устройство HASP.
  5. Устанавливаем в гостевой ОС драйвер защиты HASP/LDK в режиме командной строки с ключом -i (например, haspdinst.exe -i).

Вариант 2. Штатный аппаратный проброс средствами гипервизора

Большинство современных платформ виртуализации (KVM, Xen, Proxmox, VMware ESXi, VirtualBox) поддерживают прямое подключение USB-устройств хоста в гостевую операционную систему.

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

  1. KVM и Proxmox: в свойствах виртуальной машины добавляется устройство USB Device. Рекомендуется выбирать привязку по Vendor/Device ID (для ключей Aladdin/Sentinel это 0529:0001), чтобы при переподключении в соседний порт ключ не терялся.
  2. Тип контроллера: для аппаратных ключей HASP критически важно эмулировать виртуальный контроллер USB 2.0 (EHCI). При использовании контроллера USB 3.0 (xHCI) ключи защиты нередко работают нестабильно или периодически «отваливаются».
  3. Ограничения Hyper-V: встроенный гипервизор Hyper-V не поддерживает проброс отдельных USB-устройств в фоновые системные службы. Прямой проброс контроллера через технологию дискретного назначения (DDA) блокирует динамическую память и контрольные точки, поэтому для Hyper-V предпочтительнее использовать сетевые USB-редиректоры или сетевой сервис лицензирования.
  4. Отказоустойчивость: помните, что жесткая привязка физического USB-устройства к виртуальной машине блокирует «горячую» миграцию (Live Migration / vMotion) между узлами кластера без остановки гостевой ОС.

Вариант 3. Разделение сетевых клиентских лицензий и серверного ключа

Важно различать тип используемого ключа: ключ на сервер 1С (Server HASP) или многопользовательский клиентский ключ (Net HASP).

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

  1. На физическом компьютере с ключом запускаем службу HASP License Manager.
  2. В гостевой ОС на сервере 1С или на рабочих станциях настраиваем файл конфигурации nethasp.ini (расположенный в каталоге bin/conf платформы 1С), явно прописав сетевой адрес:
    
    [NH_COMMON]
    NH_TCPIP = ENABLED
    
    [NH_TCPIP]
    NH_SERVER_ADDR = 192.168.1.100
    NH_USE_BROADCAST = DISABLED
    
  3. В сетевом экране (брандмауэре) открываем порт 475 (протоколы UDP и TCP) для беспрепятственного прохождения трафика службы лицензирования.

Вариант 4. Архитектурное решение средствами кластера 1С

Если в инфраструктуре используется несколько серверов, можно применить кластерные механизмы 1С Предприятия без проброса USB в виртуальные машины:

  1. Сервер 1С устанавливается на физический сервер с ключом и на виртуальную машину.
  2. Формируется единый кластер серверов 1С.
  3. С помощью механизма Требований назначения функциональности сервис лицензирования жестко закрепляется за физическим рабочим сервером, а ресурсоемкие рабочие процессы (rphost) и сеансы пользователей выполняются на виртуальной машине.

Вариант 5. Переход на программные лицензии

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

Это полностью снимает зависимость от физических портов, исключает проблемы с пробросом оборудования и позволяет свободно выполнять миграцию виртуальных машин между узлами виртуализации (при условии сохранения ключевых параметров виртуального оборудования, таких как BIOS GUID, имя хоста, объем ОЗУ и сетевые адаптеры).

← На главную