Администрирование · 11 мин
Как открыть порты 1С: практическое руководство для администратора
Пошаговая инструкция, как открыть порты 1С: 1540–1541, 1560–1591 для сервера 1С, 1433 для SQL. Настройка брандмауэра Windows, проверка доступности и типичные ошибки.
Клиентские приложения 1С подключаются к серверу 1С:Предприятия и к СУБД по сети через определённые TCP-порты. Если эти порты закрыты брандмауэром Windows, сетевым экраном или антивирусом, пользователи получают ошибки соединения: «Ошибка соединения с сервером 1С:Предприятия», «Сервер баз данных не обнаружен» и подобные. В большинстве случаев проблема решается созданием разрешающих правил в брандмауэре на сервере.
Стандартный набор портов для файловой работы не нужен — открытие портов актуально для клиент-серверной архитектуры. Агент сервера 1С использует порт 1540, рабочие процессы — диапазон 1560–1591, менеджер кластера — 1541. Если база развёрнута на Microsoft SQL Server, дополнительно потребуется порт 1433 (по умолчанию) и 1434 UDP для службы SQL Browser при использовании именованных экземпляров.
Ниже разобраны конкретные действия: какие порты и зачем открывать, как создать правила в брандмауэре Windows, как проверить доступность портов с клиентской машины и какие ошибки встречаются чаще всего.
Какие порты использует 1С и зачем они нужны
Прежде чем открывать порты, важно понимать, какой процесс какой порт слушает. Это поможет не открывать лишнего и точно локализовать проблему при диагностике.
Агент сервера 1С:Предприятия (процесс ragent) по умолчанию слушает порт 1540. Через него клиенты и консоль кластера получают информацию о кластере. Менеджер кластера (rmngr) использует порт 1541. Рабочие процессы (rphost), которые непосредственно обслуживают сеансы пользователей, занимают диапазон 1560–1591. При нестандартной установке эти значения могли быть изменены — проверить фактические порты можно в консоли администрирования сервера 1С.
Со стороны СУБД: Microsoft SQL Server по умолчанию принимает подключения на TCP 1433; для именованных экземпляров дополнительно нужен UDP 1434 (SQL Browser). PostgreSQL, популярный в связке с 1С на Linux и в отечественных сборках, по умолчанию использует порт 5432. Если веб-клиент или веб-сервисы 1С опубликованы через IIS или Apache, потребуются порты 80 (HTTP) и/или 443 (HTTPS).
Подготовка: что проверить перед настройкой
Сначала убедитесь, что службы запущены и порты действительно прослушиваются. На сервере 1С откройте «Службы» (services.msc) и проверьте, что служба «Агент сервера 1С:Предприятия» находится в состоянии «Выполняется». Если служба остановлена, открытие портов ничего не даст.
Проверить прослушивание портов можно командой в командной строке от имени администратора:
netstat -ano | findstr "1540 1541 1560"Если в выводе видны строки со состоянием LISTENING для нужных портов — служба работает, и остаётся только пробросить трафик через брандмауэр. Если строк нет, проблема в запуске службы, а не в сетевых правилах.
Также уточните, нет ли между клиентом и сервером промежуточных сетевых устройств: аппаратных файрволов, маршрутизаторов с фильтрацией, VPN-шлюзов. Правило на самом сервере не поможет, если трафик режется на корпоративном сетевом экране — в этом случае настройку нужно согласовать с сетевым администратором.
Открытие портов в брандмауэре Windows через графический интерфейс
Самый наглядный способ — оснастка «Брандмауэр Защитника Windows в режиме повышенной безопасности». Откройте её через Панель управления или командой wf.msc.
- 1Откройте wf.msc и выберите «Правила для входящих подключений»
- 2Нажмите «Создать правило» и выберите тип «Для порта»
- 3Укажите протокол TCP и порты: 1540-1541, 1560-1591
- 4Выберите действие «Разрешить подключение»
- 5Оставьте профили «Доменный» и «Частный» (публичный — только при необходимости)
- 6Задайте понятное имя правила, например «1С Server — агент и рабочие процессы»
- 7Повторите для порта 1433 на сервере СУБД, если SQL и 1С на разных машинах
- 8Проверьте подключение клиента к базе
Обратите внимание на профили сети. Если сервер входит в домен, правило с профилем «Доменный» будет работать только при подключении к доменной сети. В одноранговой сети без домена применяется профиль «Частный». Включать профиль «Публичный» без крайней необходимости не следует — это расширяет поверхность атаки.
При желании можно ограничить правило конкретными IP-адресами или подсетью клиентов: в свойствах правила на вкладке «Область» укажите удалённые IP-адреса. Это хорошая практика для серверов, доступных из разных сегментов сети.
Открытие портов через командную строку и PowerShell
Для автоматизации или настройки нескольких серверов удобнее использовать netsh или PowerShell. Команды выполняются от имени администратора.
New-NetFirewallRule -DisplayName "1C Server Agent" -Direction Inbound -Protocol TCP -LocalPort 1540-1541,1560-1591 -Action Allow -Profile Domain,PrivateАльтернативный вариант через netsh:
netsh advfirewall firewall add rule name="1C Server" dir=in action=allow protocol=TCP localport=1540-1541,1560-1591Для SQL Server на отдельной машине:
New-NetFirewallRule -DisplayName "MS SQL Server" -Direction Inbound -Protocol TCP -LocalPort 1433 -Action Allow -Profile Domain,PrivateЧтобы удалить ошибочное правило, используйте: Remove-NetFirewallRule -DisplayName "Имя правила". Перед массовым применением команд на боевом сервере протестируйте их на тестовой машине или в нерабочее время.
Открытие портов на сервере SQL и для веб-доступа
Если сервер 1С и SQL Server установлены на разных машинах, правила нужны на обеих. На сервере СУБД откройте TCP 1433. Если используется именованный экземпляр SQL Server, проверьте в SQL Server Configuration Manager, какой порт назначен экземпляру (по умолчанию он динамический), и либо зафиксируйте статический порт, либо дополнительно откройте UDP 1434 для службы SQL Browser и убедитесь, что она запущена.
Для PostgreSQL откройте TCP 5432 и дополнительно проверьте файл pg_hba.conf: в нём должны быть строки, разрешающие подключение с адреса сервера 1С. Один лишь сетевой порт без настройки pg_hba.conf не даст подключиться — это частая причина ошибки «сервер баз данных не обнаружен» при работе с PostgreSQL.
Для веб-клиента 1С, опубликованного через IIS, достаточно открыть 80 или 443 порт на веб-сервере. Порты кластера 1540–1591 при этом должны быть открыты только между веб-сервером и сервером 1С, а не для всех клиентов.
Проверка доступности портов с клиентской машины
После создания правил проверьте результат с рабочей станции пользователя. Самый удобный инструмент — PowerShell-команда Test-NetConnection:
Test-NetConnection -ComputerName srv1c -Port 1540В выводе смотрите на поле TcpTestSucceeded: значение True означает, что порт доступен. Замените srv1c на имя или IP вашего сервера и повторите проверку для портов 1541, 1560 и 1433 (если SQL на отдельной машине).
Как проверить результат
TcpTestSucceeded: True
False — порт закрыт или служба не слушает
Порт в состоянии LISTENING
Порта нет в списке — агент сервера не запущен
База открывается без ошибок соединения
Ошибка соединения — проверяйте правила и имя сервера
Имя разрешается в правильный IP
Имя не резолвится — проблема в DNS, а не в портах
Если порт недоступен, проверяйте по цепочке: запущена ли служба на сервере, создано ли правило и активен ли нужный профиль брандмауэра, нет ли стороннего антивируса с собственным сетевым экраном (он может перекрывать правила Windows), не фильтрует ли трафик промежуточное сетевое оборудование.
Типичные ошибки и их последствия
Отдельно стоит упомянуть ситуацию с динамическими портами SQL Server. После перезапуска службы именованный экземпляр может сменить порт, и ранее созданное правило перестанет работать. Решение — зафиксировать статический порт в SQL Server Configuration Manager (свойства протокола TCP/IP, раздел IPAll, поле TCP Port) и открыть именно его.
Удобно создавать одно правило с перечнем портов через запятую и диапазоном (например, 1540-1541,1560-1591), а не отдельное правило на каждый порт. Так список правил остаётся читаемым, а аудит настроек занимает меньше времени. В имени правила указывайте назначение и дату создания — это упростит сопровождение.
Часто задаваемые вопросы
Нужно ли открывать порты для файловой базы 1С в общей папке?
Нет, порты сервера 1С в этом случае не используются. Доступ к файловой базе идёт через общий сетевой ресурс (SMB), для которого брандмауэр Windows обычно уже имеет стандартные правила «Общий доступ к файлам и принтерам». Если клиенты не видят базу, проверяйте права на папку и включённое сетевое обнаружение, а не порты 1540–1591.
Как узнать, на каких портах реально работает мой кластер 1С?
Откройте консоль администрирования серверов 1С, раскройте свойства кластера и рабочих процессов — там указаны фактические порты. Альтернатива — команда netstat -ano с сопоставлением PID процессов ragent, rmngr и rphost через диспетчер задач.
Порты открыты, но клиент всё равно не подключается. Что проверять?
Проверьте, что клиент обращается по тому же имени сервера, которое указано в кластере; что имя разрешается в правильный IP (команда nslookup); что антивирус на сервере не блокирует трафик; и что версии платформы на клиенте и сервере совместимы. Также убедитесь, что правило брандмауэра активно для текущего сетевого профиля.
Безопасно ли открывать порты 1С для доступа через интернет?
Нет, публиковать порты кластера 1540–1591 и порт СУБД напрямую в интернет крайне не рекомендуется — это распространённый путь атак шифровальщиков. Для удалённой работы используйте VPN, терминальный доступ или публикацию веб-клиента по HTTPS с аутентификацией и ограничением доступа по IP.
Нужно ли открывать порты UDP для сервера 1С?
Кластер серверов 1С работает по TCP, правила для UDP ему не требуются. Исключение — UDP 1434 для службы SQL Browser при использовании именованных экземпляров SQL Server с динамическими портами.
Можно ли изменить стандартные порты сервера 1С?
Да, порты задаются при установке сервера 1С и могут быть изменены в свойствах кластера и рабочих процессов. После изменения нужно пересоздать правила брандмауэра под новые значения и обновить строки подключения у клиентов, если порт указывался явно.
Что важно запомнить
Для клиент-серверной 1С откройте на сервере TCP 1540, 1541 и 1560–1591, на сервере СУБД — 1433 (MS SQL) или 5432 (PostgreSQL). Создавайте правила только для нужных профилей сети, проверяйте результат командой Test-NetConnection и никогда не публикуйте эти порты в интернет — для удалённой работы используйте VPN или веб-клиент по HTTPS.