Если RDP-клиент не открывает рабочий стол Astra Linux, не переустанавливайте пакеты и не меняйте правила сети наугад. Сначала узнайте, какой сервер принимает удалённые сеансы: xrdp или fly-dm-rdp. Затем последовательно проверьте TCP 3389, журнал службы, запуск X-сервера и права учётной записи.
Открытый порт подтверждает только доступность сети. По данным RuDesktop, xrdp слушает TCP 3389, а xrdp-sesman управляет сеансами через TCP 3350. Клиент может связаться с сервером, но не получить рабочий стол из-за ошибки на следующем этапе.
Проверяйте систему в таком порядке:
- Уточните, какой RDP-сервер установлен.
- Сверьте ожидаемый тип сеанса с возможностями сервера.
- Проверьте доступ к TCP 3389.
- Найдите попытку подключения в журнале.
- Проверьте запуск X-сервера.
- Если отказ получает один пользователь, проверьте его права.
Так вы сразу отделите сетевой отказ от ошибки графического сеанса. Переустановка xrdp и беспорядочное открытие портов только сотрут часть диагностических следов.
Сначала выясните, какой RDP-сервер настроен
Astra Linux принимает RDP-подключения через xrdp или fly-dm-rdp. У них разные сценарии работы, хотя пользователь вводит один и тот же адрес сервера.
xrdp создаёт отдельный сеанс. Подключиться через него к обычному рабочему столу, уже открытому на мониторе, не получится.
fly-dm-rdp добавляет тип сеанса «Локальная RDP». Он подключает удалённого пользователя к текущему экранному сеансу и не завершает его. RuDesktop со ссылкой на документацию Astra Linux называет этот вариант рекомендованным.
Посмотрите, какие пакеты установлены:
dpkg -l | grep -E 'xrdp|fly-dm-rdp'
Результат подскажет, какую ветку диагностики выбрать. Наличие пакета ещё не означает, что служба запущена и слушает порт.
| Что ожидает пользователь | Какой сервер настроен | Штатное поведение | Что проверять дальше |
|---|---|---|---|
| Новый удалённый рабочий стол | xrdp | Сервер создаёт отдельный RDP-сеанс | Службы xrdp и xrdp-sesman, порт 3389, журналы |
| Доступ к рабочему столу на мониторе | fly-dm-rdp | Выбирается сеанс «Локальная RDP» | Наличие нужного типа сеанса и состояние службы |
| Одновременный локальный и удалённый вход одного пользователя | xrdp | Такой вход по умолчанию ограничен | Завершить прежний сеанс либо проверить политику входа |
Сначала сопоставьте ожидание пользователя с типом сеанса. Иначе нормальную работу xrdp легко принять за поломку.
Состояние служб проверьте двумя командами:
systemctl status xrdp
systemctl status xrdp-sesman
Ответ о том, что модуль не найден, возвращает вас к предыдущему шагу: вероятно, на сервере настроен другой способ доступа. Не устанавливайте второй RDP-сервер, пока не разберётесь с действующей схемой.
Проверьте, доходит ли соединение до TCP 3389
При работе через xrdp клиент подключается к TCP 3389. Сначала посмотрите правила ufw:
sudo ufw status
Найдите строку для 3389/tcp. Если разрешающего правила нет, это ещё не доказывает блокировку. Сервер может использовать другой межсетевой экран, поэтому сначала выясните, какой инструмент управляет фильтрацией трафика.
Затем проверьте доступность порта с клиентского компьютера штатным сетевым инструментом его операционной системы. Результат ответит только на один вопрос: устанавливается ли TCP-соединение с сервером.
Если запрос приходит из разрешённой сети и его блокирует именно ufw, добавьте правило:
sudo ufw allow 3389/tcp
Не вводите команду «на всякий случай». Сначала подтвердите адрес назначения, маршрут и причину блокировки.
Для iptables правило выглядит так:
sudo iptables -A INPUT -p tcp --dport 3389 -j ACCEPT
Timeweb предупреждает: без iptables-persistent это правило исчезнет после перезапуска сервера. Такая команда подходит для проверки гипотезы, но не заменяет постоянную настройку доступа.
TCP 3350 наружу открывать не нужно. RuDesktop описывает этот порт как часть внутреннего взаимодействия служб xrdp. Публикация 3350 расширит поверхность атаки, а ошибку запуска рабочего стола не устранит.
Когда соединение заработает, проверьте правила внешнего доступа к серверу 1С. RDP должен принимать запросы только из сетей, которым нужен удалённый вход.
Если порт доступен, переходите к журналам
Доступный TCP 3389 подтверждает работу сетевого маршрута. Дальше проверяйте xrdp, менеджер сеансов и X-сервер.
Выведите записи службы за последний час:
sudo journalctl -u xrdp --since "1 hour ago"
Чтобы увидеть свежие сообщения вверху, добавьте -r:
sudo journalctl -u xrdp --since "1 hour ago" -r
Руководство Digital Generation по journalctl подтверждает оба фильтра: по службе и по времени. Некоторые журналы открываются только с правами администратора.
Теперь запустите наблюдение за новыми событиями:
sudo journalctl -u xrdp -f
Не закрывая терминал, повторите вход с клиентского компьютера. Новая запись означает, что запрос дошёл до службы. Возвращаться к маршрутизации и снова открывать 3389 уже не надо.
Если свежих записей нет, проблема остаётся на сетевом участке. Проверьте адрес сервера, маршрут, активный межсетевой экран и наличие слушающего сокета.
Список слушающих TCP-портов выведет команда:
sudo ss -lnt
Ищите TCP 3389. Если межсетевой экран пропускает запрос, а сокета нет, причина находится на самом сервере. Служба остановлена либо работает с другой конфигурацией.
Соединение принято, но X-сервер не запустился
База знаний Astra Linux Special Edition 1.7 описывает отдельный сценарий: xrdp принимает подключение, но не создаёт графический сеанс.
При таком отказе в /var/log/syslog встречается строка:
xrdp: [INFO] xrdp_wm_log_msg: Can't create session for user USER - X server could not be started
Она сразу отсекает сетевую ветку. Порт и служба приняли запрос, а ошибка появилась при запуске X-сервера для пользователя.
Та же карточка базы знаний Astra Linux приводит ещё две записи журнала xrdp-sesman:
[ERROR] waitforx: Unable to find any RandR outputs
[ERROR] An error occurred waiting for the Xserver
Эти сообщения описаны для Astra Linux Special Edition 1.7. Не переносите их расшифровку на другую версию, пока не сверитесь с её документацией.
База знаний Astra Linux связывает такой отказ с несовпадением версий xrdp и xorgxrdp. Посмотрите установленные пакеты:
dpkg -l | grep -E 'xrdp|xorgxrdp'
Не обновляйте один пакет отдельно, пока не проверите версии в подключённых репозиториях. Astra Linux 1.6, 1.7 и 1.8 используют разные наборы библиотек. Пакет от соседней версии способен добавить ещё одну несовместимость.
Открытого справочника сообщений для всех версий Astra Linux нет. Полная база знаний производителя доступна после входа в личный или партнёрский кабинет. По приведённым строкам можно определить участок отказа, но нельзя составить достоверную таблицу всех возможных причин.
Если отказ получает только один пользователь
Если другие учётные записи входят по RDP, сеть и служба уже работают. Не тратьте время на порт 3389 — проверяйте допуск конкретного пользователя.
RuDesktop указывает два параметра в /etc/xrdp/sesman.ini:
TerminalServerUsers=
AlwaysGroupCheck=
TerminalServerUsers связывает удалённый вход с группой пользователей. AlwaysGroupCheck задаёт обязательную проверку членства в этой группе.
Сначала прочитайте параметры, не меняя файл:
sudo grep -E '^(TerminalServerUsers|AlwaysGroupCheck)' /etc/xrdp/sesman.ini
Затем выведите группы нужной учётной записи:
id ИМЯ_ПОЛЬЗОВАТЕЛЯ
Сопоставьте вывод с политикой сервера. Не включайте пользователя в административную группу ради проверки: такой ход выдаст ему больше прав, чем требуется для RDP-сеанса.
На вход в Astra Linux Special Edition влияют и мандатные ограничения. По материалу RuDesktop, сетевые пакеты передают классификационную метку. iptables поддерживает модуль astralabel, а ufw — параметры уровня и категории доступа.
Единого значения уровня или категории нет — его определяет политика вашей системы. Если обычная учётная запись входит, а пользователь с другим уровнем доступа получает отказ, сравните правила с принятой моделью мандатного контроля.
| Признак | Участок отказа | Что проверить | Следующее действие |
|---|---|---|---|
| Клиент не соединяется с TCP 3389 | Сеть или межсетевой экран | Адрес, маршрут, ufw status, слушающий сокет | Исправить найденное правило или запустить службу |
| TCP 3389 доступен, но нового сеанса нет | xrdp или xrdp-sesman | systemctl status, journalctl -u xrdp | Исправить запуск службы по записи журнала |
| Журнал сообщает, что X-сервер не запущен | X-сервер и пакеты RDP | Версии xrdp и xorgxrdp | Привести пакеты к совместимому набору для версии Astra Linux |
| Отказ получает одна учётная запись | Права пользователя | TerminalServerUsers, AlwaysGroupCheck, группы и мандатную политику | Исправить правило допуска, не расширяя лишние права |
| Пользователь ждёт доступ к экрану на мониторе | Выбран неверный тип сеанса | xrdp или fly-dm-rdp | Использовать «Локальная RDP» либо отдельный сеанс |
Выбирайте следующую проверку по наблюдаемому признаку. Полная переустановка xrdp сотрёт диагностические следы, но не изменит тип сеанса и не исправит политику допуска.
Не смешивайте отказ RDP с отказом 1С
Сначала получите рабочий стол Astra Linux. Лишь после этого переходите к тонкому клиенту, кластеру и СУБД.
Если рабочий стол открылся, но 1С зависла на заставке или не показывает базу, пройдите проверку этапов запуска 1С. RDP уже выполнил свою задачу, а сбой находится внутри контура 1С.
Если 1С запускается, но окна и списки реагируют с задержкой, порты здесь ни при чём. Отделите задержку передачи изображения от медленной работы базы с помощью настройки передачи графики в RDP-сеансе 1С.
Проверка после восстановления подключения
Не передавайте сервер пользователям сразу после первого успешного входа. Повторите проверку по тому же маршруту:
- установленный сервер соответствует нужному типу сеанса;
- TCP 3389 доступен только из разрешённых сетей;
- новая попытка входа появляется в журнале
xrdp; - X-сервер создаёт рабочий стол без ошибок ожидания;
- обычная учётная запись проходит групповые и мандатные ограничения.
Ориентир простой. Если клиент не достигает TCP 3389, проверяйте сеть, межсетевой экран и состояние службы. Если журнал фиксирует попытку входа, сетевой этап уже пройден — переходите к xrdp-sesman, X-серверу и правам пользователя.
Для Astra Linux Special Edition в контуре с требованиями ФСТЭК выбор RDP-сервера нужно согласовать отдельно. Servermon пишет, что установка xrdp выводит Special Edition из сертифицированной конфигурации. Открытого документа производителя среди доступных материалов нет, поэтому решение сверяйте с документацией и поддержкой Astra Linux.