Работа 1С:Предприятия через терминальный сервер: схема, лицензии и настройка
Содержание
Терминальный режим 1С — это когда программа 1С:Предприятие запущена не на компьютере пользователя, а на терминальном сервере Windows, а пользователь видит только картинку её окна по протоколу RDP. Чтобы его настроить, нужны сервер с ролью «Службы удалённых рабочих столов», установленная на нём платформа 1С, лицензии 1С на каждый одновременный сеанс и клиентские лицензии Microsoft RDS.
Обычно к терминалу приходят, когда файловая база по сети начала тормозить, бухгалтер работает из дома, а филиал сидит на медленном канале. Терминальный сервер решает все три проблемы разом: данные не гоняются по сети, работает только изображение экрана.
Как устроен терминальный доступ к 1С
В обычной схеме клиент 1С работает на рабочем месте и тянет данные с сервера или из сетевой папки. В терминальной схеме клиент 1С переезжает на сервер. Пользователь получает от него только экран, а сам отправляет нажатия клавиш и движения мыши.
Что где находится:
- 🖥️ Рабочее место пользователя — любой компьютер, ноутбук или тонкий клиент с программой «Подключение к удалённому рабочему столу» (
mstsc.exe). Платформа 1С на нём не нужна. - 🗄️ Терминальный сервер — Windows Server с ролью RDS. На нём установлена платформа 1С, работают сеансы пользователей и клиентские процессы
1cv8.exeили1cv8c.exe. - 💾 База 1С — либо файловая на диске самого терминального сервера, либо клиент-серверная на отдельном сервере 1С с СУБД.
Терминальный режим не заменяет клиент-серверный вариант 1С, а дополняет его. Это разные уровни:
| Схема | Где работает клиент 1С | Где данные | Когда подходит |
|---|---|---|---|
| Терминал + файловая база | На терминальном сервере | Файл 1Cv8.1CD на том же сервере | До 5–10 активных пользователей |
| Терминал + сервер 1С | На терминальном сервере | Сервер 1С и СУБД в той же сети | От 10 пользователей, тяжёлые конфигурации |
| Без терминала, сервер 1С | На компьютере пользователя | Сервер 1С и СУБД | Все в одном офисе, быстрая локальная сеть |
💡 Главный выигрыш файловой базы в терминале — файл 1Cv8.1CD лежит на локальном диске сервера. Клиенты читают его без сетевой папки, поэтому исчезают типичные проблемы файлового режима по сети: обрывы и долгое открытие форм.
Клиента 1С можно отдавать двумя способами:
- Полный рабочий стол. Пользователь входит на сервер и видит его рабочий стол со значком 1С.
- RemoteApp. Пользователю публикуется только окно 1С. На его компьютере оно выглядит как обычная программа, без чужого рабочего стола.
Для бухгалтерии удобнее RemoteApp: меньше вопросов «куда я попал» и меньше возможностей что-то сломать на сервере.
Что понадобится: сервер и лицензии для терминального режима
Требования к серверу
Подойдёт Windows Server 2016 и новее с ролью «Службы удалённых рабочих столов». Ресурсы считают от числа одновременных сеансов. Ориентиры для типовых конфигураций вроде Бухгалтерии 3.0 или ЗУП 3.1:
| Ресурс | Ориентир на один сеанс | Пример на 10 пользователей |
|---|---|---|
| Оперативная память | примерно 300–600 МБ на тонкий клиент | 8 ГБ под сеансы + 4 ГБ под систему |
| Процессор | 1 ядро на 3–5 активных пользователей | 4 ядра |
| Диск | SSD обязателен, профиль и кэш 1С — от 0,5 ГБ на пользователя | SSD от 240 ГБ |
Цифры ориентировочные. Тяжёлые отчёты, обработки обмена и толстый клиент едят заметно больше.
Если на этом же сервере работает и сервер 1С с СУБД, памяти нужно примерно вдвое больше. Совмещать роли можно в маленькой фирме, но под нагрузкой СУБД и терминальные сеансы мешают друг другу.
Лицензии Microsoft
Для терминального доступа к Windows Server нужны:
- 🔑 лицензии на саму Windows Server по числу ядер сервера;
- 🔑 клиентские лицензии RDS CAL — на каждого пользователя или на каждое устройство;
- 🔑 сервер лицензирования удалённых рабочих столов, на котором эти CAL активируют.
После установки роли RDS работает льготный период 120 дней. Затем без активированных CAL подключения перестают проходить. Об этом часто вспоминают ровно на 121-й день.
Лицензии 1С
Платформа 1С считает лицензии по сеансам. Каждый терминальный сеанс для системы лицензирования — отдельное рабочее место. Десять бухгалтеров в терминале — это десять клиентских лицензий 1С, даже если физически все работают на одном сервере.
Где разместить лицензии:
- Клиент-серверная база . Клиентские лицензии удобнее активировать на сервере 1С. Тогда он сам выдаёт их сеансам, а терминальный сервер в лицензировании не участвует.
- Файловая база. Лицензии активируют на терминальном сервере. Нужна многопользовательская программная лицензия на нужное число мест или сетевой аппаратный ключ HASP с менеджером лицензий.
Однопользовательская лицензия на терминальном сервере даст работать только одному сеансу, остальные получат отказ.
Лицензия на сервер 1С нужна только для клиент-серверного варианта. Для файловой базы в терминале она не требуется.
Настройка запуска 1С на терминальном сервере
Шаг 1. Установка роли и платформы
- В «Диспетчере серверов» добавьте роль «Службы удалённых рабочих столов». Для одного сервера выберите быстрое развёртывание на основе сеансов.
- Установите платформу 1С тем же дистрибутивом, что и на сервере 1С. Номер версии клиента должен совпадать с версией сервера 1С до последней цифры.
- Ставьте платформу от имени администратора. Пока идёт установка, другие пользователи в сеансах работать не должны.
- Активируйте лицензии 1С: для файловой базы — на этом сервере, для клиент-серверной — на сервере 1С.
Шаг 2. Общий список баз для всех пользователей
Каждому пользователю добавлять базы вручную долго, и рано или поздно кто-то откроет не ту. Проще один раз прописать общий список.
- Создайте файл списка баз, например
D:\1C\ibases.v8i. Его удобно сформировать у себя через окно запуска, а затем скопировать. - Откройте файл настроек стартера для всех пользователей:
C:\ProgramData\1C\1CEStart\1CEStart.cfg. - Добавьте строку со ссылкой на общий список:
CommonInfoBases=D:\1C\ibases.v8i
После этого у каждого пользователя в окне запуска появятся базы из общего файла. Личные списки хранятся в профиле, в %APPDATA%\1C\1CEStart\ibases.v8i, и не конфликтуют с общим.
Шаг 3. Публикация 1С через RemoteApp
- Откройте
Диспетчер серверов → Службы удалённых рабочих столов → Коллекциии выберите коллекцию сеансов. - В блоке «Программы RemoteApp» запустите публикацию.
- Укажите стартер
C:\Program Files\1cv8\common\1cestart.exe. - Ограничьте доступ к программе группой пользователей 1С.
Публикуйте именно 1cestart.exe, а не 1cv8.exe из папки конкретной версии. Стартер сам выберет нужную версию платформы. После обновления платформы публикацию не придётся переделывать.
Если базу нужно открывать сразу, без окна выбора, в свойствах программы RemoteApp задайте параметры командной строки:
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /S"srv1c\buh"
Здесь srv1c — имя сервера 1С, buh — имя базы в кластере. Для файловой базы вместо /S используют /F"D:\1C\Bases\Buh".
Шаг 4. Вход без второго пароля
Чтобы пользователь не вводил пароль дважды — в Windows и в 1С, — включите аутентификацию операционной системы. В конфигурации откройте Администрирование → Настройки пользователей и прав → Пользователи, в карточке пользователя установите флажок аутентификации ОС и выберите его доменную учётную запись.
Как ускорить 1С в терминале и снизить трафик
По каналу RDP идут картинка экрана, звук, буфер обмена, принтеры и диски. Сама 1С тут почти ни при чём. Если тормозит, сначала разделите проблему: тормозит канал или тормозит сервер.
Признаки медленного канала: мышь отстаёт, окна прорисовываются кусками, но отчёт формируется за обычное время.
Признаки перегруженного сервера: картинка плавная, но проведение и отчёты медленные у всех сразу.
Что ускорит канал
- 🎨 Глубина цвета 16 бит вместо 32 в настройках подключения.
- 🖼️ Отключение фона рабочего стола, анимации окон и сглаживания шрифтов на вкладке «Взаимодействие».
- 🔇 Отключение передачи звука, если он не нужен.
- 🖨️ Перенаправление только тех принтеров, которые реально используются.
Что ускорит сервер
- 💾 SSD под профили пользователей и кэш 1С. Платформа активно пишет на диск в
%APPDATA%\1C\1cv8и%LOCALAPPDATA%\1C\1cv8. - 🧠 Тонкий клиент вместо толстого везде, где конфигурация на управляемых формах. Он расходует меньше памяти на сеанс.
- 🛡️ Исключения в антивирусе для каталогов кэша 1С и файлов баз. Без них проверка каждого обращения заметно тормозит работу.
- ⚡ Схема электропитания «Высокая производительность» на сервере.
💡 Если терминальный сервер и сервер 1С разные машины, держите их в одной локальной сети. Между ними идёт весь трафик данных. Терминал в офисе и сервер 1С в облаке на другом конце страны дадут медленную 1С даже на быстром интернете.
Почему не работает 1С через терминал: ошибки и решения
Лимит для отключённых сеансов
Чтобы закрытое крестиком окно не держало лицензию 1С, задайте завершение отключённых сеансов. Откройте групповую политику: Конфигурация компьютера → Административные шаблоны → Компоненты Windows → Службы удалённых рабочих столов → Узел сеансов удалённых рабочих столов → Ограничение сеансов по времени. В параметре для отключённых сеансов поставьте, например, 30–60 минут.
При завершении отключённого сеанса 1С закрывается без сохранения. Несохранённый документ пропадёт. Предупредите пользователей, что выходить нужно через Пуск → Выйти, а не крестиком окна.
Очистка кэша 1С у пользователя
Кэш хранится в профиле: %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8, в папках с длинными именами-идентификаторами. Удалять их можно только при закрытой 1С этого пользователя. Самый безопасный способ — однократный запуск с ключом:
"C:\Program Files\1cv8\common\1cestart.exe" /ClearCache
Принудительно завершать чужой процесс 1cv8c.exe в «Диспетчере задач» стоит только после звонка пользователю: его несохранённые данные будут потеряны.
Защита данных и права при работе через терминальный сервер
Терминальный сервер с 1С — лакомая цель. На нём в одном месте вся бухгалтерия и доступ к банку. Основные правила:
- 🚫 Не открывайте порт 3389 в интернет напрямую. Подбор паролей по RDP начинается через несколько часов после публикации. Удалённых сотрудников пускайте через VPN или шлюз удалённых рабочих столов (RD Gateway) по HTTPS.
- 🔐 Включите проверку подлинности на уровне сети (NLA) и блокировку учётной записи после нескольких неверных паролей.
- 👥 Отдайте пользователям только RemoteApp. Без полного рабочего стола у них нет доступа к Проводнику, командной строке и настройкам сервера.
- 💽 Ограничьте перенаправление дисков и буфера обмена. Иначе любой файл с сервера, включая выгрузку базы, уходит на домашний компьютер одним перетаскиванием. Если бухгалтеру нужно загружать выписки, оставьте одну папку обмена.
- 📁 Закройте папки с базами от пользователей на уровне NTFS. Для файловой базы пользователю нужен доступ к её каталогу на изменение, но не к соседним базам и не к папке резервных копий.
- 🧾 Права внутри 1С. Терминал не заменяет профили доступа конфигурации. Роли и ограничения на уровне записей настраиваются в самой 1С как обычно.
Резервные копии храните не на том же диске, что и базы. Шифровальщик, попавший на терминальный сервер, первым делом шифрует всё, до чего дотянется под правами пользователя.
Альтернатива терминалу: когда выбрать другую схему
Терминальный режим — не единственный способ дать удалённый доступ к 1С. Перед покупкой лицензий RDS сравните варианты.
| Способ | Что нужно | Плюсы | Минусы |
|---|---|---|---|
| Терминальный сервер (RDP, RemoteApp) | Windows Server, RDS CAL | Работает с любой конфигурацией и с толстым клиентом, мало трафика | Лицензии Microsoft, нужен администратор |
| Тонкий клиент через веб-сервер | Публикация базы на IIS или Apache | Нет RDS CAL, работает на любом ПК с платформой | Только управляемые формы, нужна публикация |
| Веб-клиент в браузере | Та же публикация на веб-сервере | Ничего не ставят на компьютер | Не все функции, зависит от браузера |
| Облачная 1С по подписке | Договор с провайдером | Ни сервера, ни администратора | Абонентская плата, ограничения на доработки |
Терминал выигрывает, когда в базе есть старые обработки на обычных формах, внешние компоненты, торговое оборудование или нестандартные доработки. В этих случаях тонкий и веб-клиент часто не справляются.
Если вся фирма работает на Бухгалтерии 3.0 без доработок, а удалённых пользователей двое-трое, публикация базы на веб-сервере обойдётся дешевле.