К статье
Практический материал

Администрирование · 11 мин

Сервер лицензирования 1С: какие порты нужны и как их настроить

Какие порты использует сервер лицензирования 1С: 1540–1541, 475, 1947. Настройка брандмауэра, проверка доступности портов и решение типичных проблем с лицензиями.

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

Набор портов зависит от способа лицензирования: программные лицензии, выдаваемые сервером 1С:Предприятия, работают через порты кластера, а аппаратные ключи HASP обслуживаются отдельным менеджером лицензий со своими портами. Ниже разобраны оба варианта, команды проверки и типичные ошибки настройки.

Как устроено лицензирование 1С и откуда берутся порты

В 1С:Предприятии 8 существует два принципиально разных механизма лицензирования. Первый — программные лицензии (файлы с расширением .lic), которые привязываются к параметрам компьютера. В клиент-серверном режиме их раздаёт сам сервер 1С:Предприятия, и клиенты обращаются к нему по портам кластера серверов.

Второй механизм — аппаратные USB-ключи защиты HASP (Sentinel). Ключ вставляется в любой компьютер сети, а служба менеджера лицензий (HASP License Manager / Sentinel LDK) принимает запросы от клиентов по сети. Это отдельная служба со своими портами, не связанная с портами кластера 1С.

Понимание того, какой механизм используется в вашей инфраструктуре, определяет, какие порты нужно открывать. Нередко администраторы открывают порты кластера, но забывают про порт 475 для HASP-ключа — и клиенты продолжают получать ошибку лицензии.

Порты сервера 1С:Предприятия для программных лицензий

Если программные лицензии установлены на сервер 1С и раздаются клиентам автоматически, сетевое взаимодействие идёт через стандартные порты кластера:

  • 1540 — порт агента сервера 1С:Предприятия. Через него клиенты подключаются к серверу и получают в том числе лицензии;
  • 1541 — порт менеджера кластера, обслуживает служебные соединения внутри кластера;
  • 1560–1591 — диапазон портов рабочих процессов (rphost), через которые идёт основная работа сеансов.

Для выдачи программных лицензий критичен именно порт 1540: клиент при запуске обращается к агенту сервера, и тот предоставляет свободную лицензию. Если порт закрыт, клиент не сможет получить лицензию с сервера и начнёт искать её локально или в сети по другим механизмам.

Обратите внимание: если агент сервера при установке был настроен на нестандартный порт (например, 2540), открывать нужно именно его. Проверить фактический порт можно в консоли кластера серверов или в свойствах службы агента.

Порты менеджера лицензий HASP для аппаратных ключей

Аппаратные ключи HASP обслуживаются отдельным программным стеком, и здесь действуют другие порты:

  • 475 (TCP и UDP) — основной порт менеджера лицензий HASP. По нему клиентские компьютеры запрашивают лицензии у сервера, где установлен ключ;
  • 1947 (TCP) — порт веб-интерфейса Sentinel Admin Control Center, через который администратор просматривает ключи, активные сеансы и настраивает доступ.

Порт 475 нужно открыть в обоих протоколах — TCP и UDP. Распространённая ошибка: правило создано только для TCP, а клиенты по умолчанию ищут менеджер лицензий широковещательными UDP-запросами. В результате поиск ключа по сети не работает, хотя «порт вроде бы открыт».

Интерфейс Admin Control Center доступен в браузере по адресу http://имя-сервера:1947. Если страница не открывается с другого компьютера, проверьте, разрешён ли удалённый доступ в настройках ACC и открыт ли порт 1947 на брандмауэре. Для работы самих лицензий порт 1947 не обязателен — он нужен только для администрирования.

Как открыть порты в брандмауэре Windows

На сервере с Windows правила создаются через оснастку «Брандмауэр Защитника Windows» или командой netsh. Ниже примеры команд для стандартного набора портов.

cmd
netsh advfirewall firewall add rule name="1C Agent 1540" dir=in action=allow protocol=TCP localport=1540
netsh advfirewall firewall add rule name="1C Cluster 1541" dir=in action=allow protocol=TCP localport=1541
netsh advfirewall firewall add rule name="1C rphost" dir=in action=allow protocol=TCP localport=1560-1591
netsh advfirewall firewall add rule name="HASP 475 TCP" dir=in action=allow protocol=TCP localport=475
netsh advfirewall firewall add rule name="HASP 475 UDP" dir=in action=allow protocol=UDP localport=475

Альтернатива ручному перечислению портов — разрешить входящие подключения для конкретных исполняемых файлов: ragent.exe, rmngr.exe, rphost.exe и hasplms.exe. Такой вариант устойчивее к смене портов, но менее прозрачен при аудите правил.

Порядок настройки
  1. 1
    Определите тип лицензирования: программные лицензии на сервере 1С или аппаратный ключ HASP
  2. 2
    На сервере откройте входящие порты: 1540–1541 и 1560–1591 для кластера и/или 475 (TCP+UDP) для HASP
  3. 3
    Убедитесь, что службы запущены: агент сервера 1С и/или HASP License Manager (Sentinel LDK)
  4. 4
    С клиентского компьютера проверьте доступность портов командой Test-NetConnection
  5. 5
    Запустите 1С на клиенте и убедитесь, что сеанс стартует без ошибки лицензии

Как проверить доступность портов с клиента

После настройки правил проверку удобно выполнять из PowerShell на клиентском компьютере. Команда Test-NetConnection показывает, достижим ли порт:

powershell
Test-NetConnection -ComputerName srv1c -Port 1540
Test-NetConnection -ComputerName srv1c -Port 475

Результат TcpTestSucceeded: True означает, что порт открыт и служба его слушает. Если получено False, проблема в одном из трёх мест: служба на сервере не запущена, правило брандмауэра не применилось, либо путь блокирует промежуточное сетевое оборудование (маршрутизатор, аппаратный файрвол, антивирус с сетевым экраном).

Для диагностики на стороне сервера полезна команда netstat -ano | findstr "1540 475" — она показывает, какие порты реально прослушиваются и каким процессом. Если порт 475 не слушается, менеджер лицензий HASP не запущен или установлен не полностью.

Контрольные точки

Как проверить результат

Прослушивание портов на сервере (netstat)
Норма

Порты 1540, 1541, 475 в состоянии LISTENING

Тревожный признак

Порт отсутствует в списке — служба не запущена

Test-NetConnection с клиента на порт 1540
Норма

TcpTestSucceeded: True

Тревожный признак

False — проверяйте брандмауэр и маршрутизацию

Запуск 1С на клиенте
Норма

Сеанс открывается, лицензия получена

Тревожный признак

Ошибка «не найдена лицензия» или «не обнаружен ключ защиты»

Admin Control Center (порт 1947)
Норма

Страница открывается, ключ и сессии видны

Тревожный признак

Страница недоступна — закрыт порт или запрещён удалённый доступ

Типичные ошибки и ограничения

Большинство проблем с лицензиями по сети сводится к небольшому набору повторяющихся ошибок. Их знание экономит часы диагностики.

Типичные ошибки
01
Открыт порт 475 только по TCP — клиенты не находят ключ широковещательным UDP-запросом, нужно правило для обоих протоколов
02
Открыты порты кластера 1С, но ключ HASP стоит на другом сервере, где порт 475 закрыт — лицензия не находится
03
Правила брандмауэра созданы, но применён профиль «Частная сеть», а сервер работает в профиле «Доменная» — правила не действуют
04
Несколько менеджеров лицензий в одной подсети раздают разные ключи, клиенты подхватывают «чужой» сервер — настройте nethasp.ini с явным адресом сервера
05
После смены порта агента сервера 1С в брандмауэре оставлено старое правило — клиенты теряют связь с кластером

Отдельно стоит упомянуть файл nethasp.ini на клиентских компьютерах. Если в сети несколько серверов с ключами или широковещательный поиск нежелателен, в этом файле задаётся точный адрес сервера лицензий (параметр NH_SERVER_ADDR) и протокол обращения. Это снимает зависимость от UDP-рассылки и ускоряет запуск клиентов.

Ещё одно ограничение: программные лицензии, полученные на компьютере с активным сервером терминалов, и лицензии на виртуальных машинах имеют свои особенности привязки, но на набор сетевых портов это не влияет — порты остаются теми же.

Какие порты нужны в разных сценариях развёртывания

Сравнение вариантов

Файловая база + локальная программная лицензия

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

Клиент-серверная 1С, лицензии на сервере

Открыть 1540, 1541 и 1560–1591 (TCP) на сервере 1С; порт СУБД (например, 5432 для PostgreSQL или 1433 для MS SQL) — только между сервером 1С и сервером БД

Аппаратный ключ HASP на выделенном сервере

Открыть 475 TCP и UDP на сервере с ключом; 1947 — только для администраторов

Смешанная схема

Открываются оба набора портов; желательно явно указать клиентам источник лицензий, чтобы избежать конфликтов поиска

Если сервер 1С и сервер СУБД разнесены на разные машины, помните, что порт базы данных (1433 для MS SQL Server, 5432 для PostgreSQL) должен быть открыт только между этими двумя серверами. Клиентские компьютеры к СУБД напрямую не обращаются — весь трафик идёт через рабочие процессы кластера.

Перед изменением правил брандмауэра зафиксируйте текущее состояние командой netsh advfirewall export. Если после настройки что-то перестанет работать, конфигурацию можно вернуть одной командой импорта, не вспоминая, какие правила были изменены.
ПЗ
Практическое замечание

FAQ: частые вопросы о портах сервера лицензирования 1С

Клиент пишет «не обнаружен ключ защиты программы». Какой порт проверять в первую очередь?

Порт 475 по протоколам TCP и UDP на компьютере, где установлен аппаратный ключ HASP. Дополнительно убедитесь, что служба HASP License Manager запущена, а в netstat порт 475 находится в состоянии LISTENING.

Нужно ли открывать порты на клиентских компьютерах?

Обычно нет: клиенты инициируют исходящие подключения к серверу, которые брандмауэр пропускает по умолчанию. Входящие правила на клиентах требуются только в нестандартных схемах, например при отладке или работе серверных компонентов на клиенте.

Можно ли изменить порт менеджера лицензий HASP с 475 на другой?

Стандартный порт 475 является фиксированным для протокола HASP и меняется только силами специальных конфигураций, что не рекомендуется. Практичнее настроить nethasp.ini на клиентах с явным указанием адреса сервера, чем переопределять порт.

1С работает, но лицензия «отваливается» через несколько минут. Это проблема портов?

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

Какие порты нужны, если лицензии раздаёт сервер 1С, а не ключ HASP?

Достаточно портов кластера: 1540 (агент), 1541 (менеджер кластера) и диапазона 1560–1591 (рабочие процессы) по TCP. Порт 475 в этой схеме не используется, если аппаратных ключей в сети нет.

Как ограничить доступ к веб-интерфейсу Admin Control Center?

Не открывайте порт 1947 на брандмауэре для всех подсетей — создайте правило только для адресов администраторов. Дополнительно в настройках ACC можно запретить удалённый доступ, оставив управление только с самого сервера.

Итог

Что важно запомнить

Программные лицензии через сервер 1С требуют портов 1540, 1541 и 1560–1591 по TCP, аппаратные ключи HASP — порта 475 по TCP и UDP, а порт 1947 нужен только для администрирования. Открывайте порты только внутри локальной сети, проверяйте результат через Test-NetConnection и netstat, а при нескольких серверах лицензий фиксируйте источник в nethasp.ini.