Брандмауэр не пускает клиентов к серверу 1С: какие порты и программы разрешить
Содержание
Чтобы добавить 1С в исключения брандмауэра Windows, на сервере 1С создайте входящее правило для TCP-портов 1540, 1541 и 1560-1591. Это агент сервера, менеджер кластера и рабочие процессы. Быстрее всего это делается одной командой PowerShell от администратора, вручную — через оснастку wf.msc → «Правила для входящих подключений» → «Создать правило». На клиентских компьютерах обычно ничего открывать не нужно: исходящие подключения Windows по умолчанию разрешает.
Инструкция подходит для платформы 8.3 в клиент-серверном и файловом режимах на Windows 10/11 и Windows Server 2016 и новее. Брандмауэр здесь — встроенный «Брандмауэр Защитника Windows». Если на сервере стоит сторонний антивирус со своим сетевым экраном, принцип тот же, но правила создаются в его консоли.
Как понять, что подключение к 1С режет именно брандмауэр
Прежде чем открывать порты, убедитесь, что дело в сетевом экране, а не в остановленной службе или неверном имени сервера. Иначе можно открыть пол-сервера и ничего не исправить.
Признаки блокировки брандмауэром:
- 🔒 база открывается на самом сервере, но не открывается с других компьютеров;
- ⏳ клиент долго «думает» (20-30 секунд), потом выдаёт ошибку соединения;
- 📝 в тексте ошибки есть строка вида
server_addr=tcp://SRV1C:1541и сетевой код10060; - 🧩 консоль администрирования с другого компьютера не видит кластер, а на сервере видит.
Код в ошибке многое говорит о причине:
| Код в тексте ошибки | Что значит | Где искать |
|---|---|---|
10060 (таймаут) | Пакеты уходят «в никуда», ответа нет | Брандмауэр на сервере или между сетями |
10061 (отказ в соединении) | Сервер ответил, но порт никто не слушает | Служба агента не запущена или кластер на другом порту |
11001 (узел не найден) | Имя сервера не разрешается | DNS или файл hosts |
Таймаут — типичный почерк брандмауэра: он молча отбрасывает пакеты. Отказ в соединении означает, что сеть пропускает, а проблема в службе 1С.
Какие порты и процессы 1С открывать в брандмауэре
Список зависит от режима работы. Для клиент-серверной базы схема такая: клиент сначала стучится к агенту сервера, затем к менеджеру кластера, а потом напрямую к рабочему процессу из заданного диапазона.
| Порт | Протокол | Процесс | Для чего |
|---|---|---|---|
1540 | TCP | ragent.exe | Агент сервера, к нему же подключается консоль |
1541 | TCP | rmngr.exe | Менеджер кластера |
1560-1591 | TCP | rphost.exe | Рабочие процессы (диапазон по умолчанию) |
1545 | TCP | ras.exe | Сервер администрирования, если используется rac или сторонняя консоль |
1433 | TCP | SQL Server | Связь сервера 1С с СУБД, если она на другой машине |
1434 | UDP | SQL Server Browser | Только для именованного экземпляра SQL Server |
5432 | TCP | PostgreSQL | Связь сервера 1С с СУБД PostgreSQL |
80, 443 | TCP | IIS или Apache | Веб-клиент, тонкий клиент через веб-сервер, HTTP-сервисы |
475 | TCP и UDP | менеджер лицензий HASP | Сетевой аппаратный ключ защиты |
445 | TCP | SMB | Файловая база в общей папке |
Диапазон 1560-1591 — значение по умолчанию. Его могли изменить. Фактический диапазон смотрите в консоли кластера: свойства рабочего сервера, поле с диапазонами IP-портов. Открывайте в брандмауэре именно его.
Если на одном компьютере работают два кластера, второй обычно запускают со смещёнными портами, например 2540, 2541, 2560-2591. Параметры видны в свойствах службы агента: строка запуска содержит ключи -port, -regport и -range. Порты второго кластера нужно открыть отдельно.
Исполняемые файлы сервера лежат в папке конкретной версии платформы:
C:\Program Files\1cv8\8.3.xx.xxxx\bin\ragent.exe
C:\Program Files\1cv8\8.3.xx.xxxx\bin\rmngr.exe
C:\Program Files\1cv8\8.3.xx.xxxx\bin\rphost.exe
Клиентские программы — в той же папке bin: 1cv8.exe (толстый клиент и конфигуратор) и 1cv8c.exe (тонкий клиент). Общий запускатель 1cestart.exe лежит в C:\Program Files\1cv8\common\.
Быстрый способ: разрешить приложение 1С через окно Windows
При первом запуске серверной службы или клиента Windows иногда показывает окно «Брандмауэр Защитника Windows заблокировал некоторые функции этого приложения». В нём можно отметить типы сетей и нажать «Разрешить доступ». Правило создастся само.
Если окно закрыли или его не было, добавьте программу вручную:
- Нажмите
Win + R, введитеfirewall.cplи нажмите Enter. - Слева выберите «Разрешение взаимодействия с приложением или компонентом в брандмауэре Защитника Windows».
- Нажмите «Изменить параметры», затем «Разрешить другое приложение».
- Через «Обзор» укажите нужный файл из папки
binтекущей версии платформы, напримерragent.exe. - Кнопкой «Типы сетей» отметьте нужный профиль (обычно «Частная» или домен) и нажмите «Добавить».
- Повторите для
rmngr.exeиrphost.exe.
У этого способа есть подвох, который часто пропускают. Правило привязано к полному пути файла, а путь содержит номер версии платформы. После обновления платформы правила для старой папки перестают работать, и в понедельник утром никто не может зайти в базу.
Поэтому для сервера надёжнее правило по портам: оно переживает любые обновления. Правило по программе уместно на клиентских машинах, где порты заранее неизвестны, или как дополнительное ограничение.
Ручная настройка правил для входящих подключений к серверу 1С
Основная работа идёт на сервере 1С: именно к нему подключаются клиенты. Правило создаётся в оснастке «Монитор брандмауэра Защитника Windows в режиме повышенной безопасности».
Через оснастку wf.msc
- Нажмите
Win + R, введитеwf.msc. - Слева выберите «Правила для входящих подключений», справа — «Создать правило».
- Тип правила — «Для порта», далее.
- Протокол — TCP, «Определённые локальные порты»:
1540-1541, 1560-1591. - Действие — «Разрешить подключение».
- Профили — отметьте те, в которых реально работает сервер. Для доменного сервера это «Доменный».
- Имя — понятное, например «1С: сервер 8.3». Нажмите «Готово».
Затем откройте свойства созданного правила, вкладку «Область». В блоке «Удалённый IP-адрес» можно ограничить доступ подсетью офиса, например 192.168.10.0/24. Это сильно снижает риск, если сервер видит не только локальную сеть.
Никогда не открывайте порты 1540-1591 в интернет напрямую через проброс на роутере. Для удалённых сотрудников используйте VPN, терминальный сервер или публикацию через веб-сервер по HTTPS.
Одной командой PowerShell
Запустите PowerShell от имени администратора:
New-NetFirewallRule -DisplayName "1C Server 8.3" -Direction Inbound -Protocol TCP `
-LocalPort 1540,1541,1560-1591 -RemoteAddress 192.168.10.0/24 `
-Profile Domain,Private -Action Allow
Уберите -RemoteAddress, если ограничивать по адресам не нужно. Для сервера администрирования добавьте отдельное правило на порт 1545 — его лучше открыть только для компьютеров администраторов.
Через netsh в bat-файле
Тот же результат через netsh, удобно для скрипта развёртывания:
netsh advfirewall firewall add rule name="1C Server 8.3" dir=in action=allow protocol=TCP localport=1540-1541,1560-1591
Правила для СУБД и веб-сервера
Если СУБД стоит на отдельной машине, на ней нужно входящее правило для её порта:
# SQL Server
New-NetFirewallRule -DisplayName "MS SQL for 1C" -Direction Inbound -Protocol TCP -LocalPort 1433 -Action Allow
# PostgreSQL
New-NetFirewallRule -DisplayName "PostgreSQL for 1C" -Direction Inbound -Protocol TCP -LocalPort 5432 -Action Allow
Здесь удалённый адрес разумно ограничить IP сервера 1С: напрямую к СУБД пользователям ходить незачем. Для PostgreSQL одного брандмауэра мало — доступ с адреса сервера 1С должен быть разрешён ещё и в pg_hba.conf.
Для веб-публикации на IIS или Apache откройте 80 и 443. Если работает только HTTPS, порт 80 можно не открывать.
Файловая база в общей папке
В файловом режиме сервера 1С нет, и порты 1540-1591 не нужны. Клиент открывает файл 1Cv8.1CD по сети. На компьютере с папкой базы включите встроенную группу правил «Общий доступ к файлам и принтерам» для нужного профиля:
Enable-NetFirewallRule -DisplayGroup "Общий доступ к файлам и принтерам"
На англоязычной Windows группа называется File and Printer Sharing.
Исходящие подключения и исключения на клиентских компьютерах
По умолчанию Windows разрешает все исходящие подключения. Поэтому на обычных рабочих местах трогать брандмауэр для 1С не нужно.
Исходящие правила понадобятся, если администраторы включили строгую политику «блокировать исходящие». Это встречается в банках и на защищённых сегментах. Тогда разрешите:
- 🖥️ с клиентов на сервер 1С: TCP
1540,1541и диапазон рабочих процессов; - 🗄️ с сервера 1С на сервер СУБД: TCP
1433или5432; - 🌐 с клиентов и сервера наружу: TCP
443для интернет-поддержки, получения обновлений, 1С-Отчётности и ЭДО; - 🔑 к компьютеру с сетевым ключом HASP: порт
475TCP и UDP.
Пример исходящего правила для клиента:
New-NetFirewallRule -DisplayName "1C client to server" -Direction Outbound -Protocol TCP `
-RemotePort 1540,1541,1560-1591 -RemoteAddress 192.168.10.5 -Action Allow
RemoteAddress здесь — адрес сервера 1С. Исходящее правило работает по удалённым портам, а не по локальным: локальный порт клиента каждый раз выбирается случайно.
На клиенте входящее правило может понадобиться в одном случае — если сам клиент принимает подключения. Например, на нём запущен сервер отладки для разработчика или локальный менеджер лицензий с ключом HASP, к которому обращаются другие компьютеры.
Проверка работы 1С через брандмауэр и отладка
После создания правил проверьте связь с клиентского компьютера, не запуская 1С. Так сразу видно, какой из портов закрыт.
Проверка портов с клиента
Test-NetConnection SRV1C -Port 1540
Test-NetConnection SRV1C -Port 1541
Test-NetConnection SRV1C -Port 1560
В выводе смотрите строку TcpTestSucceeded. Значение True — порт доступен. Порт 1560 откликнется, только если на нём уже работает рабочий процесс; если rphost занял другой порт из диапазона, проверьте его.
Какие порты реально слушает сервер
На сервере выполните:
netstat -ano | findstr "1540 1541 156"
Последний столбец — PID процесса. Сопоставьте его с процессом в диспетчере задач на вкладке «Подробности». Так видно, на каких портах сейчас сидят ragent, rmngr и rphost.
Сетевой профиль
Частая причина «правило есть, а не работает » — правило создано для доменного профиля, а сеть определилась как общедоступная. Проверьте:
Get-NetConnectionProfile
Поле NetworkCategory покажет DomainAuthenticated, Private или Public. Правило должно действовать в том профиле, который указан здесь.
Журнал брандмауэра
Если непонятно, что именно блокируется, включите журнал. В wf.msc откройте «Свойства» корневого узла, вкладку нужного профиля, блок «Ведение журнала» → «Настроить». Включите запись пропущенных пакетов.
Журнал пишется в файл:
%systemroot%\system32\LogFiles\Firewall\pfirewall.log
Повторите подключение из 1С и найдите в файле строки DROP с адресом клиента. Номер порта в этой строке и есть тот, который надо открыть.
Для быстрой проверки можно на минуту отключить брандмауэр на сервере и повторить вход. Заработало — значит, дело в правилах. Сразу включите брандмауэр обратно и настраивайте правила, а не оставляйте сервер без защиты.
Частые ошибки при настройке исключений брандмауэра для 1С
- ❌ Открыты только
1540и1541. Список баз и консоль работают, а вход в базу падает: забыт диапазон рабочих процессов. - ❌ Правило по программе для старой версии платформы. После обновления папка
binдругая, правило не срабатывает. - ❌ Порт открыт на клиенте, а не на сервере. Входящее правило нужно там, куда подключаются.
- ❌ Изменён диапазон портов рабочего сервера, а правило осталось на
1560-1591. - ❌ Правило создано не для того сетевого профиля.
- ❌ Доступ к СУБД открыт для всей сети. Достаточно адреса сервера 1С.
- ❌ Порты сервера 1С проброшены в интернет. Это прямой путь к подбору паролей и утечке базы.
- ❌ Сторонний антивирус со своим сетевым экраном. Встроенный брандмауэр настроен правильно, но пакеты режет антивирус. Проверьте его журнал или временно отключите сетевой экран антивируса.
Частые вопросы
Нужно ли открывать порты на каждом рабочем месте?
Можно ли сузить диапазон 1560-1591?
Как открыть доступ к 1С через интернет безопасно?
Почему после обновления платформы 1С снова перестала подключаться?
bin. Замените их правилом по портам, оно от версии не зависит.