Чистим компьютер и сервер от взломанной лицензии 1С и возвращаем легальную защиту
Содержание
Чтобы удалить ломаную лицензию 1С, уберите три вещи: эмулятор ключа HASP (драйвер и его записи в реестре), подменённые файлы платформы и чужие файлы лицензий *.lic из каталога C:\ProgramData\1C\licenses (на Linux — /var/1C/licenses). Затем переустановите платформу с чистого дистрибутива, поставьте штатный драйвер защиты и активируйте купленную лицензию. На сервере 1С дополнительно перезапускают службу агента и чистят кэш кластера.
«Ломаной» админы называют две разные ситуации. Первая — на машине стоит взлом: эмулятор ключа или пропатченная платформа. Вторая — легальная лицензия сломалась: файл повреждён, ключ не виден, после замены железа активация слетела. Порядок очистки почти одинаковый, разница только в том, что вы восстанавливаете в конце.
Делайте всё в нерабочее время. Перезапуск службы сервера 1С, удаление драйвера и перезагрузка оборвут сеансы всех пользователей. Предупредите людей заранее и сделайте выгрузку баз в .dt.
Диагностика: какая лицензия сломана и где она лежит
Начните с того, что именно видит платформа. Если 1С не находит лицензию, она показывает сообщение с перечнем причин, например: Не обнаружена лицензия для использования программы, а ниже — Не найдена программная лицензия, Не найден локальный ключ защиты, Не найден сетевой ключ защиты. Этот список подсказывает, какие способы защиты платформа перебирала.
Что проверить по порядку:
- 🔍 Файлы лицензий. Откройте
C:\ProgramData\1C\licensesи посмотрите, какие там.lic. Чужие файлы с неизвестным регистрационным номером, файлы с датой «вчера» без активации с вашей стороны — кандидаты на удаление. - 🔍 Диспетчер устройств. Включите
Вид → Показать скрытые устройства. Виртуальные USB-устройства с названиями вродеVirtual USB MultiKeyили неизвестные шины в разделе системных устройств — признак эмулятора. - 🔍 Службы. В
services.mscнайдите всё, что связано с HASP и Sentinel. Штатная служба для ключей нового поколения —Sentinel LDK License Manager. Посторонние службы с невнятными именами и без издателя — подозрительны. - 🔍 Режим подписи драйверов. Эмуляторы часто требуют тестовый режим Windows. Он виден по надписи «Тестовый режим» в правом нижнем углу рабочего стола.
- 🔍 Каталог платформы. Сравните размер и дату изменения библиотек в
C:\Program Files\1cv8\<версия>\binс такой же версией на заведомо чистой машине. Разные даты у одноимённых.dllвыдают подмену.
Для программных лицензий есть консольная утилита ring из состава платформы. Команда ring license list показывает установленные лицензии, подробности по каждой — ring license info (точный синтаксис параметров смотрите в ring help license).
Удаление драйверов защиты HASP и эмуляторов ключа
Эмулятор работает как драйвер: он изображает подключённый ключ HASP, хотя ключа нет. Удалять его нужно вместе со штатным драйвером, чтобы потом поставить защиту начисто.
- Закройте 1С на этой машине. На сервере остановите службу агента сервера 1С.
- Откройте Диспетчер устройств, включите показ скрытых устройств.
- Удалите виртуальные USB-устройства эмулятора. В окне удаления поставьте галочку «Удалить программы драйверов для этого устройства».
- Удалите драйвер Sentinel HASP/LDK. Это делают через
Параметры → Приложенияили утилитой установки драйвера из дистрибутива с ключом удаления:
haspdinst.exe -r
- Если эмулятор включал тестовый режим подписи, верните обычный режим и перезагрузите компьютер:
bcdedit /set testsigning off
- После перезагрузки ещё раз загляните в Диспетчер устройств. Виртуальных устройств быть не должно.
Если драйвер эмулятора не удаляется («устройство используется»), загрузите Windows в безопасном режиме и повторите шаг 3. В безопасном режиме сторонние драйверы не стартуют.
Подменённые библиотеки платформы удалением драйвера не лечатся. Удалите платформу через Параметры → Приложения, затем вручную удалите оставшийся каталог C:\Program Files\1cv8\<версия> и установите ту же версию из дистрибутива, скачанного по вашей подписке. Базы при этом не пострадают: они хранятся отдельно от каталога платформы.
Ручная очистка реестра Windows
После удаления эмуляторов в реестре часто остаются их ветки. Сами по себе они не мешают, но эмулятор с остатками конфигурации может «воскреснуть» при повторной установке какого-нибудь «помощника». Проще вычистить.
Перед правкой экспортируйте ветку: правый клик → «Экспортировать». Удаляйте только то, что однозначно относится к эмулятору.
Где искать следы:
| Ветка реестра | Что там бывает | Что делать |
|---|---|---|
HKLM\SYSTEM\CurrentControlSet\Services\Emulator | Дампы ключей эмулятора (вложенные разделы HASP\Dump) | Удалить ветку целиком |
HKLM\SYSTEM\CurrentControlSet\Services\ | Службы драйверов эмулятора, например multikey, vusbbus | Удалить разделы, если файл драйвера уже удалён |
HKLM\SYSTEM\CurrentControlSet\Enum\Root | Записи виртуальных устройств | Удаляются автоматически вместе с устройством; вручную не трогать |
Порядок такой:
- Запустите
regeditот имени администратора. - Через
Правка → Найтиищите по словамmultikey,vusb,Emulator. Каждое найденное вхождение проверяйте: относится ли оно к эмулятору. - Удалите найденные разделы служб и раздел
Emulator. - Проверьте каталог
C:\Windows\System32\drivers: файлыmultikey.sys,vusbbus.sysи похожие после очистки реестра удалите вручную. - Перезагрузите компьютер.
Штатные ветки Sentinel/Aladdin не трогайте руками: их корректно уберёт и заново создаст установщик драйвера haspdinst.exe.
Сброс лицензий на сервере 1С
На сервере «ломаная» лицензия бывает в двух местах: в файлах .lic и в кэше кластера, где агент держит сведения о выданных лицензиях и сеансах. Чистят оба.
Остановка службы агента сервера 1С обрывает все сеансы и фоновые задания. Делайте это только после того, как пользователи вышли, а регламентные задания завершились.
Файлы программных лицензий
- Остановите службу
1C:Enterprise 8.3 Server Agent(на x64 — с припискойx86-64). - Откройте
C:\ProgramData\1C\licenses. Перенесите в отдельную папку все файлы.lic, которые не можете сопоставить с вашими регистрационными номерами. - Повреждённые файлы своих лицензий не удаляйте сразу: сохраните их копию. Она пригодится, если придётся обращаться в поддержку по регистрационному номеру.
Кэш кластера
Кэш лежит в каталоге данных кластера, по умолчанию C:\Program Files\1cv8\srvinfo\reg_1541. Очистка выполняется при остановленной службе:
- Скопируйте каталог
srvinfoцеликом в резервную папку. - В
reg_1541удалите файлыsnccntx*(сеансовые данные). Файлы1CV8Clst.lst(список баз кластера) и каталоги с идентификаторами баз не трогайте. - Запустите службу агента сервера.
Проверка выдачи лицензий
После старта проверьте, какие лицензии получают сеансы. В консоли кластера это колонки сеансов, а из командной строки — через сервер администрирования ras:
rac cluster list
rac session list --cluster=<id_кластера> --licenses
Если сеансы получают лицензию с сервера, а клиентские компьютеры ищут её локально, проверьте требования назначения функциональности в свойствах рабочего сервера. Там задают, выдаёт ли клиентские лицензии сервер.
Сетевой ключ и License Manager
Если в организации стоит сетевой аппаратный ключ, его раздаёт менеджер лицензий. На машине с ключом должен работать License Manager, на клиентах — корректный файл nethasp.ini в каталоге conf платформы. В нём явно пропишите адрес сервера с ключом:
[NH_COMMON]
NH_TCPIP = Enabled
[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.10
NH_USE_BROADCAST = Disabled
Отключение широковещательного поиска убирает ситуацию, когда клиент находит в сети «чужой» эмулированный ключ на соседнем компьютере.
Удаление ломаной лицензии 1С на Linux
На Linux логика та же, меняются пути и команды.
- Остановите службу сервера 1С. Имя юнита зависит от версии:
srv1cv83в старых сборках,srv1cv8-<версия>@defaultв новых. Список найдёт команда:
systemctl list-units --all | grep -i -E '1cv8|hasp|aksusb'
- Проверьте каталог
/var/1C/licenses. Посторонние.licперенесите в резервную папку. - Посмотрите загруженные модули ядра:
lsmod | grep -i -E 'usb|hasp'. Посторонние модули виртуальной USB-шины и демоны, которые изображают ключ, удалите пакетным менеджером той же программой, которой их ставили, и отключите их юниты черезsystemctl disable. - Штатный драйвер защиты на Linux — пакет
aksusbd(Sentinel). Переустановите его из официального дистрибутива драйвера. - Проверьте права: служба сервера 1С работает от пользователя
usr1cv8, ему нужно право чтения на/var/1C/licenses. - Кэш кластера лежит в домашнем каталоге
usr1cv8, в подкаталоге.1cv8/1C/1cv8/reg_1541. Чистка — как в Windows: копия, удалениеsnccntx*, запуск службы.
После переустановки ядра Linux модули сторонних эмуляторов часто перестают грузиться сами. Если 1С «вдруг» потеряла лицензию после обновления системы — это повод проверить, на чём она работала раньше.
Восстановление легальной лицензии после очистки
Когда эмулятор и мусор удалены, 1С без лицензии базу не откроет. Возвращаем рабочую защиту одним из способов.
| Ситуация | Что делать |
|---|---|
| Есть купленный комплект программных лицензий, активаций ещё не было | При первом запуске 1С откроет мастер получения лицензии. Введите регистрационный номер и основной пин-код из конверта |
| Лицензия раньше была активирована, но после переустановки ОС или замены железа слетела | Повторная активация: нужен ранее использованный пин-код и новый из резервных |
| Резервные пин-коды кончились | Обращение к фирме 1С или партнёру с регистрационным номером и документами о покупке |
| Аппаратный ключ HASP | Поставьте драйвер, подключите ключ, проверьте, что он виден в Диспетчере устройств |
| Лицензий не было, работали на взломе | Покупка комплекта лицензий у партнёра 1С под нужное число рабочих мест |
Как пройти повторную активацию:
- Запустите 1С, откроется мастер получения лицензии.
- Выберите повторное получение, заполните регистрационный номер.
- Введите пин-код, которым активировали лицензию раньше, и новый пин-код из резервных.
- Заполните сведения о владельце ровно так, как при первой активации. Расхождение в ИНН или названии организации — частая причина отказа.
- Получите лицензию через интернет . Без интернета есть вариант с файлом запроса или по телефону.
После активации в C:\ProgramData\1C\licenses появится новый файл .lic. Сохраните его копию вместе с пин-кодами: при сбое диска это сэкономит одну активацию.
Активированная лицензия привязана к параметрам компьютера. Не копируйте .lic на другую машину: там он работать не будет, а исходный компьютер вы этим не «освободите».
Как не допустить повторного сбоя лицензий
Чистая установка ломается обычно по двум причинам: кто-то ставит «ускоритель» или «помощник» с эмулятором внутри, либо меняется железо без учёта привязки лицензии.
Отдельно о юридической стороне. Использование взломанной 1С — это нарушение исключительного права на программу. Правообладатель вправе требовать компенсацию по Гражданскому кодексу, за крупный ущерб предусмотрена уголовная ответственность. При проверке «следы» эмулятора в реестре и драйверах находят быстро, поэтому чистку стоит делать сразу при переходе на легальные лицензии, а не перед проверкой.
Частые вопросы
Пропадут ли базы, если удалить платформу 1С вместе со взломом?
.dt нужна на случай ошибок, а не потому, что базы удаляются.Можно ли перенести программную лицензию на новый сервер?
.lic нельзя: он привязан к железу старой машины.Нужно ли удалять штатный драйвер Sentinel, если ключа нет и работаем на программных лицензиях?
Почему после очистки 1С пишет, что лицензий не хватает, хотя их достаточно?
Антивирус ругается на файлы в каталоге 1С. Это эмулятор?
Источники
- Гражданский кодекс РФ, часть четвёртая, статьи 1270 и 1301
- Кодекс РФ об административных правонарушениях, статья 7.12
- Уголовный кодекс РФ, статья 146