Переход с нелицензионного программного обеспечения на легальные версии продуктов «1С:Предприятие» — важный и ответственный шаг для любого бизнеса. Особенно остро этот вопрос встает в ситуациях, когда инфраструктура компании развернута на арендованном виртуальном сервере, а пользователи работают удаленно через службу публикации приложений RemoteApp (терминальный сервер). Возникает множество сопутствующих вопросов: как правильно активировать программные лицензии, где именно они должны храниться, не заблокируется ли работа сотрудников в процессе обновления платформы и как поведет себя лицензирование при запуске нескольких информационных баз одним пользователем?
В этой статье мы подробно разберем практические шаги по миграции платформы с устаревшей взломанной версии 8.3.11.2867 на современную лицензионную 8.3.13 (или более новую) без прерывания текущей работы пользователей, а также детально изучим механизм лицензирования 1С в терминальной среде RemoteApp.
Прежде чем приступать к техническим работам, давайте разберем фундаментальное правило работы программных лицензий «1С:Предприятие 8». Оно звучит следующим образом: лицензия должна находиться там, где непосредственно запускается исполняемый файл 1С.
При использовании службы удаленных рабочих столов (RDP) или ее разновидности RemoteApp пользователи запускают ярлык программы на своих локальных компьютерах, но сам процесс 1cv8.exe (или тонкий клиент 1cv8c.exe) физически стартует и выполняется в оперативной памяти удаленного сервера. Локальный компьютер пользователя выступает лишь в роли устройства вывода графического интерфейса и ввода данных (мышь, клавиатура). Из этого следует важный вывод: все программные лицензии 1С должны быть активированы и установлены непосредственно на самом терминальном сервере. Вариант с установкой лицензий на локальные рабочие станции пользователей при работе через RemoteApp работать не будет — запущенная на сервере программа просто не увидит эти файлы.
Существует распространенное заблуждение, что при работе через RemoteApp на каждое открытое окно 1С тратится отдельная лицензия. Давайте проанализируем, как обстоит ситуация на самом деле. Начиная с современных версий Windows Server (2012 R2, 2016, 2019, 2022), операционная система по умолчанию группирует все подключения одного и того же пользователя под одной учетной записью в рамках одного и того же терминального сеанса (сессии ОС). Платформа 1С при проверке лицензий опрашивает именно окружение текущей сессии операционной системы. Если один пользователь открывает три разные базы через RemoteApp, система создает три процесса 1С, но все они выполняются в рамках одной терминальной сессии. Таким образом, на работу этого пользователя будет израсходована всего одна программная лицензия. Это правило справедливо для файловых баз данных и для клиент-серверных вариантов работы, если раздачу лицензий осуществляет локальный терминальный сеанс, а не сервер приложений «1С:Предприятие».
При покупке дополнительных лицензий (например, комплекта на 10 пользователей) в комплекте поставки вы обнаружите два типа пин-кодов для активации:
Внимание! Для работы в терминальном режиме и через RemoteApp на сервере необходимо активировать лицензию, используя именно многопользовательский пин-код. Если вы по ошибке активируете однопользовательские пин-коды на терминальном сервере, система выдаст лицензию только первому подключившемуся пользователю, а для остальных лицензии будут недоступны. Многопользовательский пин-код активируется один раз, создавая единый файл лицензии на сервере, из которого платформа будет динамически выделять свободные слоты для активных терминальных сессий пользователей.
Для того чтобы процесс перехода на легальную платформу прошел гладко и незаметно для пользователей, мы рекомендуем использовать схему параллельной установки платформ. Рассмотрим этот процесс по шагам.
Шаг 1. Сохранение работоспособности текущих сеансов
Не нужно удалять старую взломанную версию платформы 8.3.11.2867 перед установкой новой. Платформа 1С спроектирована таким образом, что на одном сервере может одновременно находиться неограниченное количество различных версий. Они устанавливаются в разные папки внутри каталога C:\Program Files\1cv8\ (или C:\Program Files (x86)\1cv8\ для 32-битных версий) и не мешают друг другу.
Шаг 2. Разделение каналов запуска для пользователей
Чтобы во время проведения технических работ и активации лицензий пользователи продолжали беспрепятственно работать в старой версии, перенастройте ярлыки запуска RemoteApp. Обычно ярлык ссылается на общий загрузчик 1cestart.exe, расположенный в папке C:\Program Files\1cv8\Common\. Этот загрузчик автоматически выбирает самую последнюю установленную в системе версию платформы. Если вы установите 8.3.13, то при следующем запуске через 1cestart.exe у пользователей автоматически попытается стартовать именно версия 8.3.13, которая потребует лицензию и заблокирует работу.
Чтобы избежать этого, временно переведите запуск RemoteApp непосредственно на исполняемый файл старой версии платформы. Измените путь публикации в настройках вашей службы RemoteApp (в диспетчере серверов Windows Server): вместо общего загрузчика укажите прямой путь к исполняемому файлу тонкого или толстого клиента старой версии, например: C:\Program Files\1cv8\8.3.11.2867\bin\1cv8c.exe (или 1cv8.exe для толстого клиента).
Альтернативный вариант: в свойствах конкретной информационной базы в списке баз 1С (кнопка «Изменить» -> далее -> на последней вкладке) в поле «Версия платформы» жестко прописать строку 8.3.11.2867 или просто 8.3.11. В этом случае даже при запуске через общий стартер система принудительно запустит именно указанную старую версию платформы.
Шаг 3. Установка новой платформы и активация лицензий
Теперь, когда пользователи гарантированно запускают старую версию платформы и их работе ничего не угрожает, установите новую платформу 8.3.13. Запустите программу под учетной записью администратора. При попытке входа в любую базу (или при создании новой пустой файловой базы) система выдаст сообщение об отсутствии лицензии и предложит выполнить ее получение. Пройдите все шаги мастера активации:
При правильной активации (с выбором опции «Всем пользователям данного компьютера») программный файл лицензии с расширением .lic сохраняется в каталог общего доступа операционной системы Windows Server:
C:\ProgramData\1C\licenses
Давайте проанализируем возможные проблемы с правами доступа. Терминальные пользователи в операционной системе Windows Server обычно работают с ограниченными правами и входят в группу «Пользователи» или «Пользователи удаленного рабочего стола». Если права безопасности на папку C:\ProgramData\1C\licenses настроены некорректно, обычные пользователи при запуске 1С через RemoteApp увидят ошибку «Лицензия не обнаружена», хотя под Администратором всё будет запускаться успешно.
Чтобы решить эту проблему, выполните следующие действия:
C:\ProgramData\1C\ (папка ProgramData является скрытой, поэтому введите путь в адресную строку вручную).licenses и выберите «Свойства».Работа на арендованном сервере накладывает определенные технические особенности, связанные с виртуализацией. Арендованный сервер почти всегда представляет собой виртуальную машину, развернутую на гипервизоре провайдера (Hyper-V, KVM, VMware). Программные лицензии 1С привязываются к уникальному «аппаратному отпечатку» компьютера. Изменение ключевых параметров виртуальной машины приведет к тому, что лицензия «слетит» и потребует повторной активации с использованием резервного пин-кода (в комплекте поставки их обычно идет ограниченное количество).
Чтобы избежать подобных инцидентов, перед установкой легальных лицензий обязательно согласуйте с технической поддержкой вашего облачного провайдера следующие моменты:
Поскольку ранее на арендованном сервере использовалась взломанная версия платформы 1С, перед запуском легальной версии крайне важно полностью очистить операционную систему от следов старых утилит обхода защиты. Современные платформы 1С (включая 8.3.13 и выше) содержат встроенные алгоритмы проверки целостности исполняемого кода и могут заблокировать работу системы при обнаружении остатков старых дампов, эмуляторов ключей HASP или сторонних библиотек.
Проанализируем основные места, которые необходимо проверить и очистить:
C:\Windows\System32\ и C:\Windows\SysWOW64\) отсутствуют нештатные или измененные библиотеки типа mcond.dll, backend.dll или патченные файлы 1cv8.dll. Легальная платформа должна быть установлена только из официального дистрибутива, скачанного с сайта поддержки пользователей 1С.Virtual Usb Bus Enumerator, VUSBBUS или MultiKey. При их обнаружении удалите эти устройства и сопутствующие им файлы драйверов из системы.hasp, sentinel, hlm, не принадлежащие официальным продуктам SafeNet/Aladdin).После того как новая платформа установлена, лицензия успешно активирована, а права доступа настроены, можно приступать к этапу переключения пользователей. Назначьте тестовое время (например, вечер или выходной день), когда в базах нет активных пользователей.
C:\Program Files\1cv8\Common\1cestart.exe8.3.11.2867 в свойствах баз данных, зайдите в свойства каждой базы и очистите это поле (оно должно остаться пустым)..lic.Рассмотренная нами схема позволяет совершить переход на легальные программные лицензии максимально безопасно. Выполнив все шаги последовательно, вы получите стабильно работающую систему, полностью соответствующую лицензионной политике компании «1С».