Почему пользователи 1С не могут подключиться через тонкий клиент и как исправить ошибку «Не найдено лицензии»?

Системный администратор 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

Ситуация, когда часть пользователей успешно работает в программе, а остальные внезапно получают сообщение «Не найдено лицензии», является классической для систем на базе 1С:Предприятие. Особенно часто это проявляется в гибридных средах, где одновременно используются и аппаратные ключи защиты (HASP), и программные лицензии (пин-коды). В этой статье мы подробно разберем, почему при подключении через RDP всё может работать идеально, а тонкий клиент выдает ошибку, и как восстановить работоспособность системы после обслуживания сервера.

Анализируем симптомы: RDP против Тонкого клиента

Рассмотрим ситуацию: в организации используется сервер в домене, лицензий закуплено более 40, но 16-й пользователь тонкого клиента не может войти в базу. При этом, если тот же пользователь заходит на сервер напрямую через Удаленный рабочий стол (RDP), программа запускается без проблем. Проанализируем, почему так происходит.

Разберем механизм поиска лицензий в обоих случаях:

  1. Работа через RDP: Когда пользователь запускает 1С внутри терминальной сессии, клиентское приложение ищет лицензию непосредственно на самом сервере (локально). Если на сервере установлен многопользовательский аппаратный ключ или активирована программная лицензия, сервер 1С:Предприятия или само приложение подхватывают её мгновенно.
  2. Работа через тонкий клиент (по сети): В этом режиме поиск лицензии идет по более сложному сценарию. Сначала лицензию ищет сам тонкий клиент на компьютере пользователя, затем в локальной сети (через HASP License Manager), и только потом обращается к серверу 1С:Предприятия.

Если в логах мы видим, что 10 лицензий заняты (через аппаратный ключ), а остальные 30 «не видны», это явный признак того, что программные лицензии, которые должны дополнять парк рабочих мест, вышли из строя.

Выясняем причину: почему «слетают» программные лицензии

Проанализируем технический журнал поиска лицензий, предоставленный в проблеме. В нем содержатся критически важные строки:

Software licensing error. Error linking program license to the computer: file://C:/ProgramData/1C/licenses/20210304012242.lic

Далее в логе идет сравнение текущей конфигурации оборудования и той, что была на момент активации. Мы видим изменения в параметрах DISK_1: Microsoft Virtual Disk. Рассмотрим, почему это критично. Программная лицензия 1С представляет собой файл, который «привязывается» к уникальному идентификатору оборудования (Hardware ID). Для виртуальных машин Hyper-V или VMware этот ID формируется на основе следующих параметров:

Если системный администратор увеличил объем виртуального диска или изменил объем RAM, 1С при запуске сравнивает «новый» Hardware ID с тем, что записан в файле .lic. Если они не совпадают, лицензия аннулируется. Именно это произошло в нашем случае: диск был увеличен, и 1С перестала признавать лицензионные файлы легитимными.

Пошаговое решение: Восстановление программных лицензий

Чтобы вернуть пользователей в работу, нам необходимо выполнить процедуру восстановления лицензий. Разберем этот процесс по шагам.

Шаг 1: Подготовка пин-кодов. Выясним, остались ли у нас резервные пин-коды. Обычно в комплекте к программной лицензии на 1, 5, 10 или более рабочих мест идет основной код и несколько резервных. Если резервных кодов нет, необходимо оперативно написать письмо в Центр лицензирования 1С (lic@1c.ru), указав регистрационный номер продукта и причину (изменение конфигурации сервера).

Шаг 2: Запуск процедуры восстановления. Запустим 1С в режиме «Конфигуратор» или просто попытаемся войти в базу. В появившемся окне об ошибке нажмем кнопку «Получить лицензию». Далее выберем пункт «Восстановление».

Шаг 3: Ввод данных. Крайне важно ввести сведения об организации (наименование, ИНН, адрес) точно так же, как они были введены при первой активации. Малейшая опечатка (например, «ООО Ромашка» вместо «Общество с ограниченной ответственностью Ромашка») приведет к отказу.

Шаг 4: Использование нового пин-кода. Введем неиспользованный резервный пин-код. Программа свяжется с сервером лицензирования 1С и сформирует новый файл .lic, привязанный к текущим параметрам вашего диска и памяти.

Как избежать проблемы в будущем: Привязка к HASP-ключу

Рассмотрим продвинутый метод защиты от подобных ситуаций. Если у вас на сервере уже есть аппаратный USB-ключ (например, на 10 пользователей, как в нашем примере), 1С позволяет привязать программную лицензию не к параметрам «железа» виртуальной машины, а к идентификатору этого USB-ключа.

Как это работает:

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

Настройка nethasp.ini для оптимизации поиска

Хотя основная проблема кроется в программных лицензиях, проанализируем ошибку error 40, network HASP not used из лога. Она указывает на то, что тонкий клиент не может быстро найти аппаратный ключ в сети. Чтобы ускорить процесс и сделать его стабильнее, настроим файл nethasp.ini.

Найдем этот файл в папке установки 1С (обычно C:\Program Files\1cv8\conf\) и отредактируем его, указав явный IP-адрес сервера, где установлен ключ:


[NH_COMMON]
NH_TCPIP = ENABLED

[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.100 ; Замените на IP вашего сервера лицензий
NH_TCPIP_METHOD = UDP
NH_USE_BROADCAST = DISABLED

Это позволит тонким клиентам не тратить время на широковещательные запросы в сети (Broadcast), а сразу обращаться к нужному менеджеру лицензий. Это особенно актуально, если сервер и клиенты находятся в разных подсетях или доменах.

Подведем итоги

Мы выяснили, что ошибка «Не найдено лицензии» для 16-го пользователя возникла из-за того, что 10 лицензий выдавались аппаратным ключом, а остальные программные лицензии были заблокированы системой защиты после изменения размера виртуального диска. Для решения проблемы мы:

  1. Проанализировали лог и подтвердили несоответствие параметров оборудования.
  2. Разобрали процесс восстановления через резервный пин-код.
  3. Предложили стратегию привязки к HASP-ключу для предотвращения сбоев в будущем.
  4. Оптимизировали поиск аппаратных ключей через nethasp.ini.

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

← На главную