Как подключить клиента 1С к серверу через проброс портов и исправить ошибку ClusterConfigService?

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

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

Почему простой проброс порта 1540 не работает?

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

  1. Агент кластера (ragent, порт 1540): принимает первичное обращение от клиента и сообщает ему параметры менеджера кластера.
  2. Менеджер кластера (rmngr, порт 1541): обрабатывает запросы к сервисам кластера (включая сервис конфигурации кластера — ClusterConfigService) и перенаправляет сессию на свободный рабочий процесс.
  3. Рабочие процессы (rphost, диапазон портов 1560:1591): непосредственно исполняют прикладной код и взаимодействуют с СУБД.

Рассмотрим подробнее две ключевые проблемы, возникающие при трансляции портов (NAT):

  1. Передача целевых портов внутри прикладного протокола: платформа 1С передает сетевые адреса и порты в теле пакета на уровне L7. Если настроить проброс с нестандартного внешнего порта на локальный 1540, клиент все равно получит указание соединяться с портами 1541 и пулом 1560:1591. Стандартный сетевой транслятор не модифицирует данные внутри зашифрованного или бинарного трафика 1С, поэтому проброс возможен строго «порт-в-порт».
  2. Возврат внутреннего имени сервера: получив пакет на порт 1540, служба возвращает клиенту имя рабочего сервера так, как оно зарегистрировано в консоли кластера (например, короткое имя хоста SRV-1C). Внешний клиент не может сопоставить это имя с внешним IP-адресом маршрутизатора, в результате чего соединение с ClusterConfigService обрывается.

Решение 1. Публикация информационной базы на веб-сервере

Если конфигурация работает на управляемых формах, наиболее стабильным и правильным решением является веб-публикация. В этом случае клиенты подключаются по протоколам HTTP/HTTPS через стандартные порты (80 или 443), а всю коммуникацию с кластером 1С берет на себя веб-сервер.

Разберем по шагам порядок действий:

  1. Развернем веб-сервер (IIS или Apache HTTP Server) на том же сервере, где установлен кластер 1С, либо в едином защищенном сетевом сегменте.
  2. Запустим конфигуратор 1С от имени администратора и перейдем в меню Администрирование > Публикация на веб-сервере....
  3. Зададим имя публикации, выберем веб-сервер и нажмем Опубликовать.
  4. На сетевом шлюзе пробросим наружу только защищенный порт 443. Для безопасного доступа рекомендуется выпустить SSL-сертификат и настроить веб-сервер или обратный прокси-сервер (Reverse Proxy).
  5. В окне запуска 1С на клиентских ПК укажем подключение через веб-сервер вида https://remote.domain.ru/ib_name.

Решение 2. Использование Split-Brain DNS и прямого проброса портов

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

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

  1. В консоли администрирования кластера 1С зарегистрируем рабочий сервер не по локальному имени NetBIOS, а по полному доменному имени (FQDN), например: server1c.company.ru.
  2. Настроим Split-Brain DNS (разделение зон DNS): внутри локальной сети имя server1c.company.ru должно разрешаться в локальный IP-адрес сервера 1С, а за пределами офиса — во внешний статический IP-адрес маршрутизатора.
  3. На интернет-шлюзе настроим правила Destination NAT (DNAT) строго порт-в-порт для 1540, 1541 и диапазона рабочих процессов.
  4. Чтобы не пробрасывать все 32 порта по умолчанию (1560:1591), сузим диапазон. В свойствах рабочего сервера в консоли кластера 1С в поле Диапазоны IP портов укажем уменьшенный интервал, соразмерный количеству процессов rphost (например, 1560:1565). Соответственно, на маршрутизаторе потребуется пробросить только этот суженный диапазон.

Решение 3. Локальное сопоставление имени через файл hosts

Если удаленный доступ требуется временно или всего для одной рабочей станции, а перенастройка сетевой инфраструктуры не планируется, посмотрим на простой обходной путь с переопределением DNS на стороне клиента.

Разберем по шагам:

  1. На шлюзе организации пробросим порты 1540, 1541 и диапазон портов рабочих процессов без смещения номеров.
  2. Выясним точное сетевое имя рабочего сервера в кластере 1С (его можно увидеть в диалоге свойств информационной базы или ошибке подключения).
  3. На удаленном компьютере откроем текстовый редактор от имени Администратора и перейдем к файлу:
    C:\Windows\System32\drivers\etc\hosts
  4. Добавим строку, сопоставляющую внешний IP-адрес офисного роутера и сетевое имя сервера 1С:
    203.0.113.10 SRV-1C
  5. Сохраним изменения. Теперь клиент 1С, получив команду обратиться к SRV-1C:1541, успешно отправит пакеты на внешний адрес шлюза.

Решение 4. Организация VPN-канала

С точки зрения информационной безопасности публикация «сырых» портов кластера 1С (1540, 1541 и пула rphost) в публичный интернет несет серьезные риски: протокол передачи по умолчанию не шифруется, а административные сервисы подвержены атакам перебора паролей и DoS-нагрузкам.

Оптимальным решением для удаленной работы классического клиента без веб-сервера является подключение удаленного пользователя через защищенный VPN-туннель (WireGuard, OpenVPN, IPsec или SSTP). При установке туннеля удаленная машина становится частью корпоративной подсети, получает доступ к локальному DNS и всем портам кластера без необходимости какой-либо трансляции на внешнем интерфейсе.

← На главную