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

Частая ошибка при администрировании заключается в попытке открыть абсолютно все порты или, наоборот, в хаотичном выборе диапазонов без понимания архитектуры взаимодействия компонентов. Для стабильной работы системы необходимо четко определить, какие именно службы отвечают за обработку запросов, и разрешить трафик только для них. Это касается как взаимодействия тонкого клиента с сервером приложений, так и связи самого сервера с системой управления базами данных MS SQL Server.

В данной статье мы детально разберем стандартные и динамические порты, используемые в инфраструктуре 1С:Предприятие 8.3. Вы узнаете, как настроить правила фильтрации трафика в Windows Firewall или на уровне сетевого оборудования, чтобы обеспечить безопасность без ущерба для функциональности. Особое внимание уделим нюансам работы с SQL Server, где часто возникают сложности из-за использования динамических имен экземпляров.

Архитектура сетевого взаимодействия в платформе 1С

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

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

⚠️ Внимание: Если порт 1541 закрыт на входящие соединения, пользователи вообще не смогут увидеть список баз в окне запуска. Ошибка будет возникать еще на этапе подключения к кластеру, до попытки входа в саму конфигурацию.

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

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

💡

Используйте утилиту netstat -ano в командной строке сервера во время работы пользователей, чтобы увидеть, какие именно порты сейчас заняты процессами rphost. Это поможет верифицировать ваши настройки диапазона.

Стандартные и динамические порты сервера 1С:Предприятие

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

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

Ниже приведена таблица с основными сетевыми адресами, используемыми сервером приложений. Эти данные критичны для создания правил входящего трафика (Inbound Rules) в системе безопасности.

Компонент Порт по умолчанию Протокол Назначение
Менеджер кластера 1541 TCP Первичное подключение, список баз
Рабочие процессы (rphost) 1540-1541 (динамически) TCP Обмен данными с конкретной ИБ
Веб-сервер (IIS/Apache) 80 / 443 TCP / HTTP(S) Публикация базы через веб-интерфейс
Лицензионный сервер 1545 TCP Проверка ключей защиты HASP/PIN

Важно отметить, что если вы планируете использовать веб-клиент или публиковать базу для доступа через интернет, то стандартные HTTP-порты 80 и 443 также должны быть открыты на веб-сервере. В этом случае трафик идет не напрямую к серверу 1С, а через веб-расширение, которое затем перенаправляет запросы в кластер.

📊 Какой тип доступа к 1С вы используете чаще всего?
Тонкий клиент в локальной сети
Веб-клиент через браузер
Терминальный сервер (RDP)
Мобильное приложение

Настройка портов для Microsoft SQL Server

Взаимодействие между сервером 1С:Предприятие и системой управления базами данных MS SQL Server является критическим участком инфраструктуры. Если сервер 1С не может "достучаться" до SQL, работа пользователей становится невозможной, даже если клиентское подключение к кластеру успешно установлено.

Проблема усложняется тем, что SQL Server по умолчанию часто устанавливается как именованный экземпляр (например, MSSQLSERVER или 1C). В отличие от экземпляра по умолчанию, который слушает порт 1433, именованные экземпляры используют динамическое распределение портов при каждом запуске службы. Для подключения к ним используется служба SQL Server Browser.

Служба SQL Server Browser работает на UDP порту 1434. Когда клиент (в данном случае сервер 1С) пытается подключиться к именованному экземпляру, он сначала отправляет запрос на этот порт. Служба Browser отвечает, сообщая актуальный TCP-порт, на котором в данный момент слушает нужный экземпляр SQL. Без доступа к UDP 1434 подключение к именованному экземпляру не установится.

⚠️ Внимание: Протокол UDP является ненадежным и может блокироваться корпоративными маршрутизаторами или строгими политиками безопасности. Для повышения стабильности рекомендуется принудительно зафиксировать статический TCP-порт для экземпляра SQL Server.

Чтобы зафиксировать порт, необходимо воспользоваться утилитой SQL Server Configuration Manager. В разделе SQL Server Network Configuration выберите протокол TCP/IP, откройте свойства и на вкладке IP Addresses прокрутите вниз до секции IPAll. В поле TCP Port укажите желаемый номер (например, 1433 или 14333), а поле TCP Dynamic Ports очистите.

После применения настроек службу SQL Server необходимо перезапустить. Только после этого она начнет слушать указанный статический порт, и вы сможете создать правило брандмауэра именно для этого значения, отключив необходимость в постоянном опросе службы Browser.

Как проверить, какой порт слушает SQL Server?

Запустите SQL Server Management Studio, подключитесь к серверу и выполните запрос: SELECT local_net_address, local_tcp_port FROM sys.dm_exec_connections WHERE session_id = @@SPID;. Результат покажет текущий активный порт.

Регистрация портов в Брандмауэре Windows

Настройка правил фильтрации в операционной системе Windows является обязательным этапом после определения необходимых портов. Интерфейс управления брандмауэром позволяет создавать гибкие правила как для входящего, так и для исходящего трафика. Для серверной инфраструктуры приоритет имеет настройка входящих подключений (Inbound Rules).

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

На следующем этапе мастер предложит выбрать действие. Необходимо выбрать Разрешить подключение. Это критически важно, так как правило по умолчанию в Windows часто настроено на блокировку неподписанных входящих запросов. Затем выберите профили, для которых действует правило: Доменный, Частный или Публичный. Для сервера в локальной сети обычно достаточно доменного и частного профилей.

  • 🔹 Убедитесь, что правило применено к правильному сетевому интерфейсу, если на сервере несколько сетевых карт.
  • 🔹 Дайте правилу понятное имя, например, "1C Server Cluster Ports", чтобы в будущем легко его идентифицировать.
  • 🔹 Проверьте приоритет правил: более специфичные правила должны иметь приоритет над общими запрещающими.

Аналогичным образом создаются правила для UDP трафика, если вы не зафиксировали порты SQL Server статически. В этом случае необходимо разрешить входящий UDP на порт 1434 для службы SQL Server Browser. Не забудьте также проверить правила исходящего трафика, если на сервере установлен сторонний антивирус с собственным модулем файрвола, который может дублировать или перекрывать настройки Windows.

☑️ Проверка настройки Брандмауэра

Выполнено: 0 / 5

Диагностика проблем с подключением и сетью

Даже при правильной настройке портов могут возникать ситуации, когда подключение не устанавливается. Это может быть связано с кэшированием DNS, ошибками в маршрутизации или блокировкой на уровне сетевого оборудования (свитчей, роутеров). Первым инструментом диагностики является утилита командной строки telnet или Test-NetConnection в PowerShell.

Использование команды telnet позволяет проверить физическую доступность порта. Если при вводе команды telnet <адрес_сервера> 1541 экран становится черным или мигает курсор, значит порт открыт и соединение установлено. Если же появляется сообщение об ошибке подключения, значит пакет блокируется на каком-то участке пути или служба не слушает этот адрес.

Test-NetConnection -ComputerName 192.168.1.50 -Port 1541

В среде PowerShell команда Test-NetConnection предоставляет более детальную информацию, включая статус TCP-соединения и маршрут прохождения пакета. Это особенно полезно при диагностике проблем между разными подсетями. Если тест не проходит, проверьте логи брандмауэра Windows, где фиксируются все отброшенные пакеты.

Частой причиной ошибок является неверное указание имени сервера в настройках подключения 1С. Клиент может пытаться подключиться по имени, которое резолвится в неверный IP-адрес из-за проблем с DNS. В таких случаях рекомендуется прописывать IP-адрес сервера явно в строке подключения или использовать файл hosts для статической привязки имен.

💡

Если Telnet проходит, но 1С не подключается, проблема скорее всего не в портах, а в правах доступа пользователя, лицензиях или конфигурации самого кластера серверов.

Вопросы и ответы по настройке сети 1С

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

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

Почему не работает подключение к SQL Server, хотя порт 1433 открыт?

Скорее всего, ваш экземпляр SQL Server является именованным и использует динамический порт, отличный от 1433. В этом случае необходимо либо открыть UDP порт 1434 для службы Browser, либо, что более надежно, зафиксировать статический порт в настройках SQL Server Configuration Manager и открыть именно его.

Нужно ли открывать порты для файлового варианта 1С?

Нет, для файлового варианта работы 1С:Предприятие не требуется открытие специальных портов сервера приложений, так как обмен данными идет напрямую по протоколам файлового доступа (SMB/CIFS). Достаточно обеспечить доступ к общей папке с базой данных по стандартным сетевым правилам Windows (порты 445, 139).

Как узнать, какой порт занимает конкретный процесс rphost?

Запустите командную строку с правами администратора и введите команду netstat -ano | findstr :154 (или часть известного порта). В выводе вы увидите список активных подключений и PID процесса. Сопоставив PID с диспетчером задач, можно определить, какому именно рабочему процессу принадлежит соединение.

Безопасно ли открывать порты 1С в интернет?

Прямая публикация портов сервера 1С (1541 и др.) в открытый интернет крайне не рекомендуется из-за рисков безопасности. Для внешнего доступа следует использовать VPN-туннель для сотрудников или публиковать базу через веб-сервер (IIS/Apache) с обязательным использованием защищенного протокола HTTPS и дополнительными средствами защиты периметра.