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

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

В данной статье мы детально разберем нумерацию портов для различных режимов работы, рассмотрим нюансы публикации на веб-серверах Apache и IIS, а также предоставим готовые алгоритмы настройки правил для Windows и Linux. Порт 1540-1541 (TCP/UDP) является основным транспортным каналом для сервера 1С в режиме управляемого приложения. Без открытия этого диапазона клиентское соединение физически невозможно, независимо от настроек самой конфигурации.

Базовые порты сервера 1С:Предприятие

Основным механизмом взаимодействия между тонким клиентом и сервером 1С является проприетарный протокол, работающий поверх стека TCP/IP. По умолчанию установка сервера резервирует определенный диапазон портов для обработки входящих запросов. Стандартный диапазон 1540-1541 используется для приема соединений от клиентов. Важно понимать, что это не один статичный порт, а диапазон, который сервер может использовать в зависимости от нагрузки и количества одновременных сессий.

Помимо основного канала, существует порт менеджера кластера. Обычно это порт 1540 (TCP), через который происходит первичное рукопожатие и перенаправление клиента на конкретный рабочий процесс. Если в вашей инфраструктуре используется несколько серверов 1С, объединенных в кластер, то взаимодействие между центральным сервером кластера и рабочими серверами также происходит по этим адресам. Динамическое распределение портов позволяет системе масштабироваться, но усложняет настройку строгих правил безопасности.

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

💡

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

Следует также учитывать протокол UDP. Хотя основной трафик данных идет по TCP, служебные пакеты обнаружения серверов в локальной сети и некоторые механизмы кластеризации могут использовать UDP на тех же адресах. Блокировка UDP-трафика часто приводит к тому, что сервер не отображается в списке доступных при автоматическом поиске, хотя подключение по прямому IP-адресу работает корректно.

Порты для работы с СУБД (MS SQL, PostgreSQL, Oracle)

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

Для наиболее распространенной в корпоративном секторе СУБД Microsoft SQL Server стандартным является порт 1433 (TCP). Однако, если используется именованный экземпляр (Named Instance), порт может быть динамическим. В этом случае необходимо дополнительно открыть порт 1434 (UDP), который отвечает за работу службы браузера SQL и перенаправление клиентов на актуальный динамический порт экземпляра. Игнорирование этого нюанса — частая причина ошибок при развертывании.

Если ваша инфраструктура построена на базе PostgreSQL, который набирает популярность в среде 1С, то стандартным портом является 5432 (TCP). В отличие от MS SQL, PostgreSQL по умолчанию использует статический порт, что упрощает настройку правил фильтрации. Для Oracle Database стандартным портом слушателя является 1521 (TCP). Ниже приведена сводная таблица портов для популярных СУБД.

Система управления БД Протокол Порт по умолчанию Назначение
MS SQL Server (Default) TCP 1433 Основной канал данных
MS SQL Server (Browser) UDP 1434 Поиск именованных экземпляров
PostgreSQL TCP 5432 Соединение с сервером БД
Oracle Listener TCP 1521 Слушатель соединений

При настройке правил безопасности для СУБД критически важно ограничить доступ к этим портам. Никогда не открывайте порты базы данных для всей сети 0.0.0.0/0. Доступ к портам 1433, 5432 или 1521 должен быть разрешен только с IP-адреса сервера 1С:Предприятие. Это создает дополнительный уровень защиты: даже если злоумышленник обойдет защиту клиентского уровня, он не сможет подключиться к данным напрямую, минуя сервер приложений.

☑️ Проверка настроек СУБД

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

Веб-публикация и порты HTTP/HTTPS

Современные требования к доступности 1С:Предприятия часто диктуют необходимость работы через веб-браузер или мобильные приложения. В этом случае между клиентом и сервером 1С появляется промежуточное звено — веб-сервер (Apache, Nginx, IIS). Архитектура подключения меняется: клиент общается с веб-сервером по стандартным веб-протоколам, а веб-сервер транслирует запросы на сервер приложений 1С.

Для организации такого взаимодействия необходимо открыть стандартные порты веб-сервера. Для незащищенного соединения это порт 80 (TCP), а для защищенного соединения по протоколу SSL/TLS — порт 443 (TCP). Именно эти адреса должны быть доступны из внешней сети, если вы планируете предоставлять доступ пользователям через интернет. Сам сервер 1С при этом может оставаться во внутренней сети и не иметь прямого выхода наружу.

Важным компонентом веб-публикации является расширение веб-сервера для 1С. Оно устанавливается как модуль или ISAPI-фильтр и обрабатывает специфические запросы .dll или .so библиотек. Если веб-сервер работает на нестандартном порту (например, 8080 или 8443), убедитесь, что в настройках публикации 1С и в адресной строке браузера пользователей указан именно этот порт. Ошибка в одной цифре сделает ресурс недоступным.

⚠️ Внимание: При использовании самоподписанных сертификатов для порта 443 браузеры будут выдавать предупреждение о безопасности. Это нормально для тестовых сред, но для продуктивной системы используйте сертификаты от доверенного центра сертификации (CA), чтобы избежать блокировки соединения на стороне клиентов.

Также стоит упомянуть порт публикации служб HTTP. В настройках сервера 1С можно указать порт для встроенного HTTP-сервера, который используется для некоторых служебных целей или работы легковесных клиентов. По умолчанию он часто совпадает с диапазоном 1540-1550, но может быть вынесен отдельно. Проверьте файл conf\httpd.conf или настройки кластера, если стандартный доступ через веб-сервер не устанавливается.

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

Настройка брандмауэра Windows Server

Операционные системы семейства Windows Server оснащены встроенным межсетевым экраном, который активируется сразу после установки. Для корректной работы 1С необходимо создать правила для входящих подключений. Делать это лучше через оснастку WF.msc (Брандмауэр Windows в режиме повышенной безопасности), а не через простой интерфейс панели управления, так как это дает полный контроль над параметрами.

Создайте новое правило для входящих подключений, выбрав тип"Для порта". Укажите протокол TCP и локальные порты 1540-1541. В следующем окне выберите действие"Разрешить подключение". Обязательно отметьте профили"Доменный","Частный" и, при необходимости,"Публичный". Дайте правилу понятное имя, например, 1C_Server_Enterprise. Повторите процедуру для UDP, если требуется обнаружение серверов в сети.

Отдельное правило потребуется для службы удаленного управления кластером, если вы используете консоль администрирования на удаленной машине. Также не забудьте про порты СУБД. Если SQL Server установлен на том же сервере, добавьте правило для порта 1433. Если базы данных вынесены на отдельный сервер, то на сервере 1С нужно открыть только исходящие соединения к SQL, а на сервере SQL — входящие от 1С.

netsh advfirewall firewall add rule name="1C Enterprise Server" dir=in action=allow protocol=TCP localport=1540-1541

Использование командной строки netsh позволяет автоматизировать процесс настройки, что особенно удобно при массовом развертывании серверов через скрипты или системы управления конфигурациями. Приведенная выше команда создает правило, аналогичное созданному через графический интерфейс. Всегда проверяйте список активных правил после внесения изменений командой netsh advfirewall firewall show rule name=all.

Что делать, если правило создано, но не работает?

Проверьте, не блокирует ли трафик антивирусное ПО сторонних производителей (Kaspersky, ESET, Dr.Web). Часто их сетевые экраны имеют приоритет над системным брандмауэром Windows и требуют отдельной настройки исключений.

Конфигурация iptables и firewalld в Linux

В среде Linux настройка сетевого экрана зависит от используемого дистрибутива и версии ядра. В современных системах (CentOS 7+, RHEL, Fedora, Ubuntu 20.04+) чаще всего используется демон firewalld, который является надстройкой над iptables или nftables. Для старых систем или специфических задач может потребоваться прямая работа с таблицами iptables. Принцип действия одинаков: необходимо принять пакеты на определенных портах.

При использовании firewalld наиболее удобным способом является добавление портов в постоянную конфигурацию. Команда firewall-cmd позволяет управлять правилами без перезагрузки службы. Для открытия портов 1С выполните команду с флагом --permanent, чтобы правила сохранились после перезагрузки, и затем примените изменения. Не забудьте открыть порты и для СУБД, если она установлена на этом же узле.

firewall-cmd --permanent --add-port=1540-1541/tcp

firewall-cmd --permanent --add-port=1540-1541/udp

firewall-cmd --reload

Если вы работаете с классическим iptables, правила добавляются в цепочку INPUT. Пример команды: iptables -A INPUT -p tcp --dport 1540:1541 -j ACCEPT. Важно помнить о порядке правил: если выше в списке есть правило, запрещающее все соединения, ваше правило разрешения может не сработать. Всегда размещайте разрешающие правила до запрещающих.

⚠️ Внимание: В Linux критически важен порядок правил в цепочках фильтрации. Если вы используете скрипты инициализации, убедитесь, что правила для 1С добавляются до правила"DROP ALL" или"REJECT". Иначе сервер останется недоступным, несмотря на наличие правила разрешения.

После настройки обязательно проверьте статус службы и список открытых портов. Для firewalld используйте команду firewall-cmd --list-all. Убедитесь, что в секции"ports" отображаются добавленные вами диапазоны. Также протестируйте доступ с удаленной машины с помощью утилиты telnet или nc (netcat), чтобы убедиться, что пакеты действительно проходят через фильтр.

💡

В Linux изменения в iptables без флага сохранения (save) или без добавления в permanent конфигурацию firewalld исчезнут после перезагрузки сервера. Всегда проверяйте персистентность правил.

Диагностика и проверка доступности портов

После теоретической настройки правил необходимо убедиться, что они работают на практике. Существует несколько способов проверки доступности портов. Самый простой и надежный метод — использование утилиты telnet или Test-NetConnection в PowerShell. Запустите команду с клиентской машины, указав IP-адрес сервера и порт. Если экран моргнет и курсор останется мигать — соединение успешно установлено.

Для более глубокой диагностики можно использовать утилиту netstat на самом сервере. Команда netstat -an | findstr 1540 (для Windows) или netstat -tulpn | grep 1540 (для Linux) покажет, слушает ли процесс сервера 1С указанный порт. Если порт находится в состоянии LISTENING, значит, служба запущена корректно. Если состояние TIME_WAIT или порт не отображается вовсе, проблема на стороне службы, а не сети.

  • 🔍 Используйте tcping для проверки доступности порта в режиме реального времени с отображением пинга, что удобнее стандартного ping, который проверяет только ICMP.
  • 🛡️ Проверьте логи брандмауэра (Event Viewer в Windows или /var/log/firewalld в Linux) на наличие записей о блокировке пакетов (DROP/REJECT) с IP-адресов клиентов.
  • 🌐 Убедитесь, что промежуточное сетевое оборудование (маршрутизаторы, аппаратные фаерволы) не фильтрует трафик между подсетями, даже если на серверах все настроено верно.

Частой ошибкой является проверка доступности с самого сервера ("локально"). Успешное подключение localhost к порту 1540 говорит лишь о том, что служба работает, но не гарантирует, что порт открыт для внешней сети. Всегда проводите тесты с другой машины в той же подсети или из внешней сети, имитируя реальное подключение пользователя.

Какой порт используется для обновления конфигураций 1С?

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

Нужно ли открывать порты для толстого клиента?

Да, толстый клиент (режим совместимости или администрирование) подключается к серверу 1С точно так же, как и тонкий клиент, используя порт 1540-1541. Разница лишь в объеме передаваемых данных и функциональности интерфейса. Сетевые требования идентичны. Если толстый клиент используется для прямого подключения к файловой базе, то порты сервера 1С не нужны, но требуется доступ к сетевой папке (SMB, порт 445).

Почему 1С работает медленно при открытых портах?

Если порты открыты, но работа замедлена, проблема может быть не в блокировке, а в настройках MTU сетевого интерфейса или потерях пакетов. Также проверьте, не включено ли антивирусное сканирование трафика 1С в реальном времени. Добавьте процессы ragent.exe, rmngr.exe, rphost.exe и файлы баз данных в исключения антивируса.

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

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

Как проверить, не блокирует ли провайдер порты?

Если сервер находится в облаке или за NAT провайдера, убедитесь, что в панели управления хостингом открыты соответствующие порты (NAT/Port Forwarding). Провайдеры часто блокируют входящие соединения на нестандартных портах. Для проверки используйте онлайн-сервисы сканирования портов, указав ваш внешний IP-адрес.