Администрирование · 10 мин
Какие порты открыты для сервера 1С
Какие порты использует сервер 1С:Предприятие, агент кластера, СУБД и веб-доступ. Таблица портов, проверка через netstat и настройка брандмауэра.
Ответ на вопрос, какие порты должны быть открыты для сервера 1С, зависит от архитектуры развёртывания: файловый режим вообще не требует открытия сетевых портов на сервере, а клиент-серверный вариант использует стандартный диапазон портов кластера 1С плюс порты СУБД. Чаще всего проблемы с подключением клиентов возникают именно из-за закрытых портов на межсетевом экране Windows или Linux, а не из-за ошибок в самой платформе.
Базовый набор для типового кластера 1С:Предприятие 8.3 — порты 1540, 1541 и диапазон 1560–1591. К ним добавляется порт СУБД (например, 1433 для Microsoft SQL Server или 5432 для PostgreSQL), а при публикации через веб-сервер — порты 80 и 443. Если сервер лицензирования 1С вынесен на отдельную машину, учитывается ещё и порт 1545.
Ниже разобраны назначение каждого порта, способы проверить, какие порты реально слушает сервер, типовые правила брандмауэра и ошибки, из-за которых клиенты не видят базу даже при правильно запущенных службах.
Какие порты использует кластер серверов 1С
Кластер серверов 1С:Предприятие состоит из нескольких компонентов, и каждый занимает свой порт. Агент кластера (процесс ragent) по умолчанию слушает порт 1540 — через него клиентские приложения получают первичную информацию о кластере. Менеджер кластера (rmngr) занимает порт 1541, а консоль администрирования подключается именно к нему.
Рабочие процессы кластера (rphost) распределяются по диапазону 1560–1591. Их количество зависит от настроек требований назначения функциональности и нагрузки: на маленьком сервере может работать один-два процесса, на нагруженном — десятки. Именно к этим портам в итоге подключается клиент 1С после обращения к агенту, поэтому открыть только 1540 недостаточно.
Первичная точка подключения клиентов и консоли
Управление кластером, сеансы, блокировки
Исполнение прикладного кода, соединения с СУБД
Нужен при вынесенном сервере лицензирования (HASP/программные)
Если при установке кластера были изменены параметры службы агента, порты могут отличаться. Фактические значения смотрятся в параметрах запуска службы «Агент сервера 1С:Предприятия» (ключ -port) и в консоли кластера в свойствах центрального сервера.
Порты СУБД и сопутствующих служб
Кластер 1С сам по себе не хранит данные — он обращается к СУБД, и порт базы данных должен быть открыт между сервером 1С и сервером СУБД. Если обе роли развёрнуты на одной машине, внешнее открытие порта СУБД не требуется и даже нежелательно с точки зрения безопасности.
| Компонент | Порт по умолчанию | Кому открывать |
|---|---|---|
| Microsoft SQL Server | 1433 (TCP) | Только серверу кластера 1С |
| PostgreSQL | 5432 (TCP) | Только серверу кластера 1С |
| IBM Db2 | 50000 (TCP) | Только серверу кластера 1С |
| Oracle Database | 1521 (TCP) | Только серверу кластера 1С |
| Веб-сервер (IIS/Apache) | 80 / 443 | Всем клиентам веб-доступа |
| Сервер лицензий 1С | 1545 | Серверам кластера 1С |
Отдельного внимания заслуживает веб-доступ. При публикации информационной базы через IIS или Apache клиенты обращаются не к портам кластера напрямую, а к веб-серверу по HTTP/HTTPS. Веб-сервер, в свою очередь, уже взаимодействует с кластером. В такой схеме наружу открываются только 80 и 443, а порты 1540–1591 остаются доступными только внутри контура серверов.
Как проверить, какие порты реально открыты на сервере
Прежде чем менять правила брандмауэра, полезно посмотреть, какие порты фактически слушают процессы сервера 1С. Это позволяет отличить ситуацию «служба не запущена» от ситуации «служба работает, но порт закрыт файрволом».
В Windows используется команда netstat с фильтрацией по процессам ragent, rmngr и rphost. В Linux аналогичную информацию дают утилиты ss или netstat.
netstat -ano | findstr "1540 1541 1560 1561" | findstr LISTENINGss -tlnp | grep -E 'ragent|rmngr|rphost'Со стороны клиента доступность порта проверяется командой Test-NetConnection в PowerShell (для Windows) или telnet/nc. Если служба на сервере слушает порт, а с клиента порт недоступен — проблема точно в межсетевом экране или сетевой маршрутизации, а не в 1С.
Test-NetConnection -ComputerName srv1c -Port 1540Настройка брандмауэра Windows для сервера 1С
На Windows Server правила создаются через оснастку «Брандмауэр Защитника Windows в режиме повышенной безопасности» или командой netsh. Правильнее создавать входящие правила для конкретных портов, а не отключать брандмауэр целиком — полное отключение снимает защиту со всех остальных служб сервера.
- 1Откройте оснастку wf.msc и перейдите в раздел «Правила для входящих подключений»
- 2Создайте правило типа «Порт», протокол TCP, порты 1540–1541 и 1560–1591
- 3Выберите действие «Разрешить подключение», примените к профилю «Доменный» или «Частный»
- 4При необходимости ограничьте правило подсетью клиентских машин на вкладке «Область»
- 5Проверьте доступность с клиентской машины командой Test-NetConnection
Альтернатива — правило на основе программы: разрешить входящие подключения для исполняемых файлов ragent.exe, rmngr.exe и rphost.exe из каталога платформы. Такой подход устойчив к смене портов, но требует обновления правила при установке новой версии платформы, если меняется путь к каталогу bin.
Для Linux-развёртываний правила добавляются через firewalld или iptables. Например, для firewalld достаточно открыть нужные порты в активной зоне и перечитать конфигурацию.
firewall-cmd --permanent --add-port=1540-1541/tcp --add-port=1560-1591/tcp && firewall-cmd --reloadТиповые сценарии и особенности открытия портов
Всё на одном сервере
Когда кластер 1С и СУБД находятся на одной машине, взаимодействие между ними идёт через локальный интерфейс, и порт СУБД открывать вовне не нужно. Наружу открываются только порты кластера (1540–1541, 1560–1591) для толстых и тонких клиентов либо 80/443 для веб-доступа.
Кластер и СУБД на разных серверах
В этом случае на сервере СУБД создаётся правило, разрешающее подключение к порту базы данных только с IP-адреса сервера 1С. Открывать порт 1433 или 5432 для всей сети — распространённая и опасная ошибка: база данных становится доступной любому хосту в сегменте, включая потенциально скомпрометированные машины.
Доступ через интернет
Напрямую публиковать порты кластера 1С в интернет нельзя — протокол кластера не рассчитан на открытую сеть. Правильные варианты: публикация базы через веб-сервер с HTTPS и аутентификацией, доступ по VPN с последующим подключением к внутренним портам или использование RDS/терминального доступа.
Частые ошибки и как их избежать
Ещё одна нетривиальная ситуация — динамическое назначение портов рабочими процессами при нестандартных настройках кластера. Если диапазон в свойствах кластера изменён, правила брандмауэра нужно привести в соответствие, иначе часть соединений будет обрываться под нагрузкой, когда кластер запускает дополнительные процессы rphost.
Как проверить результат
netstat/ss показывает LISTENING на 1540 от имени ragent
Порт не слушается — служба остановлена или падает при запуске
Test-NetConnection по 1540 и 1560 возвращает TcpTestSucceeded: True
TcpTestSucceeded: False — порт закрыт брандмауэром или недоступен маршрут
База открывается, сеанс виден в консоли кластера
Ошибка «соединение с сервером разорвано» или тайм-аут при запуске
Порт СУБД доступен только с сервера 1С
Порт отвечает с любой машины сети — правило слишком широкое
Что важно запомнить
Минимум для кластера 1С — порты 1540, 1541 и 1560–1591, открытые только для клиентской сети. Порт СУБД открывается только серверу 1С, веб-доступ идёт через 80/443, а публикация портов кластера в интернет недопустима.
FAQ
Нужно ли открывать порты для файловой базы 1С?
Нет. В файловом режиме база лежит в сетевой папке, и клиенты обращаются к ней по протоколу SMB (порты 445/139 на файловом сервере). Службы кластера 1С при этом не используются, и порты 1540–1591 открывать не требуется.
Почему клиент видит сервер, но выдаёт ошибку при запуске базы?
Чаще всего открыт только порт агента 1540, а диапазон рабочих процессов 1560–1591 закрыт. Клиент получает от агента адрес рабочего процесса, но не может к нему подключиться. Проверьте правила брандмауэра на весь диапазон, а не на один порт.
Можно ли изменить порты кластера 1С?
Да. Порт агента задаётся параметром -port в настройках службы, а диапазон рабочих портов меняется в свойствах кластера в консоли администрирования. После изменения нужно перезапустить службы и скорректировать правила брандмауэра и строки подключения клиентов.
Какой порт нужен для сервера лицензий 1С?
При выносном сервере лицензирования используется порт 1545. Он должен быть открыт между серверами кластера 1С и машиной, где установлена служба лицензирования. Клиентским компьютерам доступ к этому порту обычно не нужен.
Опасно ли открывать порт 1433 или 5432 всей локальной сети?
Да. Прямой доступ к СУБД нужен только серверу 1С. Открытый для всех порт базы данных позволяет любому хосту в сети пытаться подключиться к СУБД, обходя механизмы разграничения доступа 1С. Ограничьте правило конкретным IP-адресом сервера кластера.
Как организовать доступ к 1С из интернета без проброса портов кластера?
Безопасные варианты: публикация базы через веб-сервер (IIS или Apache) с HTTPS и сертификатом, подключение через VPN с последующей работой по внутренним портам или терминальный доступ. Прямой проброс портов 1540–1591 на внешний интерфейс использовать нельзя.