При обновлении отраслевых решений «1С:Предприятие» (например, «1С:Управление торговлей алкогольной продукцией», УТАП) пользователи часто сталкиваются с ошибкой «Файл защиты не найден» или «Файл описания защиты не найден». При попытке обновления сервера Системы лицензирования и защиты конфигураций (СЛК) программа установки требует извлечь аппаратные USB-ключи. Однако на практике доступ к серверу может быть ограничен регламентами безопасности или его физическим расположением в удаленном дата-центре. Разберем причины возникновения этой ситуации и пошаговые способы её устранения.
Почему возникает ошибка защиты и требование отключить ключ
Проанализируем две ключевые технические причины, которые приводят к возникновению данной проблемы:
Смена поколения защиты (переход с СЛК 2 на СЛК 3): В новых релизах отраслевых программ разработчики переводят конфигурации на современную версию защиты. СЛК 2.x и СЛК 3.x представляют собой разные программные комплексы. Они используют разные сетевые порты (СЛК 2.x использует порты 15200–15201, а СЛК 3.x — TCP-порт 9099) и регистрируются в операционной системе как независимые службы. Ошибка возникает из-за того, что обновленная конфигурация пытается обратиться к службам и внешним компонентам СЛК 3.0, в то время как на сервере всё еще активна служба СЛК 2.1.
Блокировка драйвера аппаратного ключа операционной системой: Во время установки низкоуровневого драйвера защиты (пакет upkey) активный USB-носитель удерживается ядром Windows. Если устройство подключено и опрашивается, инсталлятор не может корректно перезаписать системные файлы и обновить стек Plug-and-Play, что способно привести к сбою драйвера (код ошибки 10 или 31 в диспетчере устройств).
Способ 1. Программное отключение USB-ключа без физического извлечения
Если регламент или удаленность сервера не позволяют вынуть аппаратный ключ физически, отключим его на программном уровне перед запуском инсталлятора. Разберем последовательность действий по шагам:
Остановим службы, опрашивающие ключ защиты. В оснастке services.msc найдем и временно остановим службу Сервер СЛК (или службу сервера «1С:Предприятие», если ключ установлен непосредственно на сервере 1С).
Откроем Диспетчер устройств Windows (команда devmgmt.msc в меню «Выполнить»).
Найдем в списке устройств аппаратный ключ защиты (обычно располагается в разделах «Контроллеры USB» или «Устройства чтения смарт-карт» под наименованием защитного ключа).
Нажмем правой кнопкой мыши на устройстве и выберем пункт «Отключить устройство». В результате устройство перестанет удерживаться ядром ОС.
Запустим установку или обновление дистрибутива СЛК, подтвердив операцию.
После успешной установки драйверов и сервера СЛК вернемся в «Диспетчер устройств», нажмем правой кнопкой мыши по отключенному устройству и выберем «Включить устройство».
Запустим обновленную службу СЛК.
Для автоматизации этой процедуры на удаленных серверах можно воспользоваться командлетами PowerShell в режиме администратора:
# Поиск и программное отключение аппаратного ключа
Get-PnpDevice -FriendlyName "*СЛК*" | Disable-PnpDevice -Confirm:$false
# Повторное включение устройства после завершения установки
Get-PnpDevice -FriendlyName "*СЛК*" | Enable-PnpDevice -Confirm:$false
Способ 2. Полное удаление СЛК 2.1 и чистая установка СЛК 3.0
Если простое обновление завершается с ошибками, наиболее надежным решением является удаление устаревшей ветки СЛК и установка актуальной версии с нуля. Разберем этот процесс подробно:
Завершим все сеансы пользователей в конфигурации «1С:Предприятие».
Через классическую «Панель управления» (раздел «Программы и компоненты») полностью удалим устаревший Сервер СЛК 2.1.
Скачаем и установим актуальный дистрибутив СЛК 3.0 из каталога шаблона обновления вашей конфигурации или с официального сайта поддержки отраслевых решений.
При установке дистрибутив автоматически зарегистрирует новую системную службу и актуальные компоненты защиты.
Откроем веб-браузер и перейдем в консоль управления СЛК 3.0 по адресу http://localhost:9099 (или по IP-адресу сервера, где установлен ключ).
Проверим корректность отображения подключенного аппаратного ключа и активных лицензий.
Если после запуска конфигурации ошибка сохраняется, импортируем актуальный файл описания защиты (с расширением .datafile или .datafile3) через веб-интерфейс консоли СЛК по порту 9099. Этот файл поставляется в комплекте поставки обновления в папке шаблона.
Важные особенности настройки СЛК 3.0
Обратим внимание на ключевые технические нюансы, необходимые для бесперебойной работы системы:
Расположение внешних компонент: В клиент-серверном варианте работы внешняя компонента СЛК должна быть установлена на сервере «1С:Предприятие», так как программный код модулей защиты отраслевых конфигураций выполняется в серверном контексте. При работе с файловой базой данных компонента должна быть доступна на каждой клиентской рабочей станции.
Настройка сетевого экрана (Брандмауэра): Если сервер лицензирования СЛК вынесен на отдельный хост, необходимо открыть входящие подключения по протоколу TCP на порт 9099 в правилах Брандмауэра Windows.