Администрирование · 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. Ниже примеры команд для стандартного набора портов.
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С или аппаратный ключ HASP
- 2На сервере откройте входящие порты: 1540–1541 и 1560–1591 для кластера и/или 475 (TCP+UDP) для HASP
- 3Убедитесь, что службы запущены: агент сервера 1С и/или HASP License Manager (Sentinel LDK)
- 4С клиентского компьютера проверьте доступность портов командой Test-NetConnection
- 5Запустите 1С на клиенте и убедитесь, что сеанс стартует без ошибки лицензии
Как проверить доступность портов с клиента
После настройки правил проверку удобно выполнять из PowerShell на клиентском компьютере. Команда Test-NetConnection показывает, достижим ли порт:
Test-NetConnection -ComputerName srv1c -Port 1540
Test-NetConnection -ComputerName srv1c -Port 475Результат TcpTestSucceeded: True означает, что порт открыт и служба его слушает. Если получено False, проблема в одном из трёх мест: служба на сервере не запущена, правило брандмауэра не применилось, либо путь блокирует промежуточное сетевое оборудование (маршрутизатор, аппаратный файрвол, антивирус с сетевым экраном).
Для диагностики на стороне сервера полезна команда netstat -ano | findstr "1540 475" — она показывает, какие порты реально прослушиваются и каким процессом. Если порт 475 не слушается, менеджер лицензий HASP не запущен или установлен не полностью.
Как проверить результат
Порты 1540, 1541, 475 в состоянии LISTENING
Порт отсутствует в списке — служба не запущена
TcpTestSucceeded: True
False — проверяйте брандмауэр и маршрутизацию
Сеанс открывается, лицензия получена
Ошибка «не найдена лицензия» или «не обнаружен ключ защиты»
Страница открывается, ключ и сессии видны
Страница недоступна — закрыт порт или запрещён удалённый доступ
Типичные ошибки и ограничения
Большинство проблем с лицензиями по сети сводится к небольшому набору повторяющихся ошибок. Их знание экономит часы диагностики.
Отдельно стоит упомянуть файл nethasp.ini на клиентских компьютерах. Если в сети несколько серверов с ключами или широковещательный поиск нежелателен, в этом файле задаётся точный адрес сервера лицензий (параметр NH_SERVER_ADDR) и протокол обращения. Это снимает зависимость от UDP-рассылки и ускоряет запуск клиентов.
Ещё одно ограничение: программные лицензии, полученные на компьютере с активным сервером терминалов, и лицензии на виртуальных машинах имеют свои особенности привязки, но на набор сетевых портов это не влияет — порты остаются теми же.
Какие порты нужны в разных сценариях развёртывания
Сравнение вариантов
Сетевые порты не нужны вовсе: лицензия хранится на компьютере пользователя, обращений к серверу лицензий нет
Открыть 1540, 1541 и 1560–1591 (TCP) на сервере 1С; порт СУБД (например, 5432 для PostgreSQL или 1433 для MS SQL) — только между сервером 1С и сервером БД
Открыть 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.