К статье
Практический материал

Администрирование · 11 мин

Как проверить порты 1С: полная инструкция по диагностике

Как проверить порты 1С: команды netstat и Test-NetConnection, стандартные порты сервера 1С 1540–1591, настройка брандмауэра и решение типичных проблем.

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

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

Материал охватывает типовой клиент-серверный вариант: агент сервера 1С, рабочие процессы, менеджер кластера, а также подключение к СУБД (MS SQL, PostgreSQL). Файловый режим работы портов сервера 1С не использует — там проблемы соединения связаны с доступом к сетевой папке, а не с портами.

Какие порты использует 1С и зачем их знать

Прежде чем проверять, нужно понимать, что именно должно быть открыто. В стандартной установке сервера 1С:Предприятия 8.3 задействованы следующие порты: 1540 — агент сервера (через него консоль кластера и клиенты получают информацию о кластере), 1541 — менеджер кластера, диапазон 1560–1591 — рабочие процессы rphost, которые непосредственно обслуживают сеансы пользователей. Реестр кластера при этом хранится в каталоге srvinfo, а не на отдельном порту.

Если используется веб-доступ (публикация на IIS или Apache), добавляются порты 80 (HTTP) и 443 (HTTPS). Отдельно стоят порты СУБД: MS SQL Server по умолчанию слушает 1433, PostgreSQL — 5432. Эти порты должны быть открыты между сервером 1С и сервером баз данных, но не обязательно для клиентских машин.

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

Проверка прослушивания портов на самом сервере

Первый шаг — убедиться, что служба агента сервера 1С запущена и порты открыты локально. На сервере Windows откройте командную строку от имени администратора и выполните команду netstat с фильтрацией по нужным портам. В выводе важно состояние LISTENING и адрес: если порт слушается на 0.0.0.0, он доступен со всех сетевых интерфейсов, если только на 127.0.0.1 — внешние подключения невозможны.

cmd
netstat -ano | findstr "1540 1541 1560 1561"

Параметр -o показывает идентификатор процесса (PID), который держит порт. Сопоставить PID с конкретной программой помогает команда tasklist | findstr "PID" или Диспетчер задач на вкладке «Подробности». Для сервера 1С портами владеют процессы ragent.exe (1540), rmngr.exe (1541) и rphost.exe (диапазон рабочих процессов).

На Linux-сервере используют аналогичные средства: ss -tlnp | grep 154 или netstat -tlnp. Ключ -p покажет имя процесса, что сразу отвечает на вопрос, кто занял порт.

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

Проверка портов на сервере
  1. 1
    Откройте services.msc и убедитесь, что служба «Агент сервера 1С:Предприятия» в состоянии «Выполняется»
  2. 2
    Выполните netstat -ano | findstr "1540" и проверьте состояние LISTENING
  3. 3
    По PID из вывода определите через tasklist, что порт держит именно ragent.exe
  4. 4
    Повторите проверку для 1541 и портов рабочих процессов 1560–1591
  5. 5
    Проверьте порт СУБД (1433 или 5432), если база на этом же сервере

Проверка доступности портов с клиентского компьютера

То, что порт слушается на сервере, ещё не значит, что до него можно достучаться по сети. С клиентской машины Windows удобнее всего использовать PowerShell-команду Test-NetConnection — она показывает, проходит ли TCP-соединение до конкретного порта.

powershell
Test-NetConnection -ComputerName srv1c -Port 1541

В результате смотрите поле TcpTestSucceeded: значение True означает, что порт доступен, False — соединение блокируется или не доходит. Проверьте таким образом 1540, 1541 и несколько портов из диапазона 1560–1591. Если Test-NetConnection недоступен (старые версии Windows), используйте telnet: telnet srv1c 1541 — чёрный пустой экран означает успешное подключение, ошибка «сбой подключения» — недоступность.

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

Контрольные точки

Как проверить результат

Test-NetConnection к порту 1541
Норма

TcpTestSucceeded: True

Тревожный признак

False или долгое ожидание с таймаутом

netstat на сервере по порту 1540
Норма

LISTENING на 0.0.0.0 или IP сервера

Тревожный признак

Порта нет в выводе или он на 127.0.0.1

Владелец порта по PID
Норма

ragent.exe, rmngr.exe или rphost.exe

Тревожный признак

Сторонняя программа заняла порт

Подключение клиента 1С
Норма

База открывается без ошибок соединения

Тревожный признак

Ошибка «Ошибка соединения с сервером 1С»

Настройка брандмауэра Windows под порты 1С

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

Создайте входящие правила для TCP-портов 1540, 1541 и диапазона 1560–1591 через оснастку «Брандмауэр Windows в режиме повышенной безопасности» или командой PowerShell:

powershell
New-NetFirewallRule -DisplayName "1C Server" -Direction Inbound -Protocol TCP -LocalPort 1540-1541,1560-1591 -Action Allow

Альтернатива — разрешить входящие подключения не по портам, а по программам: ragent.exe, rmngr.exe, rphost.exe. Такой вариант устойчивее к смене портов, но правила придётся пересоздавать при смене каталога установки платформы, поскольку путь к исполняемым файлам включает номер версии.

Не забывайте про промежуточные устройства: если между клиентами и сервером есть маршрутизатор, аппаратный файрвол или сегментированная сеть с ACL, порты нужно открыть и там. Симптом такой ситуации — Test-NetConnection не проходит с клиентов из другой подсети, но работает из подсети сервера.

Порт занят другой программой: как найти и что делать

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

Порядок действий: определите PID владельца порта через netstat -ano, затем найдите программу через tasklist. Если порт заняла ненужная служба — остановите и отключите её. Если программа нужна, перенастройте один из продуктов на другой порт: для сервера 1С порт агента задаётся в параметрах запуска службы (ключ -port в строке запуска в реестре, ветка службы агента).

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

Типичные ошибки при диагностике портов
01
Открывают только 1540 и 1541, забывая диапазон 1560–1591 — клиент доходит до кластера, но не может подключиться к рабочему процессу
02
Проверяют порт только на сервере и не проверяют доступность с клиента — проблема в сети или брандмауэре остаётся незамеченной
03
Меняют порты агента, но не обновляют строки подключения клиентов и правила брандмауэра
04
Путают порты сервера 1С с портами СУБД и ищут проблему не на той машине
05
Игнорируют антивирус с сетевым экраном, который блокирует трафик поверх брандмауэра Windows

Особые случаи: веб-доступ, СУБД и кластер из нескольких серверов

Веб-клиент и тонкий клиент через веб-сервер

При публикации базы на веб-сервере клиенты подключаются к портам 80 или 443 веб-сервера, а уже веб-сервер обращается к серверу 1С по портам кластера. Поэтому проверка идёт в два этапа: доступность веб-порта с клиента и доступность портов 1540–1591 между веб-сервером и сервером 1С. Если веб-сервер и сервер 1С на одной машине, второй этап сводится к локальной проверке.

Связка с SQL-сервером

Между сервером 1С и сервером СУБД должны быть открыты порты базы данных: 1433 для MS SQL (плюс 1434 UDP для службы обозревателя при использовании именованных экземпляров), 5432 для PostgreSQL. Проверяется так же — Test-NetConnection с сервера 1С к серверу БД. Ошибки вида «соединение с СУБД не установлено» при живом порте обычно означают проблему уже на уровне аутентификации, а не сети.

Несколько серверов в кластере

В отказоустойчивом кластере порты должны быть открыты между всеми узлами: рабочие серверы обмениваются данными друг с другом. Узкий симптом — часть сеансов работает, а часть падает при переключении на конкретный узел. Проверяйте доступность портов попарно между всеми серверами кластера, а не только «клиент — сервер».

Маршрут решения

Как выбрать действие

Порт не слушается на сервереПроверяйте службу агента 1С, логи и конфликт портов с другими программами
Порт слушается, но Test-NetConnection с клиента возвращает FalseПроверяйте брандмауэр Windows, антивирус и сетевые устройства между клиентом и сервером
1540 и 1541 доступны, но клиент всё равно не подключаетсяПроверяйте диапазон рабочих процессов 1560–1591
Порты доступны, а ошибка подключения остаётсяПроблема выше сетевого уровня: проверяйте разрешение имён (DNS), версии платформы и права доступа

FAQ: частые вопросы о портах 1С

Как узнать, на каких портах реально работает мой сервер 1С?

Откройте консоль кластера серверов 1С и посмотрите свойства кластера и рабочих процессов — там указаны фактические порты. Дополнительно сверьтесь со строкой запуска службы агента в реестре Windows и с выводом netstat -ano по процессам ragent, rmngr и rphost.

Нужно ли открывать порты 1540–1591 на клиентских компьютерах?

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

Можно ли изменить стандартные порты сервера 1С?

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

Test-NetConnection показывает False, но брандмауэр отключён. Что ещё мешает?

Проверьте, слушается ли порт вообще (netstat на сервере), не блокирует ли трафик антивирус с собственным сетевым экраном, нет ли между машинами маршрутизатора с ACL, и правильно ли разрешается имя сервера — иногда клиент обращается не на тот IP-адрес.

Файловая база по сети тоже требует открытия портов?

Нет, файловый режим использует доступ к общей сетевой папке по протоколу SMB (порты 445 и 139), а не порты сервера 1С. Если файловая база недоступна, проверяйте сетевые разрешения папки и доступность SMB, а не диапазон 1540–1591.

Порт 1540 слушается только на 127.0.0.1 — это нормально?

Для приёма внешних подключений — нет: такой порт доступен только с самого сервера. Проверьте параметры запуска службы агента и сетевые настройки; обычно агент должен слушать на 0.0.0.0 или на конкретном внешнем IP сервера.

Итог

Что важно запомнить

Диагностика портов 1С строится по цепочке: служба агента запущена → порт слушается на сервере (netstat) → порт доступен с клиента (Test-NetConnection) → брандмауэр и сеть пропускают диапазон 1540–1541 и 1560–1591. Проверяйте каждое звено отдельно, не отключайте защиту полностью и не забывайте про порты рабочих процессов и СУБД.