Проблема с «сломанными» или зависшими лицензиями в экосистеме 1С:Предприятие — это классическая ситуация, с которой регулярно сталкиваются системные администраторы. Пользователи не могут войти в базу, получая ошибку о превышении количества подключений, хотя физически все рабочие места свободны. Часто это происходит из-за некорректного завершения сеансов, сбоев в работе сервера лицензирования или аппаратных проблем с ключами защиты.
Ситуация усугубляется, когда в системе накапливаются «фантомные» подключения или поврежденные записи реестра HASP. Чтобы вернуть работоспособность системы, необходимо выполнить процедуру очистки. В этой статье мы разберем как программные, так и аппаратные методы удаления некорректных лицензионных записей, а также рассмотрим нюансы работы с HASP HL и HASP SL.
Процесс восстановления требует аккуратности, так как неверные действия могут привести к полной блокировке доступа к программным продуктам. Ниже приведены пошаговые инструкции для различных типов защиты и сценариев использования.
Диагностика типа защиты и локализация проблемы
Первым шагом перед любыми манипуляциями является точное определение типа используемой защиты. В среде 1С:Предприятие распространены два основных вида: программные пин-коды и аппаратные ключи HASP. Ошибка в выборе метода очистки может привести к потере данных или необходимости переустановки платформы.
Для начала откройте консоль администрирования сервера 1С:Предприятие. Перейдите в свойства кластера серверов и выберите вкладку «Лицензии». Здесь отображается текущее состояние выдачи прав доступа. Если вы видите сеансы, которые висят в статусе «активен» длительное время без активности пользователя, это явный признак сброса соединения без корректного выхода.
Также стоит проверить физическое наличие ключей защиты на сервере. Если используется сетевой ключ HASP HL, убедитесь, что индикаторы на устройстве мигают корректно. В случае с программной защитой проверьте наличие файла hasplm.ini в директории установки сервера защиты. Несоответствие конфигурации часто вызывает ошибки чтения лицензий.
Используйте утилиту haspdongle -v в командной строке для быстрой проверки видимости аппаратных ключей системой без перезагрузки служб.
Важно понимать разницу между клиентской и серверной лицензией. Ошибки часто возникают именно на стыке этих уровней, когда сервер считает место занятым, а клиент уже отключился. В таблице ниже приведены основные симптомы и соответствующие им типы защиты.
| Симптом ошибки | Вероятный тип защиты | Метод решения |
|---|---|---|
| «Превышено количество подключений» | Сетевой HASP или Пин-код | Сброс сеансов в консоли |
| «Лицензия не найдена» | Локальный HASP | Переустановка драйверов HASP |
| «Недостаточно лицензий» (при наличии свободных) | Программная (Пин-код) | Очистка реестра HASP |
| Сервер защиты не запущен | Любой | Перезапуск службы hasplms |
Удаление зависших сеансов через консоль администрирования
Наиболее безопасный и быстрый способ освободить «ломаные» лицензии — это работа через штатные средства управления кластером серверов. Этот метод не требует остановки служб и безопасен для целостности базы данных, если выполняется в период низкой активности пользователей.
Запустите консоль администрирования серверов 1С:Предприятие с правами администратора. В дереве объектов раскройте узел вашего кластера и перейдите в раздел «Сеансы». Вы увидите список всех активных подключений с указанием пользователя, компьютера и времени начала сеанса.
Выделите сеансы, которые числятся активными, но пользователь фактически не работает (например, время бездействия превышает 30 минут). Нажмите правой кнопкой мыши и выберите пункт «Удалить». Система принудительно разорвет соединение и вернет лицензию в пул свободных ресурсов.
☑️ Проверка освобождения лицензии
Если сеанс не удаляется стандартным методом или список сеансов пуст, а ошибка сохраняется, проблема может лежать глубже — на уровне службы лицензирования. В таком случае необходимо переходить к более радикальным мерам, связанным с перезапуском служб или очисткой кэша.
⚠️ Внимание: Принудительное удаление сеанса может привести к потере несохраненных данных пользователем. Убедитесь, что сеанс действительно «мертв», прежде чем прерывать его.
Работа с программными пин-кодами и реестром HASP
Программные лицензии (пин-коды) хранятся в защищенной области реестра Windows и специальных файлах конфигурации. При сбоях электропитания или некорректном обновлении драйверов эти записи могут повредиться, что воспринимается системой как отсутствие лицензии или её некорректное состояние.
Для очистки поврежденных записей программных лицензий необходимо использовать утилиту командной строки hasp_update.exe или специализированные скрипты от фирмы «1С». Однако, в большинстве случаев достаточно корректной переустановки драйверов защиты с полной очисткой предыдущей версии.
Выполните следующую последовательность действий для глубокой очистки:
- 🔹 Остановите службу
SafeNet HASP License Managerчерез панель управления службами Windows. - 🔹 Удалите текущие драйверы защиты через «Программы и компоненты».
- 🔹 Вручную удалите остаточные файлы из директории
C:\Program Files (x86)\Aladdin\eHASPLM. - 🔹 Скачайте актуальную версию драйверов с официального портала технической поддержки.
После установки новых драйверов и перезагрузки сервера, пин-коды необходимо активировать заново. Введите код активации в окне запуска 1С:Предприятие или через мастер установки лицензий. Система создаст новые, корректные записи в реестре.
Где хранятся пин-коды физически?
Программные лицензии привязаны к уникальному идентификатору оборудования (ID компьютера). При замене материнской платы или жесткого диска пин-код слетает и требует повторной активации или переноса через файл переноса.
Иногда помогает ручной сброс счетчиков через утилиту haspdongle. Запустите командную строку от имени администратора и введите команду для сброса состояния ключа. Это действие аналогично выниманию и вставке физического ключа, но выполняется программно.
haspdongle -reset -id [ID_КЛЮЧА]
Очистка аппаратных ключей HASP HL и HASP SL
Аппаратные ключи защиты HASP HL (зеленые, красные, синие) и HASP SL (сетевые) менее подвержены программным сбоям, но их драйверы могут накапливать ошибки в очереди запросов. Если ключ физически исправен, но 1С его «не видит», проблема чаще всего в зависшем сервисе лицензирования.
Служба Hasplms (HASP License Manager) отвечает за опрос ключей и выдачу прав доступа. При длительной работе без перезагрузки она может перестать корректно обрабатывать запросы от клиентов, создавая иллюзию отсутствия лицензий. Перезапуск этой службы часто решает проблему мгновенно.
Откройте диспетчер задач или консоль services.msc. Найдите службу SafeNet HASP License Manager. Нажмите правой кнопкой мыши и выберите «Перезапустить». В логах службы при этом не должно быть критических ошибок. Если ошибка повторяется, проверьте порт подключения (по умолчанию 475).
⚠️ Внимание: Не вынимайте аппаратный ключ HASP из USB-порта во время работы сервера 1С. Это гарантированно приведет к падению всех активных сеансов и возможной порче базы данных.
Для сетевых ключей HASP SL важно проверить настройки файла hasplm.ini. Убедитесь, что параметр bind_to соответствует IP-адресу сетевого интерфейса, через который клиенты обращаются к серверу лицензий. Неверная привязка к интерфейсу делает лицензию невидимой для сети.
Перезапуск службы Hasplms — первое действие при потере связи с аппаратным ключом, не требующее остановки сервера 1С.
Программный сброс и утилиты очистки реестра
В сложных случаях, когда стандартные методы не помогают, может потребоваться использование специализированных утилит для очистки реестра от «мусорных» записей о лицензиях. Это актуально для ситуаций, когда на сервере ранее устанавливались демо-версии или ключи от других конфигураций.
Фирма «1С» предоставляет утилиту cleann.exe (или аналогичные скрипты в составе дистрибутива сервера), предназначенную для очистки информации о лицензиях из реестра. Перед её использованием обязательно создайте точку восстановления системы или резервную копию реестра.
Алгоритм действий при использовании утилит очистки:
- 🛡️ Создайте резервную копию ветки реестра
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\HASP License Manager. - 🛡️ Запустите утилиту очистки в режиме эмуляции (если доступно) для просмотра удаляемых записей.
- 🛡️ Выполните реальную очистку и перезагрузите сервер.
- 🛡️ Проверьте работоспособность лицензий в интерфейсе 1С.
Также стоит обратить внимание на логи событий Windows. В разделе «Журналы Windows» -> «Приложения» часто содержатся ошибки от источника HASP или 1C:Enterprise Server, которые указывают на конкретную причину сбоя лицензии, например, истечение срока действия или блокировку антивирусом.
⚠️ Внимание: Прямое редактирование реестра без резервной копии может привести к неработоспособности всей системы лицензирования. Действуйте только по инструкции.
Что делать если утилита очистки не находит ключи?
Убедитесь, что вы запускаете утилиту с правами администратора и что архитектура утилиты (x86/x64) соответствует архитектуре установленной платформы 1С.
Профилактика проблем с лицензированием 1С
Чтобы избежать повторного появления «ломаных» лицензий, необходимо внедрить ряд профилактических мер. Стабильность работы системы лицензирования напрямую зависит от качества электропитания, сетевого оборудования и своевременности обновлений драйверов.
Рекомендуется настроить автоматический мониторинг службы лицензирования. Скрипт может проверять статус службы hasplms каждую минуту и автоматически перезапускать её в случае зависания. Это позволит минимизировать время простоя пользователей.
Регулярно обновляйте платформу 1С:Предприятие и драйверы защиты. В новых версиях платформы часто исправляются ошибки работы с конкретными ревизиями ключей HASP. Игнорирование обновлений может привести к конфликтам версий протоколов защиты.
Также важно следить за температурным режимом сервера. Перегрев USB-контроллеров может приводить к кратковременным отключениям аппаратных ключей, что система воспринимает как извлечение устройства и блокирует доступ.
Настройте в антивирусе исключение для процессов hasplm.exe и rmanserver.exe, чтобы защита не блокировала их сетевую активность.
Часто задаваемые вопросы (FAQ)
Можно ли удалить лицензию 1С без удаления самой программы?
Да, удаление лицензии (пин-кода или драйверов ключа) не требует деинсталляции платформы 1С. Вы можете очистить лицензии через консоль или утилиты, оставив конфигурации и базы данных нетронутыми.
Что делать, если ошибка «Лицензия не найдена» появляется только у одного пользователя?
Скорее всего, проблема на стороне клиента: неверные настройки файла hasplm.ini на рабочем месте, блокировка порта фаерволом или конфликт сетевых настроек. Проверьте доступность сервера лицензий с этого конкретного ПК через команду ping и telnet.
Как перенести программную лицензию на другой компьютер?
Для переноса пин-кода необходимо создать файл переноса на старом компьютере с помощью утилиты активации, затем активировать этот файл на новом компьютере. Просто скопировать реестр нельзя, так как лицензия привязана к железу.
Влияет ли антивирус на работу ключей HASP?
Да, некоторые антивирусы могут блокировать драйверы ключей защиты, считая их подозрительными. Необходимо добавить процессы службы лицензирования и пути к драйверам в исключения антивирусного ПО.
Почему после перезагрузки сервера лицензии снова «ломаются»?
Это может указывать на аппаратную неисправность USB-порта, проблемы с электропитанием сервера или повреждение файловой системы в области хранения системных файлов драйверов. Требуется диагностика оборудования.