RDP для 1С: как работает терминальный доступ и как его настроить без дыр
Содержание
RDP (Remote Desktop Protocol) — протокол Microsoft, по которому вы видите рабочий стол другого компьютера и управляете им как своим. В 1С он нужен, чтобы пользователи работали с базой на сервере: по сети идёт только картинка и нажатия клавиш, а не гигабайты данных. Для файловой базы это часто единственный способ получить нормальную скорость, для клиент-серверной — удобный способ раздать доступ удалённым сотрудникам.
Ниже — как устроено подключение, что нужно по лицензиям, как включить доступ шаг за шагом, почему «тормозит» и как не получить зашифрованную базу после атаки на открытый порт 3389.
Как устроено подключение: что именно передаёт RDP
Схема простая. На сервере (или обычном ПК с Windows) запущена служба удалённых рабочих столов. Клиент — программа mstsc.exe (подключение к удалённому рабочему столу) — соединяется с ней по порту TCP 3389. Сервер создаёт для пользователя отдельный сеанс, запускает в нём 1cv8c.exe, а клиенту отправляет сжатое изображение экрана. Обратно уходят нажатия клавиш и движения мыши.
Важное следствие: платформа 1С запускается на сервере, а не у пользователя. Файл базы 1Cv8.1CD читается с локального диска сервера, а не по сетевой папке. Поэтому канал в 1–2 Мбит/с на пользователя уже тянет работу с документами.
Что ещё умеет RDP, и что пригодится в работе с 1С:
- 🖨 перенаправление принтеров и сканеров с рабочего места в сеанс;
- 📋 общий буфер обмена — копировать таблицы между локальным Excel и 1С;
- 📁 проброс локальных дисков — загрузить файл выписки с домашнего компьютера;
- 🖥 несколько мониторов и произвольное разрешение;
- 🔊 звук и USB-устройства (с оговорками, о них ниже).
Три варианта, что называют «RDP для 1С», на практике разные вещи:
| Вариант | Что это | Сколько человек одновременно |
|---|---|---|
| Клиентская Windows (10/11 Pro) | Подключение к одному ПК в офисе | Один сеанс: второй пользователь выбьет первого |
| Windows Server с ролью служб удалённых рабочих столов | Полноценный терминальный сервер | Столько, сколько потянут память и лицензии |
| Публикация приложения (RemoteApp) | Окно только 1С, без рабочего стола | Как у терминального сервера |
Редакция Windows Home принимать подключения не умеет вовсе — только подключаться к другим.
Зачем нужен терминальный сервер для 1С
Четыре причины, по которым компании идут на терминальный сервер вместо «каждому свой ПК и общая папка».
1. Скорость файловой базы. В файловом режиме клиент читает файл базы по сети. На сотне мегабайт это незаметно, на нескольких гигабайтах проведение документа или формирование отчёта превращается в ожидание. На терминальном сервере база лежит на локальном SSD, и сеть между клиентом и данными исчезает.
2. Удалённая работа без VPN-квеста. Бухгалтер дома запускает mstsc, вводит логин — и видит тот же рабочий стол, что и в офисе. Ничего не надо устанавливать, настраивать пути к базе, обновлять платформу на личном компьютере.
3. Одна точка обновления и резервного копирования. Платформа, расширения, шрифты, принтеры, настройки Excel — всё живёт на сервере. Обновили один раз — обновились все.
4. Данные не покидают сервер. Сотрудник ничего не копирует на личный ноутбук, если выключить проброс дисков и буфера обмена политикой. Для бухгалтерии с коммерческой тайной это весомый довод.
Минусы честные: сервер становится единой точкой отказа, нужны лицензии Windows на каждого пользователя и администратор, который будет за этим следить.
Лицензии: что считается и сколько платить
Здесь три отдельные истории, и путают их постоянно.
- Лицензия 1С. Каждый одновременный сеанс 1С занимает одно рабочее место лицензии. Если пользователь открыл две базы в одном сеансе RDP или запустил 1С дважды, расход зависит от типа лицензии и числа процессов. Точные условия смотрите в лицензионном соглашении на вашу поставку.
- Лицензия Windows Server — на сам сервер.
- RDS CAL — клиентские лицензии на удалённые рабочие столы, отдельно на каждого пользователя или на каждое устройство. Без них сервер даёт 120 дней «льготного периода», потом отказывает в подключении.
Ориентир по бюджету: RDS CAL на одного пользователя стоит порядка нескольких тысяч рублей в разовом платеже, серверный Windows — десятки тысяч. Цены плавают, сверяйтесь с прайсом поставщика.
Пошаговая настройка удалённого доступа к 1С
Порядок для терминального сервера на Windows Server 2016 или новее. Для отдельного ПК с Windows Pro пропустите шаги 2–3.
Шаг 1. Разрешите подключения
Нажмите Win+R, введите sysdm.cpl, откройте вкладку «Удалённый доступ». Включите «Разрешить удалённые подключения к этому компьютеру» и оставьте отметку о проверке подлинности на уровне сети (NLA). Её нельзя снимать ради «чтобы старый клиент подключился»: это одна из главных защит, подробности в разделе про безопасность.
Шаг 2. Установите роль
Через «Диспетчер серверов → Добавить роли и компоненты» выберите «Установка служб удалённых рабочих столов», сценарий «Быстрый запуск» или «Роль узла сеансов». После установки сервер перезагрузится — делайте это вне рабочего времени.
Шаг 3. Подключите лицензирование
Установите роль «Лицензирование удалённых рабочих столов», активируйте сервер лицензий и внесите купленные CAL. Затем в групповой политике укажите режим лицензирования (на пользователя или на устройство) и адрес сервера лицензий. Путь в редакторе gpedit.msc: Конфигурация компьютера → Административные шаблоны → Компоненты Windows → Службы удалённых рабочих столов → Узел сеансов удалённых рабочих столов → Лицензирование.
Шаг 4. Заведите пользователей
Создайте учётные записи и добавьте их в локальную группу «Пользователи удалённого рабочего стола». Администраторам работать с 1С через RDP каждый день не нужно — отдельная обычная учётка безопаснее.
Шаг 5. Поставьте платформу и положите базу
- Установите платформу 1С в режиме для всех пользователей, ту же версию, на которой работает конфигурация.
- Папку с базой разместите на локальном диске сервера, а не в сетевой шаре.
- Дайте группе пользователей права на эту папку: чтение, запись, изменение. Права на
1Cv8.1CDи каталог блокировок нужны всем, иначе второй вошедший получит ошибку. - Добавьте базу в список (кнопка «Добавить» → «Создание информационной базы или добавление существующей») для всех пользователей через общий список баз.
Шаг 6. Подключитесь с клиента
На рабочем месте запустите mstsc, нажмите «Показать параметры» и вкладкой «Локальные ресурсы» выберите, что пробрасывать: принтеры, буфер обмена, диски. Введите адрес сервера и учётные данные. Сохраните настройки в файл .rdp, чтобы раздать коллегам.
Можно не показывать рабочий стол совсем: опубликуйте 1cv8c.exe как приложение RemoteApp. Пользователь увидит только окно 1С, а доступ к проводнику и другим программам закрыт.
Почему 1С в RDP тормозит и как это исправить
Сеанс подвисает чаще всего по причинам, не имеющим отношения к самому протоколу.
Не хватает памяти. Один сеанс с 1С в среднем занимает несколько сотен мегабайт, на тяжёлых отчётах — больше гигабайта. Для 15 человек берите не меньше 16 ГБ, а лучше 24–32. Когда не хватает ОЗУ, система уходит в своп, и все тормозят одновременно.
Диск. База должна лежать на SSD. На обычном HDD с несколькими пользователями очереди растут мгновенно.
Процессор. 1С активно использует одно ядро на сеанс. Мало ядер — формирование отчётов у одного блокирует других.
Лишняя графика. Уменьшите нагрузку на канал и сервер:
- В
mstscна вкладке «Взаимодействие» выберите скорость соединения «Широкополосное» и отключите фон рабочего стола, анимацию меню и сглаживание шрифтов. - Установите глубину цвета 16 бит, если качество картинки не важно.
- Отключите перенаправление звука и ненужных USB-устройств.
Профили. Если у пользователей перемещаемые профили, а в них лежит кэш 1С — вход растягивается на минуты. Кэш и временные файлы 1С вынесите из сетевого профиля.
Зависшие сеансы. Отключённые (но не завершённые) сеансы продолжают занимать память и держат лицензию 1С. В групповой политике (раздел «Ограничение сеансов» в том же узле «Узел сеансов удалённых рабочих столов») задайте время, через которое отключённый сеанс завершается — например, 4–8 часов.
Прежде чем завершать чужие сеансы вручную, предупредите людей: несохранённые данные в открытом документе 1С пропадут. Делайте это в обеденный перерыв или после окончания работы.
Если база клиент-серверная, главный выигрыш даёт отдельный сервер СУБД: сервер приложений 1С и SQL на одной машине с терминальным доступом конкурируют за память.
Безопасность: чем опасен открытый порт 3389
Порт 3389, выставленный в интернет, находят сканерами за минуты. Дальше идёт подбор паролей — чаще всего по логинам Administrator, admin, user, buh. Достаточно одной слабой учётки, чтобы злоумышленник зашёл в сеанс, нашёл базу и зашифровал каталог вместе с резервными копиями на соседнем диске.
Не публикуйте RDP в интернет напрямую. Ниже — защита по убыванию эффективности.
Прячем порт за VPN или шлюзом
Лучший вариант — VPN (WireGuard, OpenVPN, IPsec на роутере) или роль «Шлюз удалённых рабочих столов», которая принимает подключения по HTTPS и пускает только авторизованных. Тогда снаружи виден только VPN-сервер или шлюз.
Ограничиваем адреса
Если VPN пока нет, разрешите входящие на 3389 только с известных адресов: офис, статический IP бухгалтера. Правило задаётся в межсетевом экране роутера или в брандмауэре Windows.
Усиливаем вход
- 🔐 Оставьте проверку подлинности на уровне сети (NLA) включённой — она требует учётные данные до создания сеанса.
- 🔐 Включите политику блокировки:
secpol.msc→ Политики учётных записей → Политика блокировки учётной записи. Например, 5 неудачных попыток — блокировка на 30 минут. - 🔐 Пароль — от 12 символов, без слов из словаря.
- 🔐 Переименуйте встроенную учётную запись администратора и отключите вход под ней по RDP.
- 🔐 Подключите двухфакторную аутентификацию, если есть решение под вашу инфраструктуру.
Что не защищает
Смена порта 3389 на другой — «безопасность через неизвестность». Сканер найдёт новый порт за те же минуты. Как дополнительный фильтр сойдёт, как единственный — нет.
Режем возможности внутри сеанса
- Отключите проброс дисков и буфера обмена там, где данные не должны уходить с сервера.
- Запретите пользователям запуск произвольных программ (политики или публикация только
1cv8c.exe). - Резервные копии храните вне доступных сеансу дисков: вторая копия должна быть недоступна даже администратору терминального сервера (облако, отдельный сервер, съёмный носитель вне сети).
Ошибки подключения и работы: что обычно ломается
Короткая шпаргалка по тому, что действительно встречается. Подробно разберите только свою.
Test-NetConnection адрес -Port 3389 в PowerShell), что служба удалённых рабочих столов запущена и что брандмауэр не блокирует правило.