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

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

Прежде чем вносить изменения в системные службы, убедитесь, что у вас есть физический доступ к серверу или права администратора. Любые манипуляции с компонентами защиты HASP или программными пинами требуют осторожности. Неправильная последовательность действий может заблокировать доступ ко всем подключенным рабочим местам.

Зачем требуется остановка службы лицензирования

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

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

Также остановка необходима при обновлении драйверов ключей защиты. Установка новых версий Hasplm поверх работающих служб часто приводит к ошибкам инициализации. Чистая установка требует полного прекращения работы всех связанных процессов в операционной системе.

⚠️ Внимание: Перед остановкой службы убедитесь, что все пользователи завершили работу в базах данных 1С. Принудительное отключение лицензий приведет к разрыву сеансов и возможной потере несохраненных данных.

📊 Какой тип лицензий вы используете чаще всего?
Аппаратные USB-ключи
Программные пин-коды
Сетевые лицензии
Локальные лицензии на ПК

Остановка службы в среде Windows

В операционных системах семейства Windows управление сервисами осуществляется через стандартную консоль или командную строку. Служба обычно называется Hasplm или 1C:Лицензионный сервер. Для доступа к интерфейсу управления нажмите комбинацию клавиш Win + R и введите команду services.msc.

В открывшемся списке найдите соответствующую строку. Щелкните по ней правой кнопкой мыши и выберите пункт Остановить. Статус службы изменится на "Остановлена". Это самый безопасный метод, так как система корректно завершит все связанные потоки и освободит занятые порты.

Для более опытных пользователей доступен вариант управления через командную строку с правами администратора. Этот способ позволяет автоматизировать процесс в скриптах. Введите следующую команду для остановки:

net stop Hasplm

Если служба была переименована или установлена в нестандартной конфигурации, имя может отличаться. В таком случае используйте команду sc query для поиска точного названия сервиса. После остановки процесс исчезнет из диспетчера задач, что подтвердит успешность операции.

☑️ Алгоритм остановки в Windows

Выполнено: 0 / 4

Управление сервисом в Linux

В среде Linux процедура зависит от используемого дистрибутива и системы инициализации. В современных версиях, таких как Ubuntu или CentOS 7+, используется система systemd. Для управления службой применяется утилита systemctl. Команда для остановки выглядит следующим образом:

sudo systemctl stop hasplm

Для дистрибутивов со старой системой инициализации SysVinit (например, старые версии Debian) используется команда service. Синтаксис остается интуитивно понятным, но требует обязательного запуска от имени суперпользователя. Убедитесь, что у вас есть права root или вы используете префикс sudo.

После выполнения команды рекомендуется проверить статус сервиса, чтобы убедиться, что он действительно не запущен. Используйте команду systemctl status hasplm или service hasplm status. В выводе должно быть указано состояние inactive или stopped.

⚠️ Внимание: В некоторых дистрибутивах Linux имя службы может отличаться от стандартного hasplm. Проверьте список активных процессов через ps -ef | grep hasplm перед вводом команд остановки.

Что делать, если служба не останавливается?

Если стандартные команды не дают результата, возможно, процесс завис. В этом случае можно использовать команду kill -9 с PID процесса, но это крайняя мера, которая может повредить файлы блокировок. Сначала попробуйте graceful shutdown через systemctl stop --timeout=30s.

Настройка клиентов после отключения сервера

После того как центральный сервер лицензирования отключен, клиентские рабочие места перестанут получать разрешения на запуск. Чтобы восстановить работоспособность в новой конфигурации, необходимо изменить настройки на компьютерах пользователей. Это особенно актуально при переходе с сетевого варианта на локальный.

В файле конфигурации 1cestart.cfg, расположенном в папке установки платформы, нужно прописать новые параметры. Если вы используете локальные ключи, убедитесь, что путь к ним указан верно. Для сетевого варианта с новым адресом сервера измените IP-адрес в настройках подключения.

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

Параметр Значение по умолчанию Измененное значение Влияние
LicenseServer 255.255.255.255 192.168.1.50 Указание конкретного IP нового сервера
LicensePort 4747 4748 Смена порта при конфликте
UseLocalLicense 0 1 Включение режима локальной проверки
Timeout 30 60 Увеличение времени ожидания ответа

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

💡

Используйте утилиты развертывания или скрипты логина для автоматического обновления файла 1cestart.cfg на всех компьютерах сети, чтобы избежать ручного редактирования на каждом рабочем месте.

Диагностика проблем с подключением

После внесения изменений часто возникают ситуации, когда клиенты не видят доступные лицензии. Первым шагом диагностики является проверка сетевого соединения. Убедитесь, что порт 4747 (или иной настроенный) открыт в брандмауэре сервера. Блокировка трафика на этом порту — самая частая причина ошибок.

Используйте утилиту telnet или Test-NetConnection в PowerShell для проверки доступности порта с клиентской машины. Если соединение не устанавливается, проблема кроется в сетевых настройках или работе антивирусного ПО. Временно отключите защитные экраны для проверки гипотезы.

Также стоит проверить логи сервера лицензирования. В Windows они обычно находятся в директории C:\Program Files\Aladdin\HASP LM\logs. В Linux логи часто пишутся в /var/log/hasplm.log. Анализ записей поможет выявить причины отказа в выдаче лицензий или ошибки инициализации ключей.

⚠️ Внимание: Интерфейсы и пути к файлам логов могут меняться в зависимости от версии драйверов защиты. Сверяйте актуальную документацию производителя ключей для вашей версии ПО.

Автоматизация процесса через скрипты

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

Ниже приведен пример простого BAT-скрипта для Windows, который останавливает службу, ждет завершения процесса и перезапускает её. Такой подход полезен при применении обновлений:

@echo off

net stop Hasplm

timeout /t 5 /nobreak

net start Hasplm

echo Служба лицензирования перезапущена

Для Linux можно создать аналогичный Bash-скрипт. Важно добавить проверку кода возврата после каждой команды, чтобы убедиться в успешности выполнения. Скрипт можно добавить в планировщик задач cron для выполнения в ночное время.

💡

Автоматизация через скрипты обеспечивает стандартизацию процесса обслуживания и минимизирует время простоя системы при плановых работах.

Часто задаваемые вопросы

Можно ли отключить сервер лицензирования, не прерывая работу пользователей?

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

Какой порт используется по умолчанию для связи с сервером 1С?

Стандартный порт для менеджера лицензий HASP4747. Однако в настройках конфигурации сервера 1С и клиента этот порт может быть изменен на любой свободный, что часто делается в целях безопасности.

Что делать, если служба не удаляется после остановки?

Если служба зависла в состоянии "Остановка", попробуйте перезагрузить сервер. В крайнем случае можно удалить ключи реестра, связанные с сервисом, но это требует глубоких знаний ОС и создания точки восстановления.

Влияет ли отключение на работу веб-клиента 1С?

Да, влияет напрямую. Веб-клиент также запрашивает лицензию у сервера защиты. Если сервер лицензирования недоступен, авторизация в веб-интерфейсе пройдет неудачно, и пользователь увидит ошибку отсутствия лицензии.

Нужно ли перезагружать компьютер после отключения службы?

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