Как проверить работу ключа защиты сервера 1С на Linux

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

При работе сервера 1С:Предприятие в операционных системах семейства Linux администраторы часто сталкиваются с ситуацией, когда при подключении более 10–12 пользователей система начинает выдавать ошибку об отсутствии лицензий. Рассмотрим подробно причину такого поведения платформы, научимся идентифицировать аппаратные ключи защиты и проверим их корректность работы на сервере.

Поведение сервера 1С на Linux без ключа защиты

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

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

Проверка маркировки и архитектурного соответствия ключей

Перед диагностикой драйверов необходимо убедиться, что физический ключ защиты соответствует разрядности установленного сервера 1С. Разберем маркировки ключей HASP:

  1. Серверные ключи (фиолетовый корпус):
    • ENSR8 — 32-разрядный ключ защиты сервера 1С:Предприятие.
    • EN8SA — 64-разрядный ключ защиты сервера 1С:Предприятие.
  2. Клиентские ключи (красный корпус):
    • ORGL8 — пользовательские сетевые лицензии.

Важно: если на 64-битный сервер 1С установлена платформа соответствующей разрядности (x86_64), но в USB-порт вставлен 32-битный ключ ENSR8, сервер не сможет его использовать. Убедитесь с помощью команды uname -a, что архитектура операционной системы и сервера 1С совпадает с типом используемого ключа.

Диагностика USB-устройства на уровне операционной системы

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

Воспользуемся утилитой usbkeytest от Eтерсофт для поиска оборудования Aladdin HASP:


# /usr/sbin/usbkeytest --list
ID: 0529:0001, Bus: 003, Device: 003, Major: 189, Minor: 258

# /usr/sbin/usbkeytest --detect
aladdin

Если утилита возвращает ID 0529:0001 и тип aladdin, значит, физически ключ подключен и определяется шиной USB. Если ключ не виден, проанализируем следующие причины:

  1. Виртуализация (Proxmox VE / KVM / LXC): при работе сервера в среде виртуализации (на что указывает ядро с префиксом -pve) необходимо настроить правильный проброс (USB Passthrough) физического порта в виртуальную машину. В случае LXC-контейнеров требуется явно прописать правила для символьных устройств c 189:* в конфигурационном файле контейнера.
  2. Права udev: убедитесь, что правила udev создают корректные права доступа на чтение и запись к файлам устройств в директории /dev/bus/usb/.

Проверка драйверов и системных служб

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


systemctl status aksusbd
systemctl status haspd

Если службы не запускаются или работают некорректно, проанализируем частую причину: отсутствие 32-битных библиотек. Бинарные модули драйверов Sentinel/Aladdin часто требуют наличия 32-битного окружения. В Debian/Ubuntu-системах установите пакет libc6-i386 и сопутствующие библиотеки 32-битной архитектуры.

Проверка лицензий через Sentinel Admin Control Center

Если на сервере используется драйвер Sentinel LDK Runtime, работы с ключами можно проконтролировать через веб-интерфейс. Откроем браузер и перейдем по адресу:

http://localhost:1947 или http://<IP_сервера>:1947

В разделе HASP Keys отображаются все обнаруженные ключи, их серии, версии прошивок и количество доступных лицензий. Если ключ отображается в контрольном центре, но 1С его не использует, проверьте настройки файла nethasp.ini, расположенного в каталоге /opt/1C/v8.3/i386/conf/ или /opt/1C/v8.3/x86_64/conf/, чтобы явно указать параметр поиска NH_SERVER_ADDR.

← На главную