Когда речь заходит о настройке сетевого взаимодействия в 1С:Предприятие, один из первых вопросов, который возникает у администраторов и разработчиков — «По какому порту работает 1С?». Ответ на него не так прост, как может показаться: система использует несколько портов в зависимости от режима работы, версии платформы и конфигурации серверов. Неправильная настройка портов может привести к ошибкам подключения, медленной работе или полной недоступности базы.
В этой статье мы детально разберём все порты, которые задействует 1С:Предприятие 8 в различных сценариях: от классического файлового варианта до распределённого кластера серверов. Вы узнаете, какие порты нужно открывать в брандмауэре, как их изменить при необходимости, и что делать, если соединение не устанавливается. Особое внимание уделим скрытым нюансам настройки портов для веб-клиента и REST-сервисов, которые часто становятся источником проблем.
1. Стандартные порты 1С: клиент-серверный режим
В большинстве случаев 1С:Предприятие в клиент-серверном режиме использует порт 1540 (TCP) для связи между клиентом и сервером приложений. Этот порт задействуется по умолчанию при установке платформы и прописан в конфигурационных файлах сервера. Однако важно понимать, что реальная картина сложнее:
- 🔹 Порт 1540/TCP — основной порт для взаимодействия клиента с сервером 1С:Предприятия. Именно его чаще всего требуется открывать в брандмауэре.
- 🔹 Порт 1541/TCP — используется для связи между сервером 1С:Предприятия и SQL-сервером (например, Microsoft SQL Server или PostgreSQL).
- 🔹 Диапазон 1560-1591/TCP — динамические порты, которые сервер может использовать для внутренних нужд (например, для обмена данными между рабочими процессами).
Если в вашей сети установлены строгие правила брандмауэра, недостаточно открыть только 1540. Например, при работе с распределённым кластером серверов 1С может задействовать дополнительные порты для репликации данных между узлами. Также стоит учитывать, что некоторые антивирусы (например, Kaspersky Endpoint Security) по умолчанию блокируют нестандартные порты, что приводит к ошибкам типа "Не удалось установить соединение с сервером 1С:Предприятие".
2. Порты для файлового варианта работы
В файловом режиме 1С:Предприятие не требует выделенных портов для связи с сервером, так как база хранится локально или в сетевой папке (например, на файловом сервере по протоколу SMB). Однако здесь есть свои нюансы:
- 📁 Порты SMB (445/TCP, 137-139/UDP) — если база расположена на сетевом ресурсе (например,
\\server\1C_bases), для доступа к ней должны быть открыты порты SMB (используются Windows для сетевых папок). - 🔒 Порт 135/TCP — может потребоваться для работы DCOM (например, при интеграции с другими приложениями через OLE).
- 🌐 Порт 80 или 443/TCP — если доступ к файловой базе организован через веб-сервер (например, Apache или IIS) с использованием 1С:Веб-расширения.
Важно: в файловом режиме проблемы с подключением чаще связаны не с портами, а с правами доступа к сетевым папкам или блокировкой антивирусом файлов .1CD. Если пользователи жалуются на ошибку "Файл базы данных повреждён или отсутствует", в первую очередь проверьте:
Права на чтение/запись для папки с базой|Наличие блокировок файлов антивирусом|Доступность сетевого ресурса по SMB|Целостность файлов базы (через chdbfl.exe)-->
Если база расположена на Linux-сервере (например, в папке /var/1C/bases), для доступа по SMB потребуется настроить Samba и открыть порты 139 и 445. В некоторых дистрибутивах (например, Ubuntu Server) SMB по умолчанию отключён из соображений безопасности.
3. Порты для кластера серверов 1С
При использовании кластера серверов 1С (например, для распределённой нагрузки или резервирования) количество задействованных портов увеличивается. Основные из них:
| Порт | Протокол | Назначение | Примечание |
|---|---|---|---|
1540 |
TCP | Основное соединение клиент-сервер | Может быть изменён в настройках кластера |
1541 |
TCP | Взаимодействие с SQL-сервером | Используется рабочими процессами |
1560-1591 |
TCP | Динамические порты для внутренних соединений | Могут конфликтовать с другими службами |
27017 |
TCP | Репликация данных между узлами кластера | Только для распределённых кластеров |
1545 |
TCP | Управление кластером через rac | Используется утилитой rac.exe |
Если в кластере используется резервирование (например, два сервера в режиме горячего резерва), между ними устанавливается постоянное соединение по порту 27017 (по умолчанию). Этот порт должен быть открыт только между узлами кластера — доступ из внешней сети к нему не требуется и представляет угрозу безопасности.
При настройке кластера в 1С:Предприятие 8.3.20+ можно явно указать диапазон динамических портов в файле conf.cfg (параметр port_range). Это поможет избежать конфликтов с другими службами.
Для управления кластером через утилиту rac.exe (например, для команд rac cluster list или rac process list) используется порт 1545. Если этот порт закрыт, администратор не сможет удалённо управлять сервером, но сама работа пользователей не пострадает.
4. Порты для веб-клиента и REST-сервисов
С появлением веб-клиента и REST-сервисов в 1С:Предприятие появились дополнительные требования к портам. Здесь ключевую роль играет веб-сервер (например, IIS или Apache), который выступает посредником между клиентом и сервером 1С.
- 🌍 Порт 80/TCP (HTTP) — стандартный порт для доступа к веб-клиенту. Например, адрес может выглядеть как
http://server/1c_web. - 🔒 Порт 443/TCP (HTTPS) — защищённое соединение для веб-клиента. Обязательно для производственных систем.
- 📡 Порт 1540/TCP — веб-сервер подключается к серверу 1С по этому порту (или другому, если он изменён).
- 🔄 Порт 8080/TCP — иногда используется для тестовых установок веб-клиента (например, на Apache Tomcat).
Для настройки REST-сервисов (например, для интеграции с внешними системами) в 1С:Предприятие 8.3.18+ используется тот же веб-сервер, но с дополнительными параметрами. Например, путь к REST-сервису может выглядеть так:
https://server/1c_rest/hs/exchange/
Важно: если веб-клиент или REST-сервисы не работают, проверьте не только порты 80/443, но и:
⚠️ Внимание: В IIS часто забывают включить модуль URL Rewrite, без которого запросы к 1С не будут корректно маршрутизироваться. Также проверьте, что в настройках пула приложений указан правильный .NET Framework (например, No Managed Code для 1С).
5. Как изменить стандартные порты 1С
Иногда стандартные порты 1540, 1541 и другие могут конфликтовать с другими службами (например, с Oracle Database, которая также использует 1521 и близкие порты). В этом случае порты можно изменить. Для этого:
- Откройте файл конфигурации кластера
conf.cfg(обычно расположен вC:\Program Files\1cv8\conf\). - Найдите параметры:
port = 1540range_port = 1560-1591
- Измените значения на свободные порты (например,
port = 1640). - Перезапустите службу 1С:Предприятия:
net stop srv1cv83net start srv1cv83
После изменения портов не забудьте:
- 🔧 Обновить правила брандмауэра.
- 📋 Переконфигурировать веб-сервер (если используется веб-клиент).
- 🖥️ Обновить строки подключения на клиентских машинах (например, в файле
1CEStart.cfg).
Что будет если не обновить порты в брандмауэре?
Если вы изменили порт в конфигурации 1С, но не обновили правила брандмауэра, клиенты не смогут подключиться к серверу. Типичная ошибка в этом случае: "Не удалось установить соединение с сервером 1С:Предприятие (10060: Попытка установления соединения не удалась, т.к. от другого компьютера не получен ответ за требуемое время").
Для проверки доступности нового порта можно использовать команду:
Test-NetConnection -ComputerName server_name -Port 1640
(в PowerShell).
6. Диагностика проблем с портами в 1С
Если клиенты не могут подключиться к серверу 1С, проблема часто кроется в неправильной настройке портов. Вот алгоритм диагностики:
- Проверьте доступность порта:
telnet server_name 1540Если соединение не устанавливается, порт закрыт (либо служба 1С не запущена).
- Просмотрите логи сервера:
Файлы логов находятся в
C:\Program Files\1cv8\srvinfo\(ищите ошибки типа"Bind failed"). - Убедитесь, что порт не занят другой службой:
netstat -ano | findstr 1540 - Проверьте настройки брандмауэра:
В Windows Defender или стороннем фаерволе должен быть разрешен входящий трафик на порт
1540/TCP.
Типичные ошибки и их причины:
| Ошибка | Вероятная причина | Решение |
|---|---|---|
10061: Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение |
Порт закрыт брандмауэром или служба 1С не запущена | Откройте порт в брандмауэре или запустите службу srv1cv83 |
10060: Истекло время ожидания подключения |
Сервер недоступен по сети или порт перенаправлен неверно | Проверьте сетевое подключение и маршрутизацию |
Не удалось установить соединение с информационной базой |
Неверный порт в строке подключения или база не опубликована | Проверьте параметр Port в файле 1CEStart.cfg |
Если после всех проверок проблема остаётся, попробуйте временно отключить брандмауэр и антивирус на сервере и клиенте. Если соединение заработает — ищите проблему в правилах безопасности.
7. Особенности портов в облачных решениях (1С:Fresh, 1С:Link)
При работе с облачными сервисами 1С:Fresh или 1С:Link настройка портов ложится на плечи провайдера, но есть нюансы, которые важно учитывать:
- ☁️ Порт 443/TCP (HTTPS) — единственный порт, который нужно открыть для доступа к облачной базе. Все остальные порты закрыты и управляются провайдером.
- 🔗 Порт 1540/TCP — используется внутри инфраструктуры 1С:Link для связи между серверами, но недоступен извне.
- 📱 Порты для мобильного клиента — приложения 1С на Android/iOS подключаются через
443(веб-интерфейс) или специальные шлюзы.
Важно: в облачных решениях нельзя изменить порты — они фиксированы и управляются автоматически. Если у вас возникают проблемы с подключением к 1С:Fresh, проверьте:
⚠️ Внимание: Некоторые корпоративные сети блокируют доступ к облачным сервисам по категориям трафика (например, как "Облачные хранилища"). В этом случае может потребоваться добавить домены.1cfresh.comи.1clink.ruв исключения прокси-сервера.
8. Безопасность: как защитить порты 1С от атак
Открытые порты 1С могут стать мишенью для атак (например, DDoS или попытки подбора паролей). Чтобы минимизировать риски:
- 🔐 Ограничьте доступ по IP: в брандмауэре разрешите подключение к портам
1540,1541только с доверенных адресов. - 🛡️ Используйте VPN: для удалённого доступа к серверу 1С настройте VPN-туннель (например, через OpenVPN или WireGuard).
- 🔄 Регулярно обновляйте платформу: в новых версиях 1С:Предприятия закрываются уязвимости, связанные с сетевыми протоколами.
- 📡 Настройте fail2ban: если сервер на Linux, это поможет блокировать подозрительные подключения.
Для дополнительной защиты можно использовать обратный прокси (например, Nginx), который будет:
- Шифровать трафик через
HTTPS(даже для внутренних соединений). - Ограничивать количество подключений с одного IP.
- Скрывать реальные порты 1С от внешнего мира.
Пример конфигурации Nginx для проксирования трафика на порт 1540:
server {
listen 443 ssl;
server_name 1c.yourdomain.com;
ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/key.pem;
location / {
proxy_pass http://localhost:1540;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
Для мониторинга подозрительной активности на портах 1С можно использовать утилиту tcpdump (Linux) или Microsoft Message Analyzer (Windows). Например, команда tcpdump -i eth0 port 1540 покажет весь трафик на этом порту.
FAQ: Частые вопросы о портах в 1С
Можно ли использовать порт 80 для клиент-серверного взаимодействия?
Технически да, но это не рекомендуется. Порт 80 обычно занят веб-сервером, и его использование для 1С может привести к конфликтам. Кроме того, этот порт часто сканируется ботами на предмет уязвимостей. Лучше выбрать нестандартный порт (например, 1640) и настроить перенаправление через Nginx или IIS.
Как узнать, какой порт использует моя база 1С?
Есть несколько способов:
- Посмотрите файл конфигурации кластера
conf.cfg(параметрport). - В списке баз (
1CEStart.cfg) найдите строку с параметромPort. - Используйте утилиту
rac cluster list— она покажет текущие настройки кластера, включая порты.
Нужно ли открывать порт 1541 для работы с PostgreSQL?
Порт 1541 используется для связи между сервером 1С и SQL-сервером, но только если они установлены на разных машинах. Если PostgreSQL и 1С:Предприятие работают на одном сервере, порт 1541 можно не открывать в брандмауэре (достаточно локального соединения). Однако для распределённых систем этот порт должен быть доступен между серверами.
Почему после обновления 1С перестали работать порты?
Это может произойти по нескольким причинам:
- В новой версии платформы изменились настройки по умолчанию (проверьте
conf.cfg). - Обновление сбросило права на папки с конфигурационными файлами (например,
C:\Program Files\1cv8\). - Антивирус заблокировал новые исполняемые файлы 1С (добавьте их в исключения).
Решение: сравните текущие настройки с резервной копией conf.cfg до обновления и при необходимости верните старые параметры портов.
Можно ли полностью отключить динамические порты (1560-1591)?
Технически да, но это может привести к нестабильной работе кластера, особенно при большой нагрузке. Динамические порты используются для внутренней коммуникации между рабочими процессами. Если вы хотите их отключить, установите в conf.cfg параметр port_range = 0, но будьте готовы к возможным ошибкам при параллельной работе пользователей.