Перейти к основному контенту

Установка рабочего стола и xRDP на Linux

Введение

Что такое среда рабочего стола (Desktop Environment) в Linux

Среда рабочего стола, или Desktop Environment (DE), — это не просто графическая оболочка, а полноценный графический интерфейс, предоставляющий пользователю единый и целостный набор приложений и инструментов для взаимодействия с операционной системой. Если ядро Linux управляет аппаратным обеспечением, а командная строка (CLI) позволяет отдавать текстовые команды, то DE обеспечивает интуитивно понятное взаимодействие с системой с помощью окон, значков, панелей и меню.

Прелесть Linux в том, что вы не привязаны к одному-единственному интерфейсу. Вы можете выбирать среду, которая лучше всего соответствует вашим потребностям, привычкам и мощности вашего оборудования. Вот некоторые из самых популярных DE:

  • GNOME: Является средой рабочего стола по умолчанию для многих дистрибутивов, включая Ubuntu. GNOME предлагает современный, минималистичный и целостный опыт работы с упором на эстетику и производительность. Он может показаться непривычным для тех, кто переходит с Windows, но его дизайн ориентирован на эффективное использование рабочего пространства.
  • KDE Plasma: Это, пожалуй, самая функциональная и настраиваемая среда в мире Linux. По умолчанию она очень напоминает привычный интерфейс Windows с панелью, меню "Пуск" и системным треем. При этом её внешний вид и поведение можно изменить до неузнаваемости, что делает её идеальным выбором для пользователей, которые любят настраивать всё под себя.
  • Cinnamon: Эта среда также придерживается классической метафоры рабочего стола с панелью внизу, меню и иконками. Cinnamon — это дефолтная оболочка для дистрибутива Linux Mint, и она славится своей стабильностью и дружелюбностью к новичкам.
  • Xfce: Это классический пример легковесной и производительной среды. Xfce не перегружена визуальными эффектами, но при этом предоставляет все необходимые функции для комфортной работы. Она отлично подходит для старых компьютеров или виртуальных машин с ограниченными ресурсами.
  • MATE и LXQt: MATE — это продолжение развития классической GNOME 2, сочетающее в себе традиционный подход и современные технологии. LXQt — это ультралегкая среда на базе Qt, которая потребляет минимум ресурсов и идеальна для очень слабого "железа".

Системные требования

Прежде чем устанавливать среду рабочего стола, важно оценить ресурсы вашего сервера. У разных DE совершенно разные "аппетиты". Вот приблизительная информация о потреблении оперативной памяти (RAM) при чистой загрузке:

Среда рабочего стола RAM (чистый старт) Рекомендации по CPU
LXQt / LXDE ~128 MB

266 MHz и выше

Xfce ~192 - 450 MB

300 MHz и выше

MATE ~224 - 540 MB

300 MHz и выше

Cinnamon ~630 MB

1 GHz и выше

KDE Plasma ~615 - 650 MB

1 GHz и выше

GNOME ~750 - 910 MB

400 MHz и выше (рекомендуется 1 GHz+)

Эти цифры являются ориентировочными. Финальное потребление ресурсов также будет зависеть от версии дистрибутива и запущенных приложений. Для комфортной работы рекомендуется выделять виртуальной машине не менее 1 ГБ ОЗУ, а для тяжелых сред, таких как GNOME и KDE Plasma, — 2 ГБ и более. Что касается места на диске, планируйте выделить не менее 5-10 ГБ для установки DE и основных приложений.

При выборе виртуального сервера для среды рабочего стола с xRDP рекомендуется выбирать мощные виртуальные сервера или тариф "КОНФИГУРАТОР", чтобы можно было изменить параметры сервера.

Что такое xRDP и зачем он нужен?

xRDP — это сервер с открытым исходным кодом, который реализует протокол удаленного рабочего стола Microsoft (Remote Desktop Protocol, RDP) для Unix-подобных операционных систем, включая Linux.

RDP — это стандартный протокол для удаленного подключения, который встроен в операционные системы Windows (программа "Подключение к удаленному рабочему столу"). xRDP позволяет Linux-серверу "понимать" этот протокол, благодаря чему вы можете подключаться к нему из Windows без установки дополнительного программного обеспечения. xRDP также работает и с клиентами для macOS и других Linux-систем.

Зачем это нужно на сервере? Чаще всего администраторы управляют Linux-серверами через командную строку (SSH), так как это эффективно и требует мало ресурсов. Однако бывают ситуации, когда необходим именно графический интерфейс:

  • Вы разрабатываете графические приложения.
  • Вам нужно запустить программу, у которой нет веб-интерфейса и которая требует графического окружения.
  • Вы используете сервер в качестве удаленного рабочего места и хотите получить к нему полноценный графический доступ.

Установка

Обновление репозиториев и пакетов

Вы можете установить одну из сред, выполнив соответствующую команду. Все примеры приведены для семейства дистрибутивов на основе Debian/Ubuntu, которые наиболее популярны.

Перед установкой любого графического окружения всегда рекомендуется обновить списки пакетов и саму систему:

sudo apt update
sudo apt upgrade -y

Примерный вывод команд будет следующим:

image.png

image.png

Установка различных сред рабочего стола

  • GNOME (полная версия, как в Ubuntu Desktop):
sudo apt install ubuntu-desktop -y

image.png

Для установки только базовой оболочки GNOME можно использовать sudo apt install gnome-shell.

  • KDE Plasma:
sudo apt install kde-plasma-desktop -y

image.png

Существуют также мета-пакеты kde-standard (стандартный набор) и kde-full (полный набор всех приложений KDE).

  • Xfce (рекомендуется для серверов):
sudo apt install xfce4 -y

image.png

Для более полного набора утилит и приложений Xfce можно установить xubuntu-desktop.

  • Cinnamon:
sudo apt install cinnamon-desktop-environment -y

image.png

  • MATE:
sudo apt install ubuntu-mate-core -y

    image.png

    Установка xRDP

    После того как среда рабочего стола установлена, можно приступать к установке и настройке xRDP. Мы будем использовать в качестве примера уже установленный Xfce, так как это отличный выбор для удаленной работы на сервере: он легкий, стабильный и отлично работает через RDP.

    Важное примечание: xRDP лучше всего работает с сессиями Xorg, а не с Wayland. Убедитесь, что ваша среда рабочего стола использует Xorg, или настройте её соответствующим образом.

    1. Установите пакет xrdp:
      • sudo apt install xrdp -y
      • image.png

    2. Добавьте пользователя xrdp в группу ssl-cert: Это необходимо для корректной работы SSL-сертификатов.
      • sudo adduser xrdp ssl-cert
      • image.png

    3. Запустите сервис xRDP и добавьте его в автозагрузку:
      • sudo systemctl enable --now xrdp
      • image.png

    4. Проверьте статус сервиса:
      • systemctl status xrdp
      • Вы должны увидеть статус active (running).
      • image.png

      • Если же вы увидите ошибки:
      • image.png

      • То можно попробовать перезапустить демон следующей командой:
      • systemctl restart xrdp
    5. Настройка файла startwm.sh (если необходимо): Иногда xRDP не может корректно запустить ваш DE. Чтобы это исправить, нужно указать xRDP, какую среду запускать. Для этого отредактируйте файл /etc/xrdp/startwm.sh:
      • sudo nano /etc/xrdp/startwm.sh
      • image.png

      • Найдите в файле строки, которые запускают startxfce4 или другие оконные менеджеры. Если их нет, перед последней строкой test -x /etc/X11/Xsession && exec /etc/X11/Xsession добавьте строку для запуска вашего DE. Например, для Xfce:
      • startxfce4
      • image.png

      • Для других сред:

        • GNOME: gnome-session

        • image.png

        • KDE Plasma: startkde

        • image.png

        • MATE: mate-session

        • image.png

        • Cinnamon: cinnamon-session

        • image.png

    6. Настройка сети, фаервол (если необходимо): Откройте порт 3389, который использует RDP.
      • sudo ufw allow 3389/tcp
      • Рекомендация по безопасности: Для усиления защиты настройте правило, разрешающее доступ к этому порту только с определенных IP-адресов (например, с вашего домашнего или офисного). Например, для доступа с IP-адреса 123.123.123.123:
      • sudo ufw allow from 123.123.123.123 to any port 3389
    7. Перезапустите xRDP для применения всех изменений:
      • sudo systemctl restart xrdp

    Подключение

    Как подключиться через RDP к Linux с помощью xRDP

    После настройки сервера вы можете подключиться к нему с любого устройства, поддерживающего RDP.

    1. Найдите IP-адрес вашего Linux-сервера. Вы можете сделать это на самом сервере с помощью команды:
      • ip a
      • Так же эту информацию можно посмотреть в личном кабинете в меню слева выберите раздел Товары/Услуги - Виртуальные серверы - затем выделите ваш сервер и в столбце IP-адрес его уведите либо можно нажать сверху кнопку IP-адреса, если у Вас на услуге их несколько.
    2. На клиентском компьютере запустите программу для подключения к удаленному рабочему столу.
      • Windows: Откройте приложение "Подключение к удаленному рабочему столу" (mstsc.exe). Нажмите Win + R, введите mstsc и нажмите Enter.

        • Окно Remote Desktop Connection для примера:


          • image.png

          • Принимаем сертификат:
          • image.png

      • macOS: Установите приложение "Microsoft Remote Desktop" из Mac App Store.

      • Linux: Используйте клиенты, такие как Remmina или Vinagre.

        • Авторизация в  Remmina для примера:
        • image.png

        • Подтверждение сертификата:
        • image.png

    3. Введите IP-адрес вашего сервера в поле "Компьютер". 
      • username: Ваше имя пользователя на Linux-сервере.

      • password: Пароль этого пользователя.

      • module: Обычно можно оставить значение по умолчанию, но при необходимости вы можете указать конкретную среду (например, Xorg).

    Реквизиты можно посмотреть по следующей инструкции: Где можно посмотреть реквизиты доступа к серверу

    После успешной аутентификации вы увидите графический рабочий стол вашего Linux-сервера.

    Особенности подключения из Windows

    Хотя RDP — это стандартный протокол, при подключении из Windows к Linux через xRDP есть несколько нюансов:

    • Проблема с "синим/черным экраном": Это классическая проблема, когда после ввода логина и пароля вы видите только синий или черный экран. Это происходит, когда xRDP не может запустить среду рабочего стола. Решение: Настройка файла startwm.sh, описанная в разделе выше — это первый шаг. Второй шаг — убедиться, что ваш DE использует сессию Xorg, а не Wayland. В Ubuntu с GNOME на экране входа в систему нужно выбрать пункт "GNOME on Xorg" (обычно доступен по нажатию на значок шестеренки).
    • Проблема с сетью: xRDP по умолчанию может слушать только IPv6-адреса, что может вызвать проблемы с подключением из внешней сети. Проверьте конфигурационный файл /etc/xrdp/xrdp.ini, убедившись, что параметр address настроен на прослушивание всех интерфейсов (address=0.0.0.0).
    • Перенаправление дисков и буфера обмена: xRDP поддерживает эти функции, но они работают не всегда стабильно, в отличие от подключения между двумя Windows-машинами.
    • Несколько сессий: xRDP создает отдельную сессию для каждого подключения. Если вы отключитесь, программа продолжит работать на сервере. Вы можете подключиться к существующей сессии или создать новую.

    Заключение

    Зачем нужна среда рабочего стола на сервере?

    Вы можете задаться вопросом: зачем устанавливать графический интерфейс на сервер, если он часто используется без монитора? Это оправдано в ряде сценариев:

    • Удаленная работа и обучение: Вы можете создать на выделенном сервере (VPS) полноценное рабочее место с Linux, доступное из любой точки мира, и работать с ним со своего слабого ноутбука или даже планшета. Это особенно актуально для разработчиков, которым нужна мощная машина для сборки проектов.
    • Запуск графических приложений: Многие инструменты для автоматизации, тестирования (например, Selenium) или работы с графикой требуют наличия графического окружения.
    • Удобство администрирования: Для некоторых задач, таких как настройка сложных сетевых конфигураций через графические утилиты, наличие DE может быть полезным.

    Однако важно помнить, что установка графического интерфейса увеличивает потребление ресурсов сервера и расширяет поверхность для атак. Для production-серверов, где важна каждая частица ресурсов и безопасность, использование графического окружения не рекомендуется. Управление через командную строку (SSH) остается основным и наиболее надежным методом.

    В итоге, установка DE и xRDP — это мощный инструмент, который может быть очень полезен в определенных ситуациях.