Доступ к серверу 1С:Предприятия из сети и через интернет: порты, кластер, защита
Содержание
Чтобы открыть доступ к серверу 1С, разрешите на нём входящие TCP-подключения на порты 1540 (агент сервера), 1541 (менеджер кластера) и 1560-1591 (рабочие процессы). Затем убедитесь, что клиенты находят сервер по имени, и добавьте базу в список с типом «На сервере 1С:Предприятия». Для подключения через интернет
порты наружу не открывают: ставят VPN или публикуют базу на веб-сервере.
Типичная ситуация: сервер 1С поставили, база в консоли кластера создана, на самом сервере всё открывается. А у бухгалтера за соседним столом — ошибка подключения. Чаще всего мешают брандмауэр или имя сервера, которое клиент не может разрешить в IP-адрес. Начните с проверки основы, затем откройте порты, а удалённых сотрудников подключайте в последнюю очередь.
Что подготовить на сервере 1С до открытия доступа
Прежде чем открывать порты, проверьте основу. Если она не готова, сеть только замаскирует настоящую проблему.
Платформа и служба
- 🖥️ На сервере установлен компонент «Сервер 1С:Предприятия 8», служба агента запущена. В Windows она называется примерно
1C:Enterprise 8.3 Server Agent (x86-64), в списке служб её легко найти по слову «1C». - 🔢 Номер версии платформы на клиентах совпадает с номером версии сервера до последней цифры. Клиент 8.3.25.1374 не подключится к серверу 8.3.25.1445.
- 🔑 Серверная лицензия активирована, клиентские лицензии есть на нужное число пользователей.
- 👤 Служба работает от отдельной учётной записи (по умолчанию
USR1CV8), а не от администратора домена.
Сеть и имя сервера
- 📌 У сервера статический IP-адрес. Если адрес выдаёт DHCP, закрепите его резервированием на роутере.
- 🏷️ Имя сервера разрешается с клиентских машин. Проверьте с рабочего места командой
ping srv1c(подставьте своё имя). Ответ должен прийти с правильного IP. - 🗄️ Если СУБД (MS SQL Server или PostgreSQL) стоит на отдельной машине, сервер 1С должен до неё достучаться. Клиентам доступ к СУБД не нужен: с базой данных работает только сервер 1С.
Ориентиры по ресурсам
Точных «минимальных требований» для сервера нет, всё зависит от числа пользователей и конфигурации. Ориентировочно для небольшого офиса:
| Пользователей | Процессор | Память для 1С и СУБД | Диск под базы |
|---|---|---|---|
| до 10 | 4 ядра | 16 ГБ | SSD |
| 10–30 | 8 ядер | 32 ГБ | SSD/NVMe |
| 30–60 | 12–16 ядер | 64 ГБ | NVMe, СУБД на отдельном диске |
Это примерные цифры для типовых БП, ЗУП и УТ. Тяжёлая ERP или много фоновых заданий потребуют больше.
Доступ к серверу 1С в локальной сети: подключаем базу на рабочем месте
Когда сервер готов, подключите базу на одном клиенте и только потом раздавайте настройку остальным.
Шаг 1. Создайте базу в кластере
Если база ещё не создана, сделайте это в консоли администрирования серверов 1С: разверните кластер, на ветке «Информационные базы» вызовите создание новой базы. Укажите:
- Имя базы в кластере, например
buh. Это имя клиенты будут вводить при подключении. - Сервер СУБД, имя базы данных в СУБД и пользователя СУБД.
- Флажок «Разрешить выдачу лицензий сервером 1С:Предприятия», если лицензии стоят на сервере.
Шаг 2. Добавьте базу в список на клиенте
- Запустите 1С, в окне запуска нажмите «Добавить».
- Выберите добавление существующей информационной базы.
- Тип расположения — «На сервере 1С:Предприятия».
- Кластер серверов
1С:Предприятия — имя сервера, например
srv1c. Если кластер работает на нестандартном порту, укажите его через двоеточие:srv1c:2541. - Имя информационной базы в кластере — ровно то, что задано в консоли (
buh).
Строка подключения в списке баз будет выглядеть так:
Srvr="srv1c";Ref="buh";
Шаг 3. Раздайте настройку остальным
Вручную обходить 20 рабочих мест не нужно. Список баз можно выгрузить в файл .v8i (в окне запуска есть настройка списка) и положить его на общий ресурс. Второй вариант — указать общий файл списка баз в файле 1CEStart.cfg параметром CommonInfoBases.
Если база открылась на самом сервере, но не открывается с клиента, дело почти наверняка в сети. Переходите к портам.
Какие порты открыть для сервера 1С и как это сделать
Подключение идёт по цепочке. Клиент обращается к агенту сервера на порт 1540, агент направляет его к менеджеру кластера на 1541, а дальше клиент работает с рабочим процессом на одном из портов диапазона 1560-1591. Закрыт хоть один шаг — подключения не будет.
| Порт | Компонент | Кому нужен |
|---|---|---|
| 1540 | агент сервера (ragent) | клиентам и консоли администрирования |
| 1541 | менеджер кластера (rmngr) | клиентам |
| 1560–1591 | рабочие процессы (rphost) | клиентам |
| 1545 | сервер администрирования RAS | утилите rac и сторонним консолям |
| 475 | менеджер аппаратных ключей HASP | клиентам, если лицензии на USB-ключе |
| 80 / 443 | веб-сервер | при работе через веб-публикацию |
Диапазон рабочих процессов задаётся в свойствах рабочего сервера в консоли. Если вы его меняли, открывайте свой диапазон, а не стандартный.
Windows Server: правило брандмауэра
Откройте командную строку от имени администратора и выполните:
netsh advfirewall firewall add rule name="1C Server 8.3" dir=in action=allow protocol=TCP localport=1540-1541,1560-1591
То же самое в PowerShell:
New-NetFirewallRule -DisplayName "1C Server 8.3" -Direction Inbound -Protocol TCP -LocalPort 1540-1541,1560-1591 -Action Allow
Правило можно создать и мышью: «Брандмауэр Защитника Windows в режиме повышенной безопасности» → «Правила для входящих подключений» → «Создать правило» → тип «Для порта».
Linux: ufw и firewalld
Для Ubuntu и Debian с ufw:
sudo ufw allow 1540:1541/tcp
sudo ufw allow 1560:1591/tcp
Для дистрибутивов с firewalld:
sudo firewall-cmd --permanent --add-port=1540-1541/tcp
sudo firewall-cmd --permanent --add-port=1560-1591/tcp
sudo firewall-cmd --reload
Проверка с клиента
С рабочего места проверьте, что порт отвечает. В PowerShell:
Test-NetConnection srv1c -Port 1541
Строка TcpTestSucceeded : True значит, что порт доступен. Проверьте так 1540, 1541 и хотя бы один порт из диапазона, например 1560.
Удалённый доступ к серверу 1С через интернет
Сотрудник на удалёнке, филиал в другом городе, бухгалтер на аутсорсе — способов дать им доступ несколько. Сравним их сразу.
| Способ | Когда подходит | Риски и минусы |
|---|---|---|
| VPN до офисной сети | постоянные сотрудники, филиалы | нужен роутер или шлюз с VPN, настройка на каждом клиенте |
| Веб-публикация + HTTPS | много внешних пользователей, работа с разных устройств | веб-сервер в интернете, нужен сертификат и защита |
| Терминальный сервер (RDP, RemoteApp) | слабые компьютеры, медленный интернет | лицензии на терминальный доступ, RDP нельзя выставлять наружу без защиты |
| Проброс портов 1540-1591 на роутере | только для временного теста | сервер 1С открыт всему интернету, нестабильно |
| Облачный сервер 1С (аренда) | нет своего сервера и админа | ежемесячная плата, данные у провайдера |
VPN — рекомендуемый вариант
Через VPN удалённый компьютер попадает в офисную сеть, и 1С подключается так же, как в локальной сети. Подходят WireGuard, OpenVPN, IPsec или встроенный VPN роутера.
Один практический нюанс. Рабочий процесс сообщает клиенту имя сервера, а не IP. Если удалённый компьютер не видит офисный DNS, пропишите имя сервера в файле C:\Windows\System32\drivers\etc\hosts:
192.168.1.10 srv1c
Веб-публикация
Базу публикуют на Apache или IIS. На Windows это проще всего сделать из Конфигуратора: Администрирование → Публикация на веб-сервере. Клиент добавляет базу с типом «На веб-сервере» и адресом вида https://1c.example.ru/buh. Наружу открывается только 443, а порты сервера 1С остаются внутри сети.
Публикация без HTTPS передаёт пароли пользователей открытым текстом. Ставьте сертификат до того, как раздадите адрес сотрудникам.
Почему не стоит пробрасывать порты
Проброс 1540-1541 и 1560-1591 технически работает. Но сервер 1С становится доступен любому сканеру в интернете, а внешнему клиенту всё равно придётся прописывать имя сервера в hosts с внешним IP. Используйте это только для короткой проверки.
Кластер из нескольких рабочих серверов: распределение нагрузки
Когда пользователей больше 50–100 или фоновые задания тормозят работу, в кластер добавляют второй рабочий сервер. На нём ставится та же версия платформы, что и на основном.
Как добавить рабочий сервер
- На новой машине установите сервер 1С и запустите службу агента.
- В консоли администрирования основного сервера откройте кластер, ветку «Рабочие серверы» и создайте новый.
- Укажите имя компьютера, порт агента и диапазон портов рабочих процессов.
- Откройте на новом сервере те же порты, что и на основном.
Что настроить для балансировки
В свойствах рабочего сервера задаются параметры, которые влияют на распределение нагрузки: количество информационных баз на процесс, количество соединений на процесс, признак центрального сервера. Там же — «Требования назначения функциональности»: с их помощью можно, например, вынести фоновые задания на отдельный сервер, а пользователей оставить на основном.
Клиенты подключаются по-прежнему к имени основного сервера. Распределением по рабочим процессам занимается менеджер кластера. Но брандмауэр должен пропускать клиентов ко всем рабочим серверам.
Перед расширением кластера проверьте условия вашей серверной лицензии: возможности работы с несколькими серверами зависят от её вида.
Как защитить сервер 1С, когда доступ к нему открыт
Открыть порты — половина дела. Вторая половина — сделать так, чтобы к базе попали только свои.
Минимальный набор мер
- 🔒 Администратор кластера. По умолчанию войти в консоль может любой, кто видит сервер. Создайте администратора кластера и администратора центрального сервера с паролями.
- 🧱 Ограничение по адресам. В правиле брандмауэра разрешите подключения только из своей подсети. Для
netshдобавьте параметрremoteip=192.168.1.0/24. - 🌐 Ничего из 1540-1591 наружу. Удалённые пользователи — только через VPN или HTTPS-публикацию.
- 👥 Пароли пользователей базы. Учётная запись «Администратор» без пароля в рабочей базе — частая дыра. Включите требования к сложности пароля в настройках пользователей.
- 🗄️ Пароль СУБД. Пользователь
saилиpostgresс паролем «по умолчанию» перечёркивает всю остальную защиту. - 🔄 Обновления. Ставьте обновления ОС и актуальные релизы платформы.
- 💾 Резервные копии. Регулярные бэкапы средствами СУБД, хранение копии вне сервера.
Профили безопасности
В консоли кластера можно создать профили безопасности и назначить их базам. Профиль ограничивает, к каким файлам, программам и внешним ресурсам код конфигурации имеет доступ. Это защищает сервер, если через внешнюю обработку попытаются выполнить чужой код.
Не запускайте службу агента от имени администратора домена. Если учётную запись скомпрометируют, злоумышленник получит доступ ко всей сети.
Мониторинг: как следить за сервером 1С и подключениями
Когда доступ открыт, важно видеть, кто подключён и как себя чувствует сервер.
Встроенные средства
- 📊 Консоль администрирования. Ветка «Сеансы» показывает, кто и с какого компьютера работает. Ветка «Рабочие процессы» — нагрузку на процессы: память, число соединений, время ответа.
- 🧾 Технологический журнал. Включается файлом
logcfg.xmlв каталоге настроек сервера. Записывает ошибки, исключения, долгие вызовы. Включайте только нужные события: полный журнал быстро съедает диск. - 📓 Журнал регистрации базы — действия пользователей и ошибки на уровне конфигурации.
Утилита rac для скриптов
Сервер администрирования RAS даёт управлять кластером из командной строки. Запустите RAS на сервере, затем:
rac localhost:1545 cluster list
rac localhost:1545 session list --cluster=<id_кластера>
Идентификатор кластера возьмите из вывода первой команды. Остальные подкоманды смотрите в rac help.
Внешний мониторинг
Вывод rac и счётчики Windows удобно отдавать в Zabbix, Prometheus или другую систему мониторинга. Минимум, на что стоит поставить оповещение:
- остановка службы агента 1С;
- свободное место на диске с базами и журналами меньше 15–20%;
- загрузка памяти выше 90% дольше 10 минут;
- резкий рост числа сеансов.
Перезапуск службы агента или завершение рабочего процесса обрывает сеансы всех пользователей. Делайте это вне рабочего времени или предупредив людей.
Ошибки подключения к серверу 1С и что с ними делать
Выберите симптом, который видите на рабочем месте пользователя.
Если ни один пункт не подошёл, откройте технологический журнал на сервере и журнал событий Windows: ошибка запуска рабочего процесса или отказ в доступе к СУБД обычно видна там.
Частые вопросы
Нужен ли сервер 1С, чтобы работать с базой по сети?
Можно ли поменять стандартные порты сервера 1С?
имя:порт.Нужно ли клиентам открывать доступ к SQL Server или PostgreSQL?
Сколько пользователей выдержит удалённая работа через VPN?
Как подключить консоль администрирования с другого компьютера?
radmin.dll командой regsvr32 и добавьте в консоль центральный сервер по имени. Нужен доступ к порту 1540.