Администрирование · 11 мин
Сервер 1С: какие порты нужно открыть для работы
Какие порты использует сервер 1С:Предприятие: 1540, 1541, 1560–1591, 1545, 1433 и 5432. Инструкция по открытию портов в брандмауэре и проверке подключения.
Клиент-серверный режим работы 1С:Предприятия подразумевает, что тонкие и толстые клиенты обращаются к кластеру серверов по сети, а кластер, в свою очередь, работает с СУБД. Каждое из этих взаимодействий идёт по определённым TCP-портам, и если они закрыты брандмауэром или сетевым экраном, пользователи получают ошибки подключения: «Ошибка соединения с сервером», «Не найден кластер серверов» и подобные.
Минимальный набор портов для работы сервера 1С — это 1540, 1541 и диапазон 1560–1591. Порт 1545 нужен для подключения консоли администрирования кластера, а порты СУБД (1433 для MS SQL Server, 5432 для PostgreSQL) должны быть доступны только с самого сервера 1С, а не со всех машин сети. Ниже разберём каждый порт, сценарии настройки и типичные ошибки.
Какие порты использует сервер 1С и зачем
Кластер серверов 1С состоит из нескольких процессов, и у каждого своя роль и свой порт. Понимание этой схемы помогает открывать только нужное, а не разрешать весь диапазон «на всякий случай».
- 1540 (TCP) — порт агента сервера (ragent). Через него клиенты получают список кластеров и информационных баз, сюда же первично обращается консоль кластера.
- 1541 (TCP) — порт менеджера кластера (rmngr). Используется для служебных соединений внутри кластера и при подключении клиентов.
- 1560–1591 (TCP) — диапазон портов рабочих процессов (rphost). Каждый рабочий процесс занимает свой порт, именно через них выполняется основная работа прикладных решений.
- 1545 (TCP) — порт агента для подключения консоли администрирования серверов 1С (оснастка «Администрирование серверов 1С Предприятия»).
Отдельно стоит порт 1542, который используется в некоторых конфигурациях для менеджера кластера при нестандартных настройках, а также порты отладки: по умолчанию серверная отладка работает в диапазоне 1560–1591 вместе с рабочими процессами, но при включении отладки по HTTP или отдельном диапазоне портов его придётся учитывать дополнительно.
Порты СУБД: кому на самом деле нужен доступ
Частая ошибка — открывать порт SQL-сервера для всей локальной сети. На практике клиенты 1С никогда не подключаются к СУБД напрямую: они общаются только с кластером 1С, а уже кластер обращается к базе данных. Поэтому доступ к порту СУБД нужен только с сервера приложений 1С.
| СУБД | Порт по умолчанию | Кому открывать |
|---|---|---|
| MS SQL Server | TCP 1433 | Только сервер 1С (агент кластера) |
| PostgreSQL | TCP 5432 | Только сервер 1С |
| IBM Db2 | TCP 50000 | Только сервер 1С |
| Oracle Database | TCP 1521 | Только сервер 1С |
Если сервер 1С и СУБД установлены на одной машине, внешние правила для портов СУБД вообще не нужны — трафик идёт локально. Это самый безопасный вариант с точки зрения сетевой поверхности атаки. Если же СУБД вынесена на отдельный сервер, создавайте правило брандмауэра с ограничением по IP-адресу сервера 1С.
Настройка брандмауэра Windows на сервере 1С
На сервере под управлением Windows правила создаются через оснастку «Брандмауэр Защитника Windows в режиме повышенной безопасности» (wf.msc) либо командой netsh. Проще всего создать одно правило на диапазон и два правила на отдельные порты.
- 1Откройте wf.msc и выберите «Правила для входящих подключений» → «Создать правило».
- 2Тип правила — «Для порта», протокол TCP, указанные локальные порты: 1540-1541, 1545, 1560-1591.
- 3Действие — «Разрешить подключение», профили — «Доменный» и «Частный» (публичный не включайте без необходимости).
- 4Дайте правилу понятное имя, например «1C Server Cluster», и сохраните.
- 5На сервере СУБД создайте правило для порта 1433 или 5432 и в свойствах правила на вкладке «Область» укажите IP сервера 1С.
Тот же результат можно получить одной командой из командной строки, запущенной от имени администратора:
netsh advfirewall firewall add rule name="1C Server" dir=in action=allow protocol=TCP localport=1540-1541,1545,1560-1591После добавления правила убедитесь, что оно включено и применяется к нужному сетевому профилю. Если сервер находится в домене, а правило создано только для частного профиля, оно работать не будет — это одна из самых частых причин «открытого, но неработающего» порта.
Настройка firewall на Linux
На Linux-сервере агент 1С использует те же порты. В зависимости от дистрибутива применяется firewalld (RHEL, CentOS, AlmaLinux) или ufw (Debian, Ubuntu), либо правила iptables напрямую.
Для firewalld добавьте порты в постоянную конфигурацию зоны и перечитайте правила. Для ufw используется команда allow с указанием протокола tcp. В обоих случаях после изменения конфигурации проверьте, что правила реально применились, — команда вывода активных правил покажет итоговое состояние.
firewall-cmd --permanent --add-port=1540-1541/tcp --add-port=1545/tcp --add-port=1560-1591/tcp && firewall-cmd --reloadЕсли между клиентами и сервером есть промежуточное сетевое оборудование — маршрутизаторы, аппаратные файрволы, VPN-шлюзы, — порты должны быть разрешены и там. Настройка только локального брандмауэра при фильтрующем коммутаторе между подсетями результата не даст.
Проверка: открыт ли порт и кто виноват в ошибке
Диагностику стоит вести последовательно, от клиента к серверу. Сначала проверьте, что процессы кластера вообще запущены и слушают порты: на Windows это видно командой netstat -ano с фильтрацией по номеру порта, на Linux — ss -tlnp. Если процесс rphost не запущен, никакие правила брандмауэра не помогут.
Как проверить результат
netstat/ss показывает LISTENING для ragent на 1540
Порта нет в списке — служба агента сервера не запущена
Test-NetConnection server -Port 1540 возвращает TcpTestSucceeded: True
False — порт закрыт брандмауэром или сетевым оборудованием
База открывается, в консоли кластера видны сеансы
Ошибка соединения — проверять порты 1560-1591 и DNS-имя сервера
С клиентской машины удобно использовать командлет PowerShell Test-NetConnection с указанием сервера и порта — он показывает доступность конкретного TCP-порта. Проверяйте по очереди 1540, 1541 и несколько портов из диапазона 1560–1591: бывает, что 1540 открыт, клиент получает список баз, а при запуске соединение обрывается, потому что закрыты порты рабочих процессов.
Ещё один источник проблем — разрешение имён. Клиент обращается к серверу по имени, и если DNS возвращает неверный адрес или имя не резолвится, симптомы похожи на закрытый порт. Проверяйте подключение и по имени, и по IP-адресу, чтобы отделить сетевую проблему от проблемы DNS.
Особые сценарии: веб-доступ, лицензии, несколько кластеров
Веб-сервер и тонкий клиент через HTTP
Если база опубликована на веб-сервере (IIS или Apache), клиенты подключаются по портам 80 (HTTP) или 443 (HTTPS) к веб-серверу, а уже веб-сервер обращается к кластеру 1С по стандартным портам 1540–1591. В этом случае клиентским машинам порты кластера открывать не нужно вообще — достаточно доступа к веб-серверу.
Сервер лицензий
Если программные лицензии раздаёт отдельный сервер 1С или служба лицензирования, клиентам нужен доступ к нему по тем же портам кластера (1540–1591). При использовании аппаратных ключей HASP сетевой драйвер ключа работает по портам UDP/TCP 475 — их тоже нужно разрешить между клиентами и сервером ключа.
Несколько кластеров на одном сервере
При запуске второго кластера на той же машине ему назначаются другие порты: обычно 2540, 2541, 2560–2591 и так далее с шагом 1000. Каждый дополнительный кластер требует своего набора правил в брандмауэре. Точные номера смотрите в свойствах кластера в консоли администрирования.
Безопасность: что открывать не стоит
Порты кластера 1С не имеют встроенного шифрования трафика по умолчанию, поэтому их нельзя публиковать в интернет напрямую. Для удалённого доступа используйте VPN, публикацию через веб-сервер с HTTPS или терминальный доступ. Прямой проброс портов 1540–1591 на внешний интерфейс — серьёзная уязвимость.
Минимальный безопасный контур выглядит так: клиенты локальной сети имеют доступ к портам кластера, сервер 1С имеет доступ к порту СУБД, наружу не открыто ничего. Всё, что сверх этого, должно быть осознанным решением с ограничением по IP-адресам и, желательно, зафиксированным в документации по инфраструктуре.
Что важно запомнить
Откройте на сервере 1С входящие TCP 1540, 1541, 1545 и 1560–1591. Порты СУБД (1433 или 5432) доступны только с сервера 1С. Ничего из этого не публикуйте в интернет напрямую — для удалённой работы используйте VPN или веб-доступ по HTTPS.
Частые вопросы
Клиент видит список баз, но при запуске выдаёт ошибку соединения. Что не так?
Список баз клиент получает через порт 1540, а сам сеанс работает через порты рабочих процессов 1560–1591. Такая картина почти всегда означает, что диапазон 1560–1591 закрыт на брандмауэре сервера или на промежуточном сетевом устройстве. Проверьте доступность нескольких портов из диапазона командой Test-NetConnection.
Нужно ли открывать порты 1540–1591 на клиентских компьютерах?
Нет. Правила создаются только на входящие подключения сервера 1С. Клиентские машины инициируют исходящие соединения, которые большинство брандмауэров разрешают по умолчанию. Исключение — жёстко настроенные политики, где исходящий трафик тоже фильтруется: тогда на клиентах нужно разрешить исходящие подключения к серверу по этим портам.
Сервер 1С и SQL Server на одной машине — нужны ли правила для порта 1433?
Нет, если обе службы на одном сервере, соединение идёт локально и внешние правила не требуются. Более того, порт 1433 в этом случае лучше держать закрытым для внешних подключений — так меньше сетевая поверхность атаки на базу данных.
Как узнать, какие порты реально использует мой кластер?
Откройте консоль администрирования серверов 1С, посмотрите свойства кластера — там указаны порты агента, менеджера и диапазон рабочих процессов. Дополнительно на самом сервере выполните netstat -ano (Windows) или ss -tlnp (Linux) и сопоставьте порты с процессами ragent, rmngr и rphost.
Можно ли изменить стандартные порты сервера 1С?
Да, при создании кластера или в его свойствах можно задать другие номера портов. Это бывает нужно при конфликте с другим ПО или при запуске нескольких кластеров. После изменения не забудьте обновить правила брандмауэра и строки подключения у клиентов, если сервер указывался с явным портом.
Порты открыты, но подключение через VPN всё равно не работает. Куда смотреть?
Проверьте, что VPN-шлюз пропускает трафик по портам 1540–1591 между подсетями, и что клиент корректно разрешает имя сервера через VPN — часто DNS внутри туннеля не настроен, и помогает запись в файле hosts либо подключение по IP-адресу. Также убедитесь, что правило брандмауэра сервера применяется к подсети VPN-клиентов, а не только к локальной сети.