Какие порты нужны клиенту и серверу 1С для работы по сети
Содержание
Клиент 1С:Предприятия 8.3 в клиент-серверном варианте работает с сервером по TCP-портам 1540 (агент сервера), 1541 (менеджер кластера) и диапазону 1560–1591 (рабочие процессы). Эти три значения нужно открыть на брандмауэре сервера, чтобы пользователи подключались к базам. Если база файловая, сервер 1С не участвует вовсе: клиент читает файл 1Cv8.1CD через общую папку Windows.
Дальше всё зависит от инфраструктуры. Консоль администрирования на Linux через rac ходит на порт 1545, сервер хранилища конфигураций слушает 1542, сетевой ключ HASP — 475, а сервер 1С с базой данных общается по порту СУБД: 1433 у MS SQL, 5432 у PostgreSQL.
Какие порты занимает сервер 1С по умолчанию
Сервер 1С состоит из нескольких процессов, и у каждого своя роль в сетевом обмене:
- 🟢
ragent— агент сервера. Принимает обращения консоли администрирования и управляет кластерами на этом компьютере. - 🔵
rmngr— менеджер кластера. Хранит реестр баз, распределяет сеансы по рабочим процессам. - 🟠
rphost— рабочие процессы. Именно с ними клиент обменивается данными во время работы, они же ходят в СУБД.
Сводная таблица портов, которые встречаются на практике:
| Порт | Протокол | Кто слушает | Зачем нужен |
|---|---|---|---|
| 1540 | TCP | ragent | агент сервера, консоль кластера |
| 1541 | TCP | rmngr | менеджер кластера, порт кластера в строке подключения |
| 1560–1591 | TCP | rphost, служебные сервисы кластера | обмен данными клиента с рабочими процессами |
| 1545 | TCP | ras | сервер администрирования для rac и сторонних консолей |
| 1542 | TCP | crserver | сервер хранилища конфигураций |
| 1550 | TCP | dbgs | сервер отладки (отладка по протоколу HTTP) |
| 475 | TCP/UDP | HASP License Manager | сетевые аппаратные ключи защиты |
| 80 / 443 | TCP | IIS или Apache | веб-клиент, HTTP-сервисы, тонкий клиент через веб-сервер |
Клиенту из локальной сети почти всегда достаточно первых трёх строк. Остальные открывают по необходимости и, как правило, только для администраторов.
Диапазон 1560–1591 — это 32 порта. Каждый рабочий процесс занимает порт из диапазона, часть портов уходит под служебные сервисы кластера. На сервере с большим числом рабочих процессов диапазон расширяют, например до 1560:1691.
Где задаются порты: служба агента, srvinfo и консоль кластера
Порты сервера 1С не прописываются в одном конфигурационном файле. Они складываются из трёх мест, и путаница между ними — главная причина ошибок при смене портов.
Параметры запуска службы
Основная настройка — строка запуска ragent. В Windows она лежит в параметре ImagePath раздела реестра службы агента: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\, подраздел с именем вида 1C:Enterprise 8.3 Server Agent (x86-64). Типичное содержимое:
"C:\Program Files\1cv8\8.3.24.1548\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo" -debug
Что означают ключи:
-port— порт агента сервера (1540).-regport— порт главного менеджера кластера (1541).-range— диапазон портов рабочих процессов, через двоеточие.-d— каталог данных кластера, тот самыйsrvinfo.-debug— разрешает отладку на сервере; к портам отношения не имеет.
На Linux те же параметры передаются агенту в unit-файле systemd службы сервера 1С (в старых установках — в файле /etc/sysconfig/srv1cv83 переменными SRV1CV8_PORT, SRV1CV8_REGPORT, SRV1CV8_RANGE).
Каталог srvinfo
В srvinfo хранится реестр кластера, а не сами настройки портов. Номер порта менеджера кластера виден в имени каталога: srvinfo\reg_1541. Внутри лежит 1CV8Clst.lst — список баз, рабочих серверов и администраторов кластера.
Если запустить агент с -regport 1641, он будет работать с каталогом reg_1641. Поэтому после смены порта кластер может «потерять» базы: старый реестр остался в reg_1541.
Не правьте файлы .lst вручную и не удаляйте каталог reg_1541. Это реестр кластера: без него кластер не знает о своих базах. Перед любыми изменениями скопируйте весь srvinfo в резервную папку.
Свойства в консоли кластера
В консоли администрирования серверов 1С порт видно в двух местах:
- 🔵 в свойствах кластера — порт менеджера кластера;
- 🟠 в свойствах рабочего сервера — порт агента и диапазон IP-портов рабочих процессов. Здесь же задают параметры отказоустойчивости и требования назначения функциональности.
Диапазон для рабочих процессов меняют именно в свойствах рабочего сервера: удаляют старую строку диапазона и добавляют новую. Изменение подхватывается новыми рабочими процессами, текущие продолжают работать на прежних портах до перезапуска.
Файловый вариант и веб-клиент: порты без сервера 1С
В файловом варианте нет ни агента, ни кластера. Тонкий или толстый клиент открывает файл базы по сетевому пути вида \\fileserver\bases\buh. Сетевой трафик идёт по протоколу SMB:
- 📁 TCP 445 — доступ к общей папке на современных версиях Windows;
- 🔑 TCP/UDP 475 — если база защищена сетевым ключом HASP, который стоит на другом компьютере.
Порты 1540–1591 для файловой базы открывать бессмысленно. Если пользователь видит ошибку подключения к файловой базе, проверяют права на папку и доступность общего ресурса, а не брандмауэр сервера 1С.
Отдельный случай — публикация базы на веб-сервере. Пользователи работают через браузер или тонкий клиент по адресу https://server/buh, и им нужен только 80 или 443. А вот сам веб-сервер обращается к кластеру 1С по тем же 1540, 1541 и диапазону 1560–1591. Если IIS и сервер 1С стоят на разных машинах, порты кластера открывают для адреса веб-сервера.
Публикация через веб-сервер — удобный способ дать доступ удалённым сотрудникам: наружу смотрит только 443 с сертификатом, а порты кластера остаются закрытыми для интернета.
Порты между сервером 1С и СУБД
Клиент 1С напрямую с базой данных не работает
. В СУБД ходят рабочие процессы rphost, поэтому порт СУБД должен быть открыт только между сервером 1С и сервером базы данных.
| СУБД | Порт по умолчанию | Как указать нестандартный порт в поле «Сервер баз данных» |
|---|---|---|
| Microsoft SQL Server | TCP 1433 | sqlsrv,14330 — через запятую |
| PostgreSQL | TCP 5432 | pgsrv port=5433 — через пробел и port= |
| Oracle Database | TCP 1521 | задаётся в настройках клиента Oracle |
| IBM Db2 | TCP 50000 | задаётся в каталоге узлов клиента Db2 |
У именованного экземпляра MS SQL порт по умолчанию динамический. Сервер 1С узнаёт его через службу SQL Server Browser на UDP 1434. Надёжнее закрепить за экземпляром статический порт в SQL Server Configuration Manager и указать его в свойствах базы явно.
Когда сервер 1С и СУБД стоят на одной машине, внешний порт СУБД можно не открывать: обмен идёт локально. Это частая и рабочая схема для небольших организаций.
Как открыть порты 1С в брандмауэре Windows и Linux
На сервере 1С под Windows правило для входящих подключений создают командой от администратора:
netsh advfirewall firewall add rule name="1C Server 8.3" dir=in action=allow protocol=TCP localport=1540-1541,1560-1591
Если нужна консоль через RAS или хранилище конфигураций, добавляют отдельные правила для 1545 и 1542. Ограничить доступ подсетью офиса можно параметром remoteip=192.168.10.0/24 в той же команде.
На Linux с firewalld:
firewall-cmd --permanent --add-port=1540-1541/tcp
firewall-cmd --permanent --add-port=1560-1591/tcp
firewall-cmd --reload
С ufw на Ubuntu аналогично:
ufw allow from 192.168.10.0/24 to any port 1540:1541 proto tcp
ufw allow from 192.168.10.0/24 to any port 1560:1591 proto tcp
Клиентские компьютеры обычно ничего открывать не должны: исходящие соединения брандмауэр Windows по умолчанию пропускает. Исключение — корпоративные политики, где исходящий трафик тоже фильтруют.
Проверка подключения: закрытый порт или неверное имя сервера
Самый частый сценарий: на сервере всё работает, а с клиента база не открывается. Порядок проверки простой.
Убедитесь, что агент и менеджер слушают порты. На сервере Windows:
netstat -ano | findstr ":1540 :1541"На Linux:
ss -tlnp | grep -E ':15(4|6|7|8|9)[0-9]'.Проверьте доступность порта с клиента в PowerShell:
Test-NetConnection srv1c -Port 1541TcpTestSucceeded : Trueзначит, что порт открыт и сетевой путь есть.Проверьте любой порт из диапазона рабочих процессов, например 1560. Если 1541 доступен, а диапазон нет, клиент пройдёт первый этап и упадёт на подключении к рабочему процессу.
Проверьте разрешение имени. Сервер 1С сообщает клиенту адрес рабочего процесса по имени компьютера, под которым рабочий сервер зарегистрирован в кластере. Если клиент не знает этого имени, соединение не устанавливается даже при открытых портах.
Последний пункт — главный приём, который часто упускают. Если сервер в кластере записан как SRV1C, а клиенты в другой подсети или VPN и DNS их не обслуживает, добавьте строку в C:\Windows\System32\drivers\etc\hosts на клиенте:
192.168.10.15 SRV1C
Test-NetConnection на 1541 и состояние службы.Смена стандартных портов и защита сервера 1С
Смена портов почти не добавляет безопасности: сканер найдёт открытый порт за минуты. Меняют их по практическим причинам — чаще всего чтобы запустить на одном компьютере два кластера, например для разных версий платформы. Принятая схема — сдвиг на сотню:
| Кластер | Агент -port | Кластер -regport | Диапазон -range |
|---|---|---|---|
| Первый | 1540 | 1541 | 1560:1591 |
| Второй | 1640 | 1641 | 1660:1691 |
Для второго кластера нужна отдельная служба агента со своим каталогом данных (-d), иначе службы будут конфликтовать за srvinfo.
Остановка службы агента обрывает сеансы всех пользователей кластера. Меняйте порты вне рабочего времени, предупредив пользователей заранее. Порядок:
- Скопируйте каталог
srvinfoв резервную папку. - Остановите службу агента сервера 1С.
- Исправьте ключи
-port,-regport,-rangeвImagePath(Windows) или в unit-файле службы (Linux). - Запустите службу и откройте консоль кластера, указав сервер с новым портом агента.
- Проверьте, что кластер видит свои базы. Сами данные лежат в СУБД и при смене портов не затрагиваются.
- В списке баз на клиентах укажите кластер с новым портом:
srv1c:1641. - Обновите правила брандмауэра.
Что реально защищает сервер 1С:
- 🔒 не публиковать порты 1540–1591 в интернет; удалённым сотрудникам — VPN, терминальный сервер или веб-публикация по HTTPS;
- 🛡️ ограничить правила брандмауэра подсетями офиса через
remoteipилиfrom; - 👤 задать администратора кластера и администратора агента — без них любой, кто достучался до 1540, управляет кластером через консоль;
- 🔑 открывать 1545 (RAS) только для компьютеров администраторов.
Частые вопросы
Можно ли подключить тонкий клиент к серверу 1С через интернет напрямую?
Какой порт указывать в списке баз, если кластер нестандартный?
-regport, через двоеточие после имени сервера: srv1c:1641. Для кластера на стандартных портах порт не пишут.Нужно ли открывать порты 1С на компьютерах пользователей?
Почему после смены порта кластер оказался пустым?
srvinfo\reg_<порт>. При новом -regport агент работает с другим каталогом. Верните старое значение или зарегистрируйте базы в новом кластере, указав существующие базы данных на сервере СУБД.