Доступ к серверу 1С:Предприятия из сети и через интернет: порты, кластер, защита

· 10 мин

Содержание

Чтобы открыть доступ к серверу 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С и СУБДДиск под базы
до 104 ядра16 ГБSSD
10–308 ядер32 ГБSSD/NVMe
30–6012–16 ядер64 ГБNVMe, СУБД на отдельном диске

Это примерные цифры для типовых БП, ЗУП и УТ. Тяжёлая ERP или много фоновых заданий потребуют больше.

Доступ к серверу 1С в локальной сети: подключаем базу на рабочем месте

Когда сервер готов, подключите базу на одном клиенте и только потом раздавайте настройку остальным.

Шаг 1. Создайте базу в кластере

Если база ещё не создана, сделайте это в консоли администрирования серверов 1С: разверните кластер, на ветке «Информационные базы» вызовите создание новой базы. Укажите:

  1. Имя базы в кластере, например buh. Это имя клиенты будут вводить при подключении.
  2. Сервер СУБД, имя базы данных в СУБД и пользователя СУБД.
  3. Флажок «Разрешить выдачу лицензий сервером 1С:Предприятия», если лицензии стоят на сервере.

Шаг 2. Добавьте базу в список на клиенте

  1. Запустите 1С, в окне запуска нажмите «Добавить».
  2. Выберите добавление существующей информационной базы.
  3. Тип расположения — «На сервере 1С:Предприятия».
  4. Кластер серверов 1С:Предприятия — имя сервера, например srv1c. Если кластер работает на нестандартном порту, укажите его через двоеточие: srv1c:2541.
  5. Имя информационной базы в кластере — ровно то, что задано в консоли (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С и запустите службу агента.
  2. В консоли администрирования основного сервера откройте кластер, ветку «Рабочие серверы» и создайте новый.
  3. Укажите имя компьютера, порт агента и диапазон портов рабочих процессов.
  4. Откройте на новом сервере те же порты, что и на основном.

Что настроить для балансировки

В свойствах рабочего сервера задаются параметры, которые влияют на распределение нагрузки: количество информационных баз на процесс, количество соединений на процесс, признак центрального сервера. Там же — «Требования назначения функциональности»: с их помощью можно, например, вынести фоновые задания на отдельный сервер, а пользователей оставить на основном.

Клиенты подключаются по-прежнему к имени основного сервера. Распределением по рабочим процессам занимается менеджер кластера. Но брандмауэр должен пропускать клиентов ко всем рабочим серверам.

Перед расширением кластера проверьте условия вашей серверной лицензии: возможности работы с несколькими серверами зависят от её вида.

Как защитить сервер 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С, чтобы работать с базой по сети?
Нет. Файловую базу можно положить в общую папку и открывать с нескольких компьютеров. Но при 5–10 одновременных пользователях файловый вариант начинает тормозить, и тогда переходят на клиент-серверный.
Можно ли поменять стандартные порты сервера 1С?
Да. Порт агента и менеджера кластера задаются при установке службы, диапазон рабочих процессов — в свойствах рабочего сервера. Клиенты тогда указывают кластер в виде имя:порт.
Нужно ли клиентам открывать доступ к SQL Server или PostgreSQL?
Нет. С СУБД работает только сервер 1С. Порт СУБД должен быть открыт для сервера 1С, а для рабочих мест его лучше закрыть.
Сколько пользователей выдержит удалённая работа через VPN?
Зависит от канала. Ориентировочно тонкий клиент на одного активного пользователя занимает от 100 до 500 кбит/с. При медленном интернете удобнее терминальный сервер или веб-публикация.
Как подключить консоль администрирования с другого компьютера?
Установите на этот компьютер платформу с компонентом администрирования той же версии, зарегистрируйте radmin.dll командой regsvr32 и добавьте в консоль центральный сервер по имени. Нужен доступ к порту 1540.