Сервер 1С использует несколько TCP-портов для обмена данными между компонентами: клиент-серверное приложение связывается с кластером, кластер управляет рабочими процессами, а рабочие процессы обращаются к СУБД. Если хотя бы один порт закрыт межсетевым экраном, система перестаёт работать — пользователи не могут подключиться к базе или получают ошибки при выполнении операций.
В этом руководстве разберём, какие порты использует сервер 1С 8.3 по умолчанию, как открыть их в межсетевом экране Windows Server и Linux, а также как диагностировать проблемы с доступом к кластеру серверов 1С.
Стандартные порты кластера 1С 8.3
Платформа 1С:Предприятие 8.3 использует следующие порты для работы кластера серверов:
| Порт | Протокол | Назначение | Обязательный |
|---|---|---|---|
| 1540 | TCP | Менеджер кластера — основной порт для подключения клиентов и управления кластером | Да |
| 1541 | TCP | Агент сервера — управление рабочими процессами и распределение нагрузки | Да |
| 1560-1591 | TCP | Диапазон рабочих процессов (rphost) — каждый процесс занимает один порт из диапазона | Да |
| 1538 | TCP | Сервер лицензирования (опционально, если используется аппаратная защита) | Нет |
| 1545 | TCP | Кластерный менеджер (используется для управления несколькими серверами в кластере) | Нет |
Порт сервера 1С по умолчанию — 1540 (TCP). Это главный порт кластера, через который клиентские приложения подключаются к базам данных. Без доступа к этому порту пользователи не смогут запустить 1С.
Порты для работы 1С сервера также включают 1541 (агент сервера) и диапазон 1560-1591 для рабочих процессов. Количество процессов зависит от настроек кластера — по умолчанию создаётся от 2 до 8 процессов, каждый из которых занимает свой порт. Если у вас 4 рабочих процесса, будут заняты порты 1560, 1561, 1562 и 1563.
Как узнать, какие порты использует ваш кластер
Прежде чем открывать порты в межсетевом экране, проверьте, какие порты реально заняты процессами 1С на вашем сервере.
В Windows Server
Откройте командную строку от имени администратора и выполните команду:
netstat -ano | findstr "ragent\|rphost\|rmngr"
Вы увидите список активных соединений с номерами портов и идентификаторами процессов (PID). Чтобы узнать, какой процесс использует конкретный порт, выполните:
tasklist | findstr "PID"
Где PID — номер процесса из вывода netstat.
В Linux
Если сервер 1С развёрнут на Linux (Ubuntu, CentOS, Red Hat Enterprise Linux), используйте команду:
sudo netstat -tulnp | grep -E "ragent|rphost|rmngr"
Или современный аналог с утилитой ss:
sudo ss -tulnp | grep -E "ragent|rphost|rmngr"
В выводе вы увидите IP-адреса, порты и имена процессов.
Открываем порты в межсетевом экране Windows Server
Если сервер 1С работает на Windows Server, необходимо создать правила брандмауэра для входящих подключений.
Пошаговая инструкция для Windows Firewall
- Откройте Панель управления → Брандмауэр Защитника Windows → Дополнительные параметры.
- В левой панели выберите Правила для входящих подключений, затем в правой панели кликните Создать правило.
- Выберите тип правила Для порта, нажмите Далее.
-
Укажите Протокол TCP и Определённые локальные порты: введите
1540,1541(порт кластера серверов 1С и агент сервера). - Выберите действие Разрешить подключение, нажмите Далее.
- Укажите профили сети (обычно выбирают все три: Доменный, Частный, Публичный) и нажмите Далее.
- Задайте имя правила, например, 1C Server Cluster Ports, и нажмите Готово.
-
Повторите шаги 2-7, чтобы создать правило для диапазона рабочих процессов: укажите порты
1560-1591. Назовите правило 1C Working Processes.
Альтернативный способ — использовать PowerShell. Выполните команды от имени администратора:
New-NetFirewallRule -DisplayName "1C Server Cluster" -Direction Inbound -Protocol TCP -LocalPort 1540,1541 -Action Allow
New-NetFirewallRule -DisplayName "1C Working Processes" -Direction Inbound -Protocol TCP -LocalPort 1560-1591 -Action Allow
Эти команды создают два правила брандмауэра и сразу применяют их.
Открываем порты в межсетевом экране Linux
Большинство дистрибутивов Linux используют firewalld (CentOS, RHEL, Fedora) или ufw (Ubuntu, Debian). Разберём оба варианта.
Для firewalld (CentOS, RHEL, Rocky Linux)
Откройте терминал и выполните команды от суперпользователя:
sudo firewall-cmd --permanent --add-port=1540/tcp
sudo firewall-cmd --permanent --add-port=1541/tcp
sudo firewall-cmd --permanent --add-port=1560-1591/tcp
sudo firewall-cmd --reload
Команда --permanent сохраняет правила после перезагрузки сервера. Команда --reload применяет изменения немедленно.
Для ufw (Ubuntu, Debian)
Выполните следующие команды:
sudo ufw allow 1540/tcp comment '1C Cluster Manager'
sudo ufw allow 1541/tcp comment '1C Server Agent'
sudo ufw allow 1560:1591/tcp comment '1C Working Processes'
sudo ufw reload
Проверьте статус брандмауэра и список правил:
sudo ufw status numbered
Вы увидите добавленные правила с комментариями.
Настройка портов в конфигурации кластера 1С
По умолчанию сервер 1С использует стандартные порты, но вы можете изменить их, если они заняты другими приложениями или по требованиям политики безопасности компании.
Изменение порта менеджера кластера
Чтобы изменить порт менеджера кластера (по умолчанию 1540), отредактируйте файл конфигурации:
- Windows:
C:\Program Files\1cv8\[версия]\conf\nethasp.ini - Linux:
/opt/1cv8/[версия]/conf/nethasp.ini
Добавьте или измените строку:
tcp-port = 1540
Укажите нужный номер порта, сохраните файл и перезапустите службу сервера 1С.
Изменение диапазона портов рабочих процессов
Диапазон портов для рабочих процессов настраивается через консоль администрирования кластера (ragent) или утилиту ring. Откройте консоль кластера и выполните команду:
cluster.WorkingProcessConnectionPortRange = "1600:1620"
Здесь 1600:1620 — новый диапазон портов (21 порт для рабочих процессов). После изменения перезапустите кластер.
Проверка доступности портов
После открытия портов в межсетевом экране проверьте, что порты доступны для подключения с клиентских машин.
Проверка с клиентского компьютера (Windows)
Используйте утилиту telnet или Test-NetConnection (PowerShell):
Test-NetConnection -ComputerName 192.168.1.100 -Port 1540
Где 192.168.1.100 — IP-адрес сервера 1С. Если соединение успешно, вы увидите TcpTestSucceeded : True.
Проверка с Linux-машины
Используйте утилиту telnet или nc (netcat):
nc -zv 192.168.1.100 1540
Успешный результат выглядит так:
Connection to 192.168.1.100 1540 port [tcp/*] succeeded!
Проверка с помощью nmap
Утилита nmap позволяет проверить сразу несколько портов:
nmap -p 1540,1541,1560-1591 192.168.1.100
В выводе вы увидите статус каждого порта: open (открыт) или filtered (заблокирован).
Типовые конфигурации серверов для 1С
Выбор серверного оборудования зависит от количества пользователей, объёма базы данных и интенсивности операций. Вот рекомендации для разных сценариев:
| Количество пользователей | Процессор | Оперативная память | Диски | Примечание |
|---|---|---|---|---|
| До 10 | Intel Xeon E-2300, 4 ядра | 16 ГБ DDR4 | 2× SSD 240 ГБ (RAID 1) | Подходит для малого бизнеса, один филиал |
| 10-30 | Intel Xeon Silver 4300, 8 ядер | 32 ГБ DDR4 | 2× SSD 480 ГБ (RAID 1) + HDD для резервных копий | Средний офис, несколько баз данных |
| 30-100 | Intel Xeon Gold 5300, 16 ядер | 64 ГБ DDR4 | 4× SSD 960 ГБ (RAID 10) | Крупная компания, высокие требования к производительности |
| 100-300 | 2× Intel Xeon Gold 6300, 32 ядра (всего) | 128 ГБ DDR4 | 6× NVMe SSD 1.92 ТБ (RAID 10) | Распределённый кластер, кэширование на SSD |
| Более 300 | 2× Intel Xeon Platinum 8300, 56 ядер (всего) | 256 ГБ DDR4 | Выделенный SAN/NAS + NVMe-кэш | Кластер из нескольких серверов, отдельный SQL-сервер |
Для развёртывания кластера 1С рекомендуем серверы с процессорами Intel Xeon или AMD EPYC — они обеспечивают стабильную работу под высокой нагрузкой. Обратите внимание на объём оперативной памяти — 1С активно использует кэширование в RAM, поэтому чем больше памяти, тем быстрее работают отчёты и документы.
Для баз данных выбирайте быстрые диски — SSD-накопители или NVMe. Использование HDD для рабочих баз данных замедлит систему в несколько раз.
Частые ошибки при настройке портов
Ошибка «Не удаётся установить соединение с менеджером кластера»
Эта ошибка возникает, когда клиентское приложение не может подключиться к порту 1540. Причины:
- Порт закрыт межсетевым экраном на сервере или на промежуточном сетевом оборудовании (маршрутизатор, коммутатор с VLAN).
- Служба сервера 1С не запущена — проверьте статус службы
ragent. - Неверный IP-адрес сервера в клиентском подключении — убедитесь, что указан правильный адрес.
Решение: проверьте доступность порта 1540 с помощью Test-NetConnection или telnet. Если порт недоступен, откройте его в брандмауэре по инструкциям выше.
Ошибка «Нет доступных рабочих процессов»
Клиент подключается к кластеру (порт 1540 открыт), но при попытке открыть базу данных получает ошибку о недоступности рабочих процессов. Причина — закрыт диапазон портов 1560-1591.
Решение: откройте диапазон портов для рабочих процессов в межсетевом экране. Если используете нестандартный диапазон, убедитесь, что открыты именно те порты, которые заданы в конфигурации кластера.
Ошибка «Превышен таймаут подключения»
Подключение устанавливается, но через несколько секунд разрывается. Причины:
- Высокая загрузка сервера — нехватка ресурсов процессора или памяти.
- Медленные диски — база данных хранится на HDD, и сервер не успевает обработать запросы.
- Сетевые задержки — большой ping между клиентом и сервером (более 50 мс).
Решение: проверьте загрузку сервера через Task Manager (Windows) или top / htop (Linux). Если загрузка процессора постоянно выше 80%, увеличьте количество ядер или замените процессор на более мощный. Если загружена память (свыше 90%), добавьте модули RAM.
Ошибка «Отказано в доступе к базе данных»
Эта ошибка не связана с портами кластера 1С — проблема в доступе к СУБД (Microsoft SQL Server, PostgreSQL). Проверьте:
- Открыт ли порт СУБД (SQL Server — 1433, PostgreSQL — 5432).
- Правильно ли указаны логин и пароль для подключения к базе.
- Есть ли у пользователя 1С права на чтение/запись в базу данных.
Решение: откройте порт СУБД в брандмауэре, проверьте учётные данные и права доступа в консоли управления SQL Server или PostgreSQL.
Диагностика проблем с доступом к кластеру
Если после открытия портов 1С по-прежнему не работает, используйте следующий алгоритм диагностики.
Шаг 1. Проверьте статус служб 1С
На сервере убедитесь, что запущены все необходимые службы:
- Windows: откройте
services.msc, найдите службы с именами1C:Enterprise Server Agentи1C:Enterprise Cluster Manager. Статус должен быть «Выполняется». - Linux: выполните
systemctl status srv1cv83(имя службы может отличаться в зависимости от версии).
Если служба остановлена, запустите её:
- Windows: кликните правой кнопкой → Запустить.
- Linux:
sudo systemctl start srv1cv83.
Шаг 2. Проверьте логи сервера 1С
Логи сервера 1С содержат информацию о подключениях, ошибках и падениях рабочих процессов. Путь к логам:
- Windows:
C:\ProgramData\1C\1cv8\[версия]\[имя_кластера]\logs\ - Linux:
/var/log/1C/[версия]/[имя_кластера]/
Откройте последний файл лога (обычно с расширением .log) и найдите строки с ERROR или FATAL. Типичные ошибки:
Connection refused— порт закрыт или служба не запущена.Access denied— проблемы с правами доступа к базе данных или файлам кластера.Out of memory— нехватка оперативной памяти.
Шаг 3. Проверьте подключение к СУБД
Если кластер 1С работает, но базы данных недоступны, проблема может быть в СУБД. Проверьте подключение к SQL Server или PostgreSQL с сервера 1С:
sqlcmd -S localhost -U sa -P "password"
Для PostgreSQL:
psql -h localhost -U postgres
Если подключение не устанавливается, проверьте статус службы СУБД и доступность порта.
Шаг 4. Проверьте сетевую связность
Убедитесь, что между клиентом и сервером нет проблем с сетью:
ping 192.168.1.100
Если ping не проходит, проблема в сетевой инфраструктуре — проверьте настройки маршрутизатора, коммутатора или VLAN.
Шаг 5. Проверьте настройки антивируса
Некоторые антивирусы блокируют порты 1С или помещают процессы ragent.exe и rphost.exe в карантин. Добавьте эти процессы и порты в исключения антивируса.
Безопасность: как ограничить доступ к портам 1С
Открытие портов 1540-1591 в Интернет — угроза безопасности. Злоумышленники могут попытаться подключиться к кластеру и получить доступ к базам данных. Рекомендации:
- Используйте VPN. Клиенты подключаются к серверу 1С через защищённый VPN-туннель, порты недоступны из внешней сети.
- Ограничьте доступ по IP. В правилах брандмауэра укажите разрешённые IP-адреса клиентов. Например, только подсеть офиса
192.168.1.0/24. - Используйте защиту на уровне 1С. Настройте парольную политику, двухфакторную аутентификацию и регулярно обновляйте платформу 1С до последней версии.
- Настройте мониторинг. Отслеживайте подозрительные подключения к портам 1С с помощью Zabbix, Prometheus или встроенных средств Windows Server.
FAQ: частые вопросы о портах 1С
Какой порт использует сервер 1С по умолчанию?
Сервер 1С 8.3 использует порт 1540 (TCP) для менеджера кластера — это основной порт для подключения клиентских приложений. Также используются порт 1541 для агента сервера и диапазон 1560-1591 для рабочих процессов.
Нужно ли открывать все порты от 1560 до 1591?
Необязательно. Количество портов зависит от числа рабочих процессов в кластере. Если у вас 4 процесса, достаточно открыть порты 1560-1563. Однако рекомендуется открыть весь диапазон 1560-1591 на случай увеличения количества процессов в будущем.
Можно ли изменить стандартные порты 1С на другие?
Да, порты настраиваются через файл конфигурации nethasp.ini (для порта менеджера кластера) и параметры кластера (для диапазона рабочих процессов). Изменение портов полезно, если стандартные порты заняты другими приложениями или по требованиям политики безопасности.
Что делать, если порт 1540 уже занят другим приложением?
Узнайте, какое приложение использует порт 1540, с помощью команды netstat -ano | findstr 1540 (Windows) или sudo lsof -i :1540 (Linux). Если порт занят, можете либо остановить другое приложение, либо изменить порт кластера 1С через файл nethasp.ini. После изменения порта обновите настройки подключения на всех клиентских машинах.
Как проверить, открыт ли порт 1540 в брандмауэре?
С клиентского компьютера выполните команду Test-NetConnection -ComputerName [IP_сервера] -Port 1540 в PowerShell (Windows) или nc -zv [IP_сервера] 1540 в Linux. Если соединение успешно, порт открыт. Если получаете ошибку «Connection refused» или «Connection timed out», порт закрыт брандмауэром.