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

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

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

Причина 1: Устранение технической возможности работы без лицензии

Для начала проанализируем ситуацию, описанную в вопросе: "Работали на платформе 8.3.22.1750, ключей на сервер не было, и 3-4 пользователя заходили. Поставили 8.3.23.2040 — стала запрашивать ключ".

Важно понимать разницу между юридическим требованием и техническим ограничением.

  1. Юридически: Лицензионное соглашение 1С всегда требовало наличие отдельной лицензии на сервер 1С:Предприятия (x86-64 или x86) для работы в клиент-серверном варианте, независимо от операционной системы и количества пользователей.
  2. Технически: В старых версиях платформы под Linux существовала особенность (или "дыра"), которая позволяла запускать службу агента сервера ragent и один рабочий процесс rphost без наличия лицензии, если количество сеансов было невелико (обычно до 12 подключений).

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

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

Причина 2: Проблемы с видимостью аппаратного ключа HASP

Рассмотрим вторую часть проблемы: "Ключ воткнули, HASP аппаратный серверный. Тоже не видит". Если у вас есть физический USB-ключ, но сервер 1С на Linux его не распознает, причин может быть несколько. Проанализируем их по порядку, опираясь на общую справку по администрированию систем и 1С.

1. Отсутствие или некорректная работа драйвера защиты

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

Для работы аппаратных ключей необходимо наличие запущенного процесса aksusbd (или usbhaspd в старых версиях). Убедитесь, что вы скачали драйвер Sentinel (HASP) для Linux и установили его.

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

systemctl status aksusbd

Если служба не запущена или отсутствует, сервер 1С не сможет взаимодействовать с USB-ключом.

2. Несоответствие разрядности ключа и сервера (Самая частая ошибка)

Это критический момент, о котором часто забывают. Серверные ключи 1С бывают двух типов, и они не взаимозаменяемы:

  1. 32-битный серверный ключ (маркировка EN8SA, обычно зеленого цвета). Он позволяет запускать только 32-битную версию сервера 1С (пакеты 1c-enterprise-server i386).
  2. 64-битный серверный ключ (маркировка ENSR8, также зеленого цвета). Позволяет запускать 64-битную версию сервера 1С (пакеты 1c-enterprise-server64).

Если вы установили на Linux современную 64-битную версию сервера 1С (что логично для современных ОС), но пытаетесь использовать старый ключ от 32-битного сервера (который, например, остался от старой установки на Windows Server 2008), сервер работать не будет. Платформа увидит ключ, определит, что он не подходит для текущей разрядности (x86-64), и продолжит сообщать об отсутствии лицензии.

Как проверить: Посмотрите маркировку на самом USB-ключе. Если там написано EN8SA — он не подойдет для 64-битного сервера. Решением будет либо апгрейд ключа (обмен с доплатой), либо установка 32-битной версии сервера 1С (что на Linux может потребовать установки множества 32-битных библиотек совместимости и ограничит использование оперативной памяти).

3. Локальное подключение ключа

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

Ответ однозначный: Нет.

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

Рекомендации по устранению проблемы

Давайте систематизируем шаги, которые необходимо предпринять для восстановления работоспособности системы:

  1. Проверьте драйверы. Убедитесь, что в Linux установлен пакет драйверов HASP и служба aksusbd активна. Помните, что иногда требуется правильный рестарт сервера 1С с очисткой сеансовых данных через systemd, чтобы изменения вступили в силу. Команда lsusb должна показывать наличие ключа в системе.
  2. Проверьте маркировку ключа. Убедитесь, что вы используете ключ ENSR8 (для 64-битного сервера). Если у вас ключ EN8SA, а сервер 64-битный — лицензия не активируется.
  3. Вариант "Мини-сервер". Если у вас небольшая компания (до 5 пользователей) и покупка полноценной лицензии на сервер x86-64 кажется слишком дорогой, рассмотрите приобретение лицензии "1С:Предприятие 8.3. Сервер МИНИ на 5 подключений". Это легальный и более бюджетный способ лицензирования для малых внедрений, который снимет техническую блокировку.
  4. Программные лицензии. Если с пробросом USB-ключа в виртуальную среду Linux возникают сложности, надежным вариантом будет использование программной лицензии. Для целей разработки также доступна установка комьюнити-лицензии разработчика на сервер 1С без графического интерфейса.

Заключение

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

← На главную