При организации удаленного доступа к файловой информационной базе через веб-сервер (веб-клиенты и тонкие клиенты через HTTP/HTTPS) часто возникает задача расширения количества доступных лицензий. Типичная ситуация: в сервер с веб-публикацией установлен один сетевой ключ ORGL8 на 10 рабочих мест, а в локальной сети на отдельном компьютере работает второй сетевой ключ той же серии на 10 мест под управлением HASP License Manager. При попытке подключить более 10 пользователей система выдает сообщение «Не обнаружено свободной лицензии». Проанализируем архитектуру раздачи лицензий веб-сервером, выясним причины ошибок и разберем по шагам правильную схему настройки.
Для понимания проблемы разберем механизм получения клиентских лицензий в файловом варианте работы:
HASP License Manager только один ключ серии ORGL8 (стандартные ключи на 5, 10, 20, 50, 100 мест). Платформа принципиально не будет опрашивать второй сетевой ключ той же серии через сетевой менеджер лицензий, если первый исчерпан.Единственный способ объединить два ключа серии ORGL8 для веб-сервера без перехода на старшие серии — использовать один ключ как локальный для сервера, а второй опрашивать как сетевой через HASP License Manager со второго компьютера.
Посмотрим на частые ошибки при попытке объединить два ключа и разберем их природу:
1. Ошибка 40 (сетевой HASP не используется):
Возникает, когда в файле nethasp.ini на стороне сервера прописана директива отключения сетевых протоколов:
[NH_COMMON]
NH_TCPIP = Disabled
В этом случае сервер успешно забирает все лицензии с локального ключа, вставленного в его порт. Однако при попытке 11-го пользователя войти в систему сервер натыкается на собственный локальный запрет поиска ключа по сети и блокирует опрос второго менеджера лицензий.
2. Ошибка Net Status=0, System Error=0, Warning=15:
Код Warning=15 означает, что служба HASP License Manager не ответила на сетевой запрос. По умолчанию обмен между модулями 1С и службой лицензирования идет по порту 475 UDP (порт TCP задействуется только при специальных режимах опроса). Если между сервером и компьютером со вторым ключом брандмауэр Windows блокирует трафик UDP по порту 475, сетевой ключ найден не будет.
3. Конфликт работы службы HASP License Manager и веб-сервера на одной машине:
Если на компьютере веб-сервера одновременно работает служба HASP License Manager и установлен локальный USB-ключ, веб-сервер перехватывает ключ напрямую с блокировкой сессий. Служба менеджера лицензий теряет корректный учет слотов, что приводит к некорректному отображению ключа в утилитах мониторинга.
Разберем по шагам правильную конфигурацию серверов и конфигурационных файлов для суммирования 20 рабочих мест (10 локальных + 10 сетевых).
В физический USB-порт сервера должен быть вставлен первый ключ на 10 лицензий. Службу HASP License Manager на этом сервере необходимо полностью остановить и отключить в оснастке служб Windows. Веб-сервер 1С будет считывать этот ключ напрямую как локальный без использования сетевых менеджеров.
Вставьте второй сетевой ключ на 10 лицензий в отдельную рабочую станцию под управлением Windows. Установите и запустите службу HASP License Manager. В брандмауэре Windows на этой машине обязательно откройте входящий порт 475 UDP (и 475 TCP для резерва).
Перейдем в каталог загрузочных модулей 1С на веб-сервере. Для 32-разрядных модулей путь обычно выглядит как C:\Program Files (x86)\1cv8\conf\nethasp.ini (или в каталоге конкретной версии платформы). Отредактируем файл так, чтобы веб-сервер мог обратиться ко второму компьютеру, когда закончатся локальные лицензии первого ключа:
[NH_COMMON]
NH_IPX = Disabled
NH_NETBIOS = Disabled
NH_TCPIP = Enabled
[NH_TCPIP]
NH_SERVER_ADDR = 192.168.0.24
NH_PORT_NUMBER = 475
NH_USE_BROADCAST = Disabled
Где 192.168.0.24 — точный IP-адрес второго компьютера, на котором запущен менеджер лицензий.
Выполним перезапуск службы веб-сервера (перезапуск пула приложений в IIS или службы Apache) для применения настроек конфигурационного файла.
После выполнения этой схемы веб-сервер выделит первые 10 сеансов из локального ключа, а начиная с 11-го пользователя обратится по адресу 192.168.0.24 и возьмет оставшиеся лицензии со второго ключа.
Проанализируем альтернативные пути масштабирования, если аппаратные ключи исчерпали свои возможности:
1Cv8.1CD. Перевод базы на СУБД с полноценным сервером 1С:Предприятия обеспечивает как централизованную выдачу сеансовых лицензий, так и стабильную производительность.