Рабочее место у сервера 1С: порты, кластер, лицензии и веб-доступ

· 9 мин

Содержание

Чтобы подключиться к серверу 1С с другого компьютера, на рабочем месте ставят клиент той же версии платформы, что и сервер. Затем в окне запуска добавляют базу с типом «На сервере 1С:Предприятия»: указывают имя сервера и имя базы в кластере. Со стороны сети нужно, чтобы клиент видел сервер по имени и проходил на TCP-порты 1540, 1541 и диапазон 1560–1591.

Есть три способа работать с серверной базой с другой машины. Прямое подключение тонкого или толстого клиента — для офисной сети. Веб-публикация — когда нужен доступ через браузер или из интернета. Удалённый рабочий стол (RDP) — когда клиент на месте ставить нельзя или канал слабый. Для офиса с десятком рабочих мест прямое подключение проще всего: ничего, кроме клиента платформы и пары правил брандмауэра, не нужно.

Как клиент 1С находит сервер и какие порты при этом идут

Подключение идёт в несколько шагов, и сбой на любом из них выглядит для пользователя одинаково: «сервер не найден».

  1. Клиент обращается к агенту сервера (процесс ragent) на порт 1540.
  2. Агент сообщает адрес менеджера кластера (процесс rmngr) — по умолчанию порт 1541.
  3. Менеджер выдаёт клиенту рабочий процесс (rphost) — у него порт из диапазона, обычно 1560–1591.
  4. Дальше клиент работает напрямую с рабочим процессом.

Ключевая деталь: на шагах 2 и 3 сервер возвращает клиенту своё сетевое имя, а не IP-адрес. Если рабочее место не может превратить это имя в адрес, подключение срывается, даже когда в окне запуска вы указали сервер по IP.

ПортКто слушаетНужен ли клиенту
1540агент сервера ragentда
1541менеджер кластера rmngrда
1560–1591рабочие процессы rphostда
1545сервер администрирования rasтолько для удалённого администрирования через rac
1433 / 5432MS SQL / PostgreSQLнет, к СУБД ходит только сервер 1С

Клиенту не нужен доступ к порту СУБД. Если пользователь видит ошибку подключения к SQL, разбираться надо на сервере 1С, а не на рабочем месте.

Если кластер ставили не на стандартных портах (например, второй кластер на 2541), имя сервера в окне запуска пишут с портом: srv1c:2541.

Подготовка рабочего места перед подключением к серверу 1С

Версия платформы — один в один

Клиент и сервер должны быть одной версии вплоть до последней цифры: если сервер 8.3.24.1691, то и клиент 8.3.24.1691. При расхождении платформа откажет в подключении с сообщением о несоответствии версий клиента и сервера.

Версию сервера смотрят в консоли администрирования или в списке программ на сервере. Дистрибутив клиента берут тот же, из которого ставили сервер. При установке достаточно компонента «1С:Предприятие — тонкий клиент» (или «1С:Предприятие», если нужен толстый клиент или Конфигуратор).

Имя сервера должно разрешаться

Проверьте с рабочего места:

ping srv1c

Если ответ идёт с правильного IP — хорошо. Если «не удаётся обнаружить узел» или ответ приходит с другого адреса, есть два пути:

  • 🌐 попросить администратора сети завести запись в DNS;
  • 📝 прописать сервер в файл C:\Windows\System32\drivers\etc\hosts (редактор запускать от имени администратора):
192.168.1.10    srv1c

Имя в hosts должно совпадать с тем, под которым сервер записан в кластере. Его видно в консоли администрирования в ветке рабочих серверов.

Проверка сетевой доступности сервера 1С и его портов

ping проверяет только, что машина жива. Порт может быть закрыт брандмауэром, а ping при этом проходить. Порты проверяют отдельно.

В PowerShell на рабочем месте:

Test-NetConnection srv1c -Port 1540
Test-NetConnection srv1c -Port 1541
Test-NetConnection srv1c -Port 1560

В выводе смотрите строку TcpTestSucceeded. True — порт открыт, False — закрыт или служба не слушает.

На самом сервере полезно убедиться, что процессы действительно слушают порты:

netstat -ano | findstr ":1540 :1541 :156"

Если на сервере порт 1540 не слушается — служба агента не запущена. Её ищут в оснастке «Службы» (services.msc) по слову «1С:Предприятие». Если же сервер слушает, а с рабочего места TcpTestSucceeded : False — дело в брандмауэре или сетевом оборудовании между машинами.

Если решите перезапустить службу агента сервера 1С, все пользователи потеряют текущие сеансы, а несохранённые документы пропадут. Делайте это вне рабочего времени или после предупреждения всех, кто работает в базе.

Открываем порты 1С в брандмауэре Windows на сервере

Правило нужно на входящие соединения на стороне сервера. На рабочем месте обычно ничего открывать не надо: исходящие соединения брандмауэр Windows по умолчанию пропускает.

Из командной строки, запущенной от имени администратора:

netsh advfirewall firewall add rule name="1C Server" dir=in action=allow protocol=TCP localport=1540,1541,1560-1591

То же самое в PowerShell:

New-NetFirewallRule -DisplayName "1C Server" -Direction Inbound -Protocol TCP -LocalPort 1540,1541,1560-1591 -Action Allow

Через графический интерфейс: wf.msc → «Правила для входящих подключений» → «Создать правило» → тип «Для порта» → TCP → перечислить порты → «Разрешить подключение» → профили → имя правила.

Несколько практических моментов:

  • 🔢 Если в свойствах рабочего сервера задан другой диапазон портов рабочих процессов, правило должно повторять именно его.
  • 🏢 Профиль сети. Если сетевое подключение сервера определилось как «Общедоступная», а правило создали только для профиля «Частный» или «Домен», порты останутся закрыты.
  • 🛡️ Сторонний антивирус с сетевым экраном работает поверх брандмауэра Windows. Правило придётся добавить и в нём.

Не пробрасывайте порты 1540–1591 на роутере в интернет. Протокол клиент-сервера 1С не рассчитан на открытую сеть. Для удалённых сотрудников используйте VPN, веб-публикацию по HTTPS или RDP.

Регистрация базы в кластере и подключение базы на клиенте

Чтобы к базе можно было подключиться, она должна быть зарегистрирована в кластере. Если база уже работает у других пользователей, этот шаг пропускают и сразу добавляют её на клиенте.

Регистрация через консоль администрирования

На сервере (или на машине с установленной консолью) откройте «Администрирование серверов 1С Предприятия».

  1. Разверните центральный сервер → Кластеры → нужный кластер → Информационные базы.
  2. Контекстное меню → Создать → Информационная база.
  3. Заполните поля:
    • Имя — его потом вводят на клиенте, например buh_main;
    • Сервер баз данных — имя сервера СУБД (для MS SQL с именованным экземпляром — srvsql\SQLEXPRESS);
    • Тип СУБД, База данных, Пользователь сервера БД, Пароль;
    • флажок «Разрешить выдачу лицензий сервером 1С:Предприятия» — о нём ниже;
    • флажок «Создать базу данных в случае ее отсутствия» — если базы на СУБД ещё нет.
  4. Нажмите «ОК».

Создать базу в кластере можно и прямо из окна запуска на клиенте: «Добавить» → «Создание новой информационной базы» → тип «На сервере 1С:Предприятия». Поля те же.

Добавление базы в список на рабочем месте

  1. Откройте окно запуска 1С → «Добавить».
  2. Выберите «Добавление в список существующей информационной базы».
  3. Введите понятное пользователю наименование.
  4. Тип расположения — «На сервере 1С:Предприятия».
  5. Кластер серверов 1С:Предприятия — srv1c (или srv1c:2541 для нестандартного порта).
  6. Имя информационной базы в кластере — buh_main, ровно как в консоли.
  7. Выберите вариант запуска: тонкий клиент, толстый или «Выбирать автоматически».

Строка соединения такой базы выглядит так:

Srvr="srv1c";Ref="buh_main";

Если базу нужно раздать на 20 рабочих мест, не вбивайте её руками на каждом. Добавьте один раз, а затем скопируйте файл списка баз ibases.v8i из %APPDATA%\1C\1CEStart\ на другие машины. Можно и централизованно — через общий файл списка, который указывается в настройках окна запуска.

Лицензии при подключении к серверу 1С с другого компьютера

Сетевая доступность — половина дела. Вторая половина — лицензии. Нужны два вида:

  • 🖥️ лицензия на сервер 1С:Предприятия — устанавливается на сервер;
  • 👥 клиентские лицензии — по одной на каждый одновременный сеанс.

Клиентские лицензии в клиент-серверном режиме можно держать в двух местах:

Где лицензияКак работаетКогда удобно
На сервере 1Срабочий процесс выдаёт лицензию сеансуосновной вариант для серверной базы
На рабочем местеклиент берёт лицензию со своего компьютераотдельные машины, однопользовательские комплекты
Сетевой ключ HASPклиент или сервер находит ключ в сетистарые аппаратные комплекты

Чтобы сервер выдавал клиентские лицензии, нужны два условия. Программная лицензия активирована на сервере (через Конфигуратор или клиент, запущенный на этом компьютере). В свойствах базы в кластере стоит флажок «Разрешить выдачу лицензий сервером 1С:Предприятия».

Какие лицензии реально заняты, видно в консоли администрирования: у сеансов есть сведения о лицензиях. Для командной строки есть утилита rac (нужна запущенная служба ras):

rac session list --licenses --cluster=<id кластера>

Идентификатор кластера даёт rac cluster list. Остальные параметры — по справке rac help.

Типичные причины отказа по лицензиям:

  • 🔐 все клиентские лицензии уже заняты — кто-то не закрыл 1С или висит «мёртвый» сеанс;
  • 💻 программная лицензия активирована на другом компьютере и сервер её не видит;
  • 🔄 после замены оборудования или переустановки ОС сервера лицензия перестала соответствовать машине — её восстанавливают тем же пинкодом или запрашивают резервный;
  • ❌ флажок выдачи лицензий в свойствах базы снят.

Без доступной лицензии платформа не запустит базу — работы «в демо-режиме» нет.

Доступ к серверной базе через веб-публикацию

Если прямое подключение невозможно — сотрудник вне офиса, порты закрыты политикой — базу публикуют на веб-сервере. Тогда клиенту нужен только HTTP или HTTPS.

Схема такая: на сервер (или отдельную машину) ставят Apache или IIS и компонент платформы «Модули расширения веб-сервера». Затем публикуют базу:

  1. Запустите Конфигуратор от имени администратора Windows.
  2. Откройте серверную базу .
  3. Администрирование → Публикация на веб-сервере.
  4. Укажите имя публикации (например, buh), тип веб-сервера и каталог.
  5. Нажмите «Опубликовать».

После этого база доступна по адресу http://имя-веб-сервера/buh. На рабочем месте её открывают:

  • 🌍 в браузере — по этому адресу;
  • 🖱️ в тонком клиенте — «Добавить» → «Добавление в список существующей» → тип «На веб-сервере» → тот же адрес.

Веб-сервер общается с кластером по тем же портам 1540–1591, поэтому если он стоит на отдельной машине, правило брандмауэра на сервере 1С должно пропускать и её.

Для доступа из интернета публикуйте только по HTTPS, с действующим сертификатом и надёжными паролями пользователей 1С. Публикация по голому HTTP передаёт логины и данные открытым текстом.

Диагностика: выберите симптом

Частые вопросы

Можно ли подключиться к серверу 1С по IP-адресу вместо имени?
В поле кластера IP указать можно, но сервер всё равно вернёт клиенту своё сетевое имя. Поэтому имя должно разрешаться через DNS или файл hosts, иначе подключение оборвётся на втором шаге.
Нужно ли ставить сервер 1С на каждый компьютер?
Нет. На рабочие места ставят только клиент: тонкий клиент достаточен для работы пользователей. Сервер 1С ставится один раз, на выделенную машину.
Как подключиться к серверу 1С из дома?
Самые надёжные варианты — VPN в офисную сеть с обычным подключением, веб-публикация по HTTPS или удалённый рабочий стол. Порты кластера в интернет напрямую не открывают.
Сколько портов нужно открыть, если пользователей 50?
Диапазон рабочих процессов от числа пользователей не зависит: один рабочий процесс обслуживает много сеансов. Стандартного набора 1540, 1541 и 1560–1591 хватает.
Почему у одного пользователя подключается, а у другого нет?
Чаще всего на втором компьютере другая сборка платформы, нет записи в hosts или работает свой сетевой экран. Сравните версию клиента и выполните Test-NetConnection с проблемной машины.