Свой сервер 1С:Предприятия на одном компьютере: установка, кластер, СУБД и порты
Содержание
Чтобы настроить локальный сервер 1С, нужно поставить на один компьютер три вещи: сервер 1С:Предприятия 8.3 (служба «Агент сервера»), СУБД (PostgreSQL или MS SQL Server) и консоль администрирования. Затем в консоли создаётся информационная база, которая хранит данные в СУБД, а клиент 1С подключается к ней по строке Srvr="ИмяКомпьютера";Ref="ИмяБазы";.
Вариантов два. PostgreSQL выбирают, когда нужна бесплатная СУБД и нет готовой лицензии SQL Server. MS SQL берут, если он уже куплен или админ привык к его инструментам. Для теста и разработки подходит и бесплатный MS SQL Express, но у него ограничение на размер базы (10 ГБ), так что для рабочей бухгалтерии он быстро становится тесным.
Подготовка компьютера и выбор версии платформы
Сервер 1С и все клиенты, которые к нему подключаются, должны работать на одной и той же сборке платформы — номер вида 8.3.xx.yyyy совпадает до последней цифры. Клиент другой версии к серверу не подключится. Поэтому сначала решите, какую сборку ставите, и держите её дистрибутив под рукой для всех рабочих мест.
Что проверить до установки:
- 🖥 ОС. Windows 10/11 для теста, Windows Server 2016 и новее для рабочей системы. Ставьте 64-разрядную версию сервера 1С.
- 💾 Память и диск. Под небольшую базу на 5–10 пользователей ориентир — от 8 ГБ ОЗУ на машину, где живут и 1С, и СУБД, и SSD под файлы базы. На 4 ГБ всё запустится, но СУБД и рабочие процессы будут спорить за память.
- 🔢 Требования конфигурации. Типовые конфигурации требуют платформу с номером не ниже определённого. Минимальная версия указана в описании релиза конфигурации, проверьте его до выбора сборки.
- 👤 Учётная запись для службы. Служба сервера 1С работает от отдельного пользователя Windows. Установщик по умолчанию создаёт локального пользователя
USR1CV8. В домене удобнее завести доменную учётку заранее. - 🧾 Имя компьютера. Сервер регистрируется под сетевым именем машины. Если планируете переименовать ПК — сделайте это до установки, иначе потом придётся править реестр кластера.
Для разработки и проверки обновлений на одном ноутбуке сервер не обязателен: файловая база работает без него. Сервер нужен, когда вы тестируете клиент-серверный режим, регламентные задания, фоновые задания под нагрузкой или готовите рабочую среду.
Установка сервера 1С и клиентской части
Используйте полный дистрибутив платформы «Технологическая платформа 1С:Предприятия (64-bit) для Windows» — в нём есть и клиент, и сервер. Запустите setup.exe от имени администратора.
Выбор компонентов
На шаге выбора компонентов отметьте:
- 1С:Предприятие — клиентские приложения (толстый и тонкий клиент).
- Сервер 1С:Предприятия 8 — сама служба сервера.
- Администрирование сервера 1С:Предприятия — консоль кластера.
- Модули расширения веб-сервера — только если планируете публикацию на IIS или Apache (веб-клиент, HTTP-сервисы).
Установка службы
Дальше установщик предложит установить сервер как сервис Windows. Оставьте флажок и выберите пользователя:
- создать нового
USR1CV8с паролем — вариант по умолчанию; - или указать существующую учётную запись.
После установки в оснастке services.msc появится служба «Агент сервера 1С:Предприятия 8.3 (x86-64)». Она должна быть в состоянии «Выполняется» и с типом запуска «Автоматически».
Регистрация консоли администрирования
Самый частый сюрприз после установки — консоль не открывается или пишет об ошибке компонента. Её библиотеку нужно зарегистрировать вручную, причём от той же сборки, что и сервер:
regsvr32 "C:\Program Files\1cv8\8.3.xx.yyyy\bin\radmin.dll"
Команду запускайте в командной строке от имени администратора. После обновления платформы регистрацию повторяют для новой сборки.
Для консоли создайте ярлык или откройте её через меню «Пуск» — пункт «Администрирование серверов 1С Предприятия».
Кластер серверов: агент, менеджер и рабочие процессы
При первом запуске служба сама создаёт кластер с настройками по умолчанию. Его схема простая:
| Компонент | Процесс | Порт по умолчанию | Что делает |
|---|---|---|---|
| Агент сервера | ragent.exe | 1540 | Принимает первое обращение клиента и консоли |
| Менеджер кластера | rmngr.exe | 1541 | Ведёт список баз, сеансов, распределяет нагрузку |
| Рабочие процессы | rphost.exe | 1560–1591 | Выполняют серверный код и общаются с СУБД |
Клиент сначала обращается к агенту на 1540, тот передаёт его менеджеру на 1541, а работа идёт через рабочий процесс из диапазона 1560–1591. Диапазон портов рабочих процессов задаётся в свойствах рабочего сервера, а не кластера.
Подключение в консоли
- Откройте консоль, выделите «Central 1C:Enterprise 8.3 servers».
- Через контекстное меню создайте новый центральный сервер: укажите имя компьютера и порт агента
1540. - Раскройте сервер → «Кластеры» → кластер «Локальный кластер». В нём видны «Информационные базы», «Рабочие серверы», «Рабочие процессы», «Сеансы».
Если кластер не появился, проверьте, что служба запущена, а имя компьютера в консоли совпадает с сетевым именем машины.
Ручная установка службы с нужными параметрами
Иногда нужно поменять порты (второй экземпляр сервера другой версии на той же машине), включить отладку или перенести каталог данных кластера. Тогда службу создают командой. Пример для порта 1540:
sc create "1C:Enterprise 8.3 Server Agent" binpath= "\"C:\Program Files\1cv8\8.3.xx.yyyy\bin\ragent.exe\" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d \"C:\Program Files\1cv8\srvinfo\" -debug" start= auto obj= ".\USR1CV8" password= "Пароль"
Ключ -debug разрешает отладку серверного кода из Конфигуратора. На рабочем сервере его обычно не держат. Для второго экземпляра сдвиньте все три значения, например -port 2540 -regport 2541 -range 2560:2591, и укажите другой каталог -d.
Перед удалением или пересозданием службы остановите её, а это оборвёт все сеансы пользователей. Делайте это вне рабочего времени и предупредите коллег.
Учётной записи службы нужны полные права на каталог данных кластера (по умолчанию C:\Program Files\1cv8\srvinfo) и право входа в систему как служба. Без них служба стартует и сразу останавливается.
Лицензии при работе через локальный сервер
Для клиент-серверного режима нужны два вида лицензий:
- 🔑 Лицензия на сервер 1С:Предприятия — без неё рабочий процесс не обслуживает базу, клиенты получают ошибку при подключении. Бывает в редакции «Стандарт» и «КОРП».
- 👥 Клиентские лицензии — по числу одновременно работающих пользователей.
Без лицензии платформа базу не запускает. Исключение — учебная версия, но она с сервером 1С не работает .
Где активировать
Программную лицензию сервера активируют на той машине, где стоит сервер 1С. Удобнее всего сделать это из клиента 1С, запущенного на этом же компьютере: при первом подключении к базе платформа предложит получить лицензию и попросит пин-код из комплекта поставки и регистрационные данные.
Клиентские программные лицензии в клиент-серверном режиме тоже можно активировать на сервере. Тогда их выдаёт сервер, и пользователям не нужна лицензия на каждом ПК. Для этого в свойствах информационной базы в консоли включён параметр «Разрешить выдачу лицензий сервером 1С:Предприятия».
Файлы активированных программных лицензий хранятся в C:\ProgramData\1C\licenses. Их нельзя переносить копированием на другой компьютер: лицензия привязана к параметрам оборудования.
Если на сервере стоит аппаратный USB-ключ HASP, нужен драйвер ключа. Для сетевого ключа на другом компьютере — менеджер лицензий HASP License Manager на нём и открытый порт 475 (UDP и TCP).
Подключение к СУБД: PostgreSQL или MS SQL Server
PostgreSQL
Ставьте сборку PostgreSQL, подготовленную для 1С (её распространяет фирма 1С и её партнёры, есть также Postgres Pro для 1С). Обычный PostgreSQL с сайта проекта без патчей с 1С работает плохо или не работает.
- Установите PostgreSQL, задайте пароль пользователя
postgres, порт оставьте5432. - Убедитесь, что служба PostgreSQL запущена.
- Создавать базу в pgAdmin не нужно — 1С сделает это сама при создании информационной базы.
MS SQL Server
- При установке включите смешанный режим проверки подлинности (SQL Server и Windows).
- Задайте пароль
saили создайте отдельный логин для 1С с рольюdbcreator. - Ограничьте память SQL Server в свойствах экземпляра. Без ограничения он заберёт почти всю ОЗУ, и рабочим процессам 1С на этой же машине станет тесно.
Создание информационной базы в консоли
Кластер → «Информационные базы» → контекстное меню «Создать» → «Информационная база». Заполните:
| Поле | Пример для PostgreSQL | Пример для MS SQL |
|---|---|---|
| Имя | buh | buh |
| Сервер баз данных | localhost | localhost или ИМЯПК\SQLEXPRESS |
| Тип СУБД | PostgreSQL | MS SQL Server |
| База данных | buh | buh |
| Пользователь сервера БД | postgres | sa или логин для 1С |
| Создать базу данных в случае её отсутствия | ✔ | ✔ |
| Разрешить выдачу лицензий сервером | Да | Да |
Нажмите «ОК». Затем в окне запуска 1С добавьте базу через «Добавить» → «Добавление в список существующей информационной базы» → «На сервере 1С:Предприятия». Имя кластера — имя компьютера, имя базы — buh.
Пустую базу заполняют загрузкой выгрузки .dt в Конфигураторе или созданием из шаблона конфигурации.
Безопасность: администраторы кластера и брандмауэр
Сразу после установки консоль пускает любого пользователя этой машины. Закройте это:
- В консоли откройте «Администраторы» центрального сервера и добавьте администратора с паролем.
- Повторите в узле «Администраторы» самого кластера.
- Переподключитесь — консоль запросит логин и пароль.
Запишите пароль администратора кластера в надёжное место. Если он потерян, не пересоздавайте кластер: остановите службу в нерабочее время и восстановите файлы каталога srvinfo из резервной копии или обратитесь к тому, кто настраивал сервер.
Ещё два правила:
- 🔐 Пароль пользователя СУБД (
postgres,sa) не должен совпадать с паролями пользователей 1С. - 🚫 Не давайте пользователям права администратора Windows на сервере.
Порты в брандмауэре
Если к локальному серверу подключаются другие компьютеры сети, откройте входящие порты 1С:
netsh advfirewall firewall add rule name="1C Server 8.3" dir=in action=allow protocol=TCP localport=1540,1541,1560-1591
Порты СУБД (5432 для PostgreSQL, 1433 для MS SQL) снаружи открывать не нужно, если СУБД и сервер 1С на одной машине: рабочие процессы обращаются к ней локально. Если используете утилиту rac через сервер администрирования ras, добавьте и его порт — по умолчанию 1545.
Диагностика: почему локальный сервер 1С не работает
Начинайте проверку с простого: служба запущена? Порты слушаются? Проверить порт:
netstat -ano | findstr :1540
Если строки нет — агент не слушает порт. Если есть, но с PID другого процесса — порт занят чужой программой.
Если не помогло
- Включите технологический журнал: он пишет события сервера в файлы и показывает, на каком шаге рвётся соединение. Настраивается файлом
logcfg.xmlв каталогеconfплатформы. - Поставьте ту же сборку сервера на чистую виртуальную машину. Если там всё работает — проблема в окружении исходного компьютера (антивирус, политики, занятые порты).
- Посмотрите список кластеров из командной строки, запустив
rasи выполнивrac cluster list. Если кластер виден вrac, но не в консоли — дело в консоли, а не в сервере.