Для корректной работы информационной системы «1С: Предприятие» критически важна беспрепятственная сетевая коммуникация между рабочими местами пользователей и сервером данных. Администраторы часто сталкиваются с ситуацией, когда приложение запускается, но не может подключиться к базе, или работает некорректно с высокой задержкой. В 90% случаев причина кроется в настройках межсетевого экрана, который блокирует необходимые сетевые соединения.
Понимание того, какие именно порты задействованы в архитектуре 1С, позволяет грамотно настроить правила фильтрации трафика. Это актуально как для локальных сетей предприятий, так и для облачных развертываний, где доступ к ресурсам ограничен политиками безопасности. Игнорирование этих параметров приводит к нестабильной работе клиентского приложения и ошибкам соединения с сервером 1С:Предприятия.
В данной статье мы детально разберем нумерацию портов для различных режимов работы, включая файловый вариант и работу через SQL-сервер. Вы узнаете, как настроить Windows Firewall и сторонние антивирусы, чтобы обеспечить стабильный обмен данными между тонким клиентом и серверной частью без компромиссов в безопасности.
Архитектура сетевого взаимодействия в 1С
Система «1С: Предприятие» использует клиент-серверную архитектуру, где обмен данными происходит по строго определенным протоколам. В основе лежит проприетарный протокол обмена, который работает поверх стека TCP/IP. Для успешной инициализации сессии клиентское приложение должно «достучаться» до сервера по конкретному адресу и номеру порта, который прослушивает демон или служба 1С.
Важно различать порты, используемые для управления кластером серверов, и порты рабочих процессов (rphost). Менеджер кластера принимает входящие соединения от клиентов для аутентификации и выделения ресурсов. После этого создается отдельный рабочий процесс, который выделяет динамический порт для непосредственной передачи данных. Именно эта динамика часто вызывает проблемы при настройке статических правил в фаерволах.
Если вы используете файловый вариант работы, механизм отличается от клиент-серверного. Здесь не задействуется сервер 1С в классическом понимании, а обмен идет напрямую с каталогом базы данных по сетевому протоколу SMB. Однако даже в этом случае могут возникать конфликты, если сетевое окружение настроены неправильно. Понимание разницы между этими режимами — ключ к решению проблем с подключением.
⚠️ Внимание: В современных версиях платформы (8.3.хх) диапазон портов рабочих процессов может изменяться при каждом перезапуске службы, если не задана жесткая конфигурация в файле
ragent.cfg.
Порты для клиент-серверного варианта работы
При работе в режиме клиент-сервер основным компонентом, принимающим соединения, является агент сервера (ragent). По умолчанию он слушает TCP порт 1541. Через этот порт клиент устанавливает первичное соединение для получения списка доступных информационных баз и аутентификации пользователя. Без открытия этого порта запуск 1С невозможен в принципе.
После успешного подключения к агенту, система выделяет рабочий процесс rphost для выполнения кода и работы с данными. Этот процесс слушает порт из диапазона, заданного в настройках кластера. По умолчанию диапазон составляет от 1540 до 1554, но он может быть расширен администратором. Клиент переподключается на этот новый порт для основной сессии.
Кроме того, для работы веб-сервера (если используется публикация через IIS или Apache) и встроенного веб-сервера 1С требуются дополнительные порты. Обычно это стандартный 80-й порт для HTTP и 443-й для HTTPS. Однако сам процесс публикации и взаимодействие с кластером серверов также требует открытия порта 1541 для служебных команд.
- 🔌 1541/tcp — основной порт агента сервера 1С:Предприятия (ragent).
- 🔄 1540-1554/tcp — диапазон портов для рабочих процессов (rphost), настраивается в свойствах кластера.
- 🌐 80/tcp или 443/tcp — порты веб-сервера для публикации баз в режиме веб-клиента.
- 📡 UDP 1541 — используется для широковещательного поиска серверов в локальной сети (опционально).
Если вы меняете диапазон портов рабочих процессов в настройках кластера, убедитесь, что новые значения также добавлены в правила исключения брандмауэра.
Настройка портов для файлового варианта
В файловом режиме работы клиент 1С обращается к базе данных как к обычной сетевой папке. Здесь не используется порт 1541, так как отсутствует сервер 1С. Вместо этого критически важны порты протокола SMB (Server Message Block), который обеспечивает доступ к файлам базы (.1CD, .1CDD, .1CDl) по сети.
Основной порт для SMB — это 445/tcp. Именно через него происходит чтение и запись данных. В старых версиях Windows также мог использоваться порт 139 (NetBIOS), но в современных средах (Windows 10/11, Server 2016+) основным является 445. Если этот порт закрыт, пользователь получит ошибку «Монопольный режим» или «Каталог базы данных недоступен».
Также стоит учитывать, что для корректного разрешения имен компьютеров в локальной сети могут потребоваться порты NetBIOS Name Service (137/udp) и NetBIOS Datagram Service (138/udp). Хотя прямой доступ к файлам идет по 445 порту, без службы имен клиент может просто «не видеть» путь к серверу, если подключение осуществляется по имени, а не по IP-адресу.
| Протокол | Порт | Назначение | Статус |
|---|---|---|---|
| TCP | 445 | SMB Direct (доступ к файлам) | Обязательно |
| TCP | 139 | NetBIOS Session Service | Устаревает |
| UDP | 137 | NetBIOS Name Service | Желательно |
| UDP | 138 | NetBIOS Datagram Service | Желательно |
⚠️ Внимание: Протокол SMB версии 1.0 небезопасен и отключен в современных ОС по умолчанию. Убедитесь, что на файловом сервере включена поддержка SMB 2.0 или 3.0, чтобы избежать уязвимостей при открытии порта 445.
Порты СУБД: MS SQL Server и PostgreSQL
При использовании клиент-серверного варианта данные хранятся не в файлах 1С, а в полноценной системе управления базами данных (СУБД). В этом случае клиент 1С общается с сервером 1С (порт 1541), а сервер 1С, в свою очередь, общается с СУБД. Прямое соединение клиента с СУБД обычно не требуется, но для администрирования и резервного копирования порты СУБД должны быть открыты на уровне сети.
Для Microsoft SQL Server стандартным портом является 1433/tcp. Если используется именованный экземпляр (например, SQLExpress), то фиксированного порта нет, и используется служба Browser на порту 1434/udp для динамического выделения. Для стабильной работы рекомендуется принудительно задать статический порт в настройках SQL Server Configuration Manager.
Для PostgreSQL, который все чаще используется в связке с 1С, стандартным портом является 5432/tcp. В отличие от SQL Server, PostgreSQL по умолчанию настроен на прослушивание этого статического порта, что упрощает настройку правил фаервола. Необходимо убедиться, что этот порт открыт для IP-адреса сервера 1С:Предприятия.
Как проверить занятость порта в Windows?
Введите команду netstat -ano | findstr :1541 в командной строке. Если порт занят, вы увидите строку с состоянием LISTENING и PID процесса, который его использует.
Настройка правил в Брандмауэре Windows
Для обеспечения работы 1С необходимо создать входящие и исходящие правила в стандартном брандмауэре Windows. Делать это нужно на всех узлах: на сервере 1С, на сервере баз данных и на рабочих станциях пользователей. Наиболее надежный способ — создание правила для конкретного исполняемого файла, а не только для порта.
На сервере 1С следует добавить в исключения следующие исполняемые файлы из каталога установки платформы: ragent.exe, rmngr.exe, rphost.exe и ibsrvr.exe. Это гарантирует, что даже при смене порта рабочим процессом, трафик будет пропущен, так как правило привязано к приложению, а не к номеру порта.
На клиентских машинах достаточно разрешить работу самого клиента 1cv8.exe (или 1cv8c.exe для тонкого клиента) и обеспечить проходимость портов 1541 и диапазона рабочих процессов. Если используется файловый вариант, убедитесь, что в правилах разрешен доступ к «Общему доступу к файлам и принтерам (SMB-In)».
☑️ Проверка настроек фаервола
Диагностика проблем с подключением
Если после настройки портов проблема сохраняется, необходимо провести диагностику сетевого пути. Первым инструментом является утилита telnet или Test-NetConnection в PowerShell. Они позволяют проверить, доступен ли конкретный порт с рабочей станции пользователя. Например, команда tnc server_name -port 1541 покажет статус соединения.
Частой ошибкой является блокировка трафика антивирусным ПО сторонних производителей (Kaspersky, ESET, Dr.Web), которое имеет собственный сетевой экран, независимый от брандмауэра Windows. В таких случаях правила необходимо дублировать в интерфейсе антивируса, добавляя 1С в список доверенных приложений.
Также стоит проверить файл hosts на предмет некорректных записей, которые могут перенаправлять имя сервера на неверный IP-адрес. Проблемы с DNS могут приводить к тому, что клиент пытается подключиться по старому адресу, даже если сетевые порты формально открыты. Используйте команду ping для проверки разрешения имен.
⚠️ Внимание: Если вы используете виртуализацию (Hyper-V, VMware), проверьте настройки сетевого адаптера виртуальной машины. Режим NAT может скрывать порты сервера от внешней сети, требуя настройки проброса портов (Port Forwarding).
Наиболее надежная стратегия защиты — создание правил брандмауэра не по номерам портов, а по хеш-суммам исполняемых файлов 1С (ragent.exe, rphost.exe), что исключает ошибки при динамической смене портов.
Часто задаваемые вопросы (FAQ)
Можно ли изменить порт 1541 на другой?
Да, порт агента сервера можно изменить. Для этого необходимо отредактировать файл конфигурации ragent.cfg или указать параметр при запуске службы. Однако делать это не рекомендуется без веских причин, так как это потребует перенастройки всех клиентов и может усложнить диагностику.
Почему 1С работает медленно при открытом порте 1541?
Медленная работа часто связана не с портом менеджера (1541), а с портами рабочих процессов (rphost) или СУБД. Если диапазон портов рабочих процессов ограничен или перекрыт другим ПО, сессия может постоянно пересоздаваться. Также проверьте скорость отклика порта 1433 (SQL) или 5432 (PostgreSQL).
Нужно ли открывать порты для обновления платформы 1С?
Для автоматического обновления через конфигуратор требуется доступ к интернету по протоколам HTTP (80) и HTTPS (443). Специфических портов для обновления нет, используется стандартный веб-трафик для связи с серверами обновлений 1С.
Как узнать, какой порт использует конкретная база 1С?
Запустите консоль администрирования серверов 1С (mmc). В свойствах кластера перейдите в раздел «Рабочие серверы» -> «Рабочие процессы». Там будет указан конкретный порт, который в данный момент занимает процесс, обслуживающий вашу информационную базу.