Главная страница » Ubuntu 18.04 — RDP Server за 5 минут

Ubuntu 18.04 — RDP Server за 5 минут

by Belfigor
8959 views

Давеча я решил обновить свой сервер терминалов, который был настроен еще в незапамятные времена и работал на xubuntu 14. Этот сервер был предназначен исключительно для бухгалтеров, чтобы они могли подключиться на него со своих тонких клиентов и творить свои грязные бухгалтерские дела в линуксовой 1ске. Так что требования к серверу были минимальные. Возможность работать в 1ске, либраофис, браузер и принтера. Поэтому само собой так получилось, что следующая вещь в моих сетях, которую я переведу на Ubuntu 18.04 — RDP Server.

Решив сперва поискать что есть в современных реалиях в сфере настройки рдп серверов, я обнаружил вот этот прекрасный сайт: Griffon’s IT Library. Буквально недавно, там появилось обновление скрипта для автоматической установки xRDP сервера. Собственно, то что мы сегодня развернем на Ubuntu 18.04 — RDP Server.

Исходные данные

  • Скрипт запускается на Ubuntu 18.04.1 x64 desktop
  • После установки, система обновлена командой sudo apt update && sudo apt dist-upgrade
  • Система развернута на хосте ESXi
  • Системе выделено 16 ядер цпу, 64GB оперативной памяти, 128 Gb HDD
  • Имя сервера: ag-ts
  • Все манипуляции после установки openssh сервера производятся через SSH
  1. Устанавливаем систему

  2. Задаем имя сервера

    Нужно только на тот случай если вы разворачивали машину например из какого-то типового клона или образа

  3. Устанавливаем статический IP адрес

    Так же в случае если мы разворачивали машину из клона или образа и не имели возможности указать нужные параметры при установке

  4. Устанавливаем OpenSSH сервер

    Этот пункт необязателен и нужен только если вы будете работать с сервером удаленно.
    Открываем терминал и вводим команду sudo apt install openssh-server

    Установка openssh-server

    sudo apt install openssh-server

    Дальше в моём случае я через ssh подключаюсь к серверу и произвожу все действия с другого компьютера. По желанию можно продолжить работать с терминалом открытым локально. Результат будет тот же.

  5. Скачиваем скрипт для установки xRDP

    Переходим в свою домашнюю директорию командой cd

    скачиваем архив со скриптом

    wget http://adminguide.ru/wp-content/uploads/2018/11/install-xrdp-2.2.zip

     

     

    извлекаем скрипт из архива

    unzip ./install-xrdp-2.2.zip

     

     

    Делаем скрипт исполняемым

    chmod +x ./Install-xrdp-2.2.sh

     

     

  6.  Варианты установки xRDP

    Парни из Griffon’s IT Library написавшие скрипт, предусмотрели несколько параметров установки:

    1. ./Install-xrdp-2.2.sh

      Используйте эту команду чтобы установить xrdp версии 0.9.8. Без дополнительных плюшек.

    2. ./Install-xrdp-2.2.sh -g yes

      Эта команда запустит установку xrdp 0.9.8 и установит фикс GDM Lock screen

    3. ./Install-xrdp-2.2.sh -s yes

      Параметр -s, помимо установки xrdp 0.9.8 добавит возможность перенаправления звука из удаленной сессии на удаленный клиент

    4. ./Install-xrdp-2.2.sh -s yes -g yes

      Эта команда установит xrdp, добавит фикс и возможность перенаправления звука

       

  7. Устанавливаем xRDP

    1. Для установки мы воспользуемся командой 6.4
      ./Install-xrdp-2.2.sh -s yes -g yes

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

    2. Отсутствие папки ~/Downloads:
      Если у вас не английская версия Ubuntu 18, то при установке RDP Server из скрипта, у вас возникнет ошибка показанная на скриншоте выше. В скрипте жестко прописан путь к папке ~/Downloads, при этом в её отсутствии скрипт загружает необходимые файлы прямо в корень.Чтобы не лезть в сам скрипт, просто создадим папку Downloads в домашнем каталоге пользователя, от которого запускаем скрипт

      mkdir ~/Downloads

       

    3. Отсутствие xrdp-pulseaudio-installerПовторно запустим установку
      ./Install-xrdp-2.2.sh -s yes -g yes

      Установка завершится сообщением об успехе, но рано радоваться. Нужно присмотреться к логу. Возможно вы увидите там строку

      ./Install-xrdp-2.2.sh: строка 381: cd: /usr/src/xrdp-pulseaudio-installer: Нет такого файла или каталога

      Быстрый просмотр скрипта, выявит что в строке 359, находится команда установки xrdp-pulseaudio-installer, но почему-то она не отрабатывает.
      Запускаем установку xrdp-pulseaudio-installer вручную

      sudo apt-get install xrdp-pulseaudio-installer -y
    4. Завершение установки
      Отработав все встретившиеся на русской версии убунты ошибки, запускаем установку скрипта

      ./Install-xrdp-2.2.sh -s yes -g yes

      По окончанию установки наблюдаем отчет об успехе
      Ubuntu 18.04 - RDP Server за 5 минут - Окончание установки

  8. Проверяем Ubuntu 18.04 — RDP Server

    1. Создаем тестового пользователя
      Логин у нас будет adminguide, пароль 123

      AdminGuide.Ru@ag-ts:~$ sudo adduser adminguide
      Добавляется пользователь «adminguide» ...
      Добавляется новая группа «adminguide» (1002) ...
      Добавляется новый пользователь «adminguide» (1002) в группу «adminguide» ...
      Создаётся домашний каталог «/home/adminguide» ...
      Копирование файлов из «/etc/skel» ...
      Введите новый пароль UNIX:
      Повторите ввод нового пароля UNIX:
      passwd: пароль успешно обновлён
      Изменение информации о пользователе adminguide
      Введите новое значение или нажмите ENTER для выбора значения по умолчанию
              Полное имя []: AdminGuide.Ru
              Номер комнаты []: 1
              Рабочий телефон []: 2
              Домашний телефон []: 3
              Другое []: 4
      Данная информация корректна? [Y/n]
      AdminGuide.Ru@ag-ts:~$
      

       

    2. Подключаемся к RDP Серверу
      Ubuntu 18.04 - RDP Server за 5 минут - Подключение по RDP - Шаг 2Ubuntu 18.04 - RDP Server за 5 минут - Подключение по RDP - Шаг 3
    3. Попадаем на логинскрин xrdp
      Ubuntu 18.04 - RDP Server за 5 минут - Подключение по RDP - Шаг 4

      Логинскрин xrdp

      Пока активен логинскрин, переключить раскладку не удастся. Поэтому на этапе 8.2 перед нажатием «Подключить» у вас уже должена быть выбрана нужная раскладка

    4. Наблюдаем успешное подключение
      Ubuntu 18.04 - RDP Server за 5 минут - Подключение по RDP - Шаг 5
  9. Проверяем проброс дисков
    1. Открываем Nautilus и смотрим есть ли пункт thinclient_drives
    2. Открываем thinclient_drives и смотрим проброшены ли туда наши диски
      Ubuntu 18.04 - RDP Server за 5 минут - Подключение по RDP - Шаг 5-1
    3. Если диски не пробросились, то вероятнее всего вам нужно сделать следующие настройки:
      Ubuntu 18.04 - RDP Server за 5 минут - Подключение по RDP - Шаг 6

      Оставляем галочку на «Буфер обмена»

      Ubuntu 18.04 - RDP Server за 5 минут - Подключение по RDP - Шаг 7

      Снимаем все галочки кроме «Диски»

       

  10. Проверяем звук
    1. Будучи подключенными к серверу терминалов, надо зайти в настройку звуковой карты. Там должно быть устройство xrdp sink
      Ubuntu 18.04 - RDP Server за 5 минут - Подключение по RDP - Шаг 8
    2. Если он есть, значит звук с вашего удаленного сеанса на локальную машину должен передаваться. Можно открыть например ютуб чтобы потестить
  11. Устанавливаем 1С
  12. Устанавливаем принтеры
  13. Радуемся

Цель выполнена, мы имеем Ubuntu 18.04 — RDP Server. Можно запускать туда бухгалтеров.

 

 

Архив со скриптом: install-xrdp-2.2

Text.ru - 100.00%

You may also like

52 комментария

Artem 06.02.2019 - 16:08

Почему-то бирюзовый экран без каких-либо значков при входе по rdp

Reply
Belfigor 08.02.2019 - 10:41

По окончании работы скрипта установки были ли какие-либо ошибки из неописанных в посте?

Reply
Odmin 19.02.2019 - 13:15

Хороший скрипт, ловко превращает убунту в кирпич =))))

Reply
Belfigor 28.02.2019 - 13:43

Применяли скрипт на чистой установке?

Reply
Михаил 28.02.2019 - 10:10

Установил xRDP с помощью вашего скрипта на xUbuntu 18.04. Скрипт отработал без ошибок. Подключения по rdp работают, но окно локального входа в систему перестало реагировать на любые действия. В чем может быть причина?

Reply
Belfigor 28.02.2019 - 13:48

Увы, это ограничение xRDP. Один и тот же аккаунт не может быть использован для удаленного и локального входа одновременно. Если пользователь user1 авторизован локально, то этот же пользователь user1 не сможет авторизоваться по rdp до тех пор пока локальный пользователь user1 не завершит свою сессию. То же работает в обратную сторону. user1 не сможет авторизоваться локально до тех пор пока удаленная сессия user1 не будет завершена. xRDP не прерывает в случае повторного логина сессию пользователя как это делает Windows.

Reply
Михаил 28.02.2019 - 17:40

Дело в том, что локально в систему нельзя войти даже сразу после перезагрузки, когда удаленных сессий нет.

Reply
Belfigor 01.03.2019 - 09:18

После перезагрузки не пускает локально абсолютно под любым пользователем?
Что пишет syslog при попытке авторизоваться?
Если после перезагрузки зайти удаленно под user_name_2 и вбить команду ps -u user_name_1 | grep xrdp , при том что user_name_1 не пытался авторизовываться в системе после перезагрузки, что оно покажет?

Reply
Михаил 01.03.2019 - 16:59

Проблема не в том, что локально не пускает, а в том, что экран входа не реагирует ни на щелчки мыши, ни на клавиатуру. В логе, соответственно, нет попыток входа. Команда ps -u user_name_1 | grep xrdp не показывает ничего.

Belfigor 01.03.2019 - 21:07

Инсталяция на физический или виртуальный сервер? При переустановке результат сохраняется?

Reply
Михаил 02.03.2019 - 07:55

Виртуальная машина на VMWare. При переустановке результат сохраняется.
Еще несколько раз при перезагрузки появлялась ошибка: light-locker crashed with signal 5

Belfigor 02.03.2019 - 08:24

VMWare Workstation или ESXi? Какой процессор в основе гипервизора? AMD или Intel?

Reply
Михаил 02.03.2019 - 11:32

Workstation, Intel

Дмитрий 02.03.2019 - 17:07

Была такая ерунда с LXDE, сменил на ubuntu-gnome-desktop всё норм стало.

Reply
Belfigor 02.03.2019 - 20:04

Я прям даже затрудняюсь ответить, я с таким не сталкивался никогда ни на одной инсталяции. Как вариант я могу попробовать запустить клон вашей инсталяции у себя, если скинете мне ссылку и посмотреть что там и не исчезнет ли проблема у меня. И если исчезнет тогда мы определим что она на физическом уровне.

Reply
Михаил 11.03.2019 - 11:15

В общем, проблем решил кардинально, использовал Ubuntu Server вместо xUbuntu. Спасибо за помощь!

Дмитрий 02.03.2019 - 17:06

Спасибо за статью, всё работает, Но подскажите, как можно автоматизировать настройку только что созданных пользователей. а то каждого пользователя надо вручную настраивать при подключении к терминальному серверу

Reply
Belfigor 02.03.2019 - 20:15

Готовых решений нету, встречал поиск решения на различных форумах. Как правило все сводилось к тому что нужно самостоятельно писать свой скрипт. Собственно я стараюсь не допускать самой необходимости пользователю что-то настраивать. Есть меню с программами, там есть ярлычок 1С и ярлычки с либраофисом + браузер. Бухгалтерам этого хватает за глаза. Так что с этим вопросом не помогу 🙁

Reply
Anomaly 11.03.2019 - 22:22

Добрый день! Воспользовался данной инструкцией для установки удаленного доступа на свой домашний сервер. Установка прошла успешно без ошибок, но когда пытаешься залогинится на рабочий стол. Выкидывает. Переустановка не помогает.

Reply
Belfigor 13.03.2019 - 18:13

Установка производилась на уже функционирующий сервер или домашний сервер разворачивался из чистой установки Ubuntu 18.04?

Reply
Mantykhor 03.04.2019 - 11:59

Добрый день.
Спасибо за статью. Как и у предыдущего пользователя при xUbuntu не работает локальный вход, машина на Hyper-v, но это для меня не критично.
Но вот не могу настроить сеть при удаленном подключении. при наведении курсора на заначек настройки сети всплывает сообщение: «нет разрешения polkit для выполнения действия» скорей всего из-за этого не могу подключится к OpenVPN серверу. Подскажите что поправить в данных политиках?

Reply
Belfigor 03.04.2019 - 13:58

Честно сказать вообще не знаю. Я ни разу не настраивал линуксовые компьютеры через что-то кроме SSH. У меня на них сидят бухгалтера, а админы коннектятся к серверам по SSH. Так что каких-то особенных настроек ни с терминалами ни с обычными линуксовыми машинами я не произвожу. , а все межсетевые взаимодействия настраиваются на уровне всяких программных и аппаратных шлюзов.

Reply
Андрей 18.04.2019 - 16:21

Установил. Долго шёл процесс. Работает хорошо. Но по окончании сессии сервер к локальному интерфейсу не возвратился — чёрный экран и всё. После перезагрузки в аккаунт не войти — не работают ни мышь, ни клавиатура. В удалённом режиме всё ОК. Какая прелесть… Блин

Reply
Дмитрий 22.04.2019 - 18:38

На странице Griffon’s IT Library ссылка на которую есть почти в самом начале, подобное обсуждалось и рекомендовалось переустановить пакеты:
sudo apt-get -y install xserver-xorg-input-all
В моём случае это помогло.

Reply
timofeyp 07.06.2019 - 08:51

Система превратилась в кирпич. После перезагрузки курсор висит на одном месте, не реагирует на движения мыши и клавиатуры.

Reply
Belfigor 07.06.2019 - 09:17

Система была использована чистая Ubuntu 18.04 или ставилось на уже работавшую ранее систему?

Reply
Артем 14.06.2019 - 12:56

Только что устанавливал все как в инструкции и столкнулся с такой же проблемой. На локальной машине графический интерфейс а точнее мыш и клава, полностью не работают.

Выполнение вот этой команды полностью решило проблему:

sudo apt-get -y install xserver-xorg-input-all

Reply
Алексей 19.07.2019 - 13:47

Есть ли возможность работать с таким терминальным сервером из widows xp?

Reply
Belfigor 24.07.2019 - 15:26

В теории да, но я не тестировал.

Reply
Evgen 27.07.2019 - 10:41

Добрый! Ошибка по паке Downloads выходит. Но при попытке выполнить команду mkdir ~/Downloads — говорит, что указанная папка существует. Ошибка не уходит. Есть мысли? Система Ubuntu 18.04.2

Reply
Belfigor 27.07.2019 - 11:04

А можно сам код ошибки посмотреть? 🙂

Reply
Evgen 27.07.2019 - 11:44

Не могу понять. ответ уходит?

Reply
Evgen 27.07.2019 - 11:45

./Install-xrdp-2.2.sh: строка 81: git: команда не найдена

!———————————————!
! Preparing download xorgxrdp package !
!———————————————!

./Install-xrdp-2.2.sh: строка 87: git: команда не найдена

!———————————————!
! Compile xRDP packages …….Proceeding. !
!———————————————!

./Install-xrdp-2.2.sh: строка 106: cd: /home/lee/Downloads/xrdp: Нет такого файла или каталога
sudo: ./bootstrap: команда не найдена
sudo: ./configure: команда не найдена
sudo: make: команда не найдена

!———————————————!
! Error while Executing make !
! The Script is exiting…. !
!———————————————!
lee@ub18-VirtualBox:~$ mkdir ~/Downloads
mkdir: невозможно создать каталог «/home/lee/Downloads»: Файл существует
lee@ub18-VirtualBox:~$

Reply
Belfigor 28.07.2019 - 12:06

А если перейти в папку Downloads и там создать папку xrdp?

Reply
Evgen 28.07.2019 - 14:44

спс! сработало. сейчас с другими ошибками попробую поборотся )

Доброжелатель 04.08.2019 - 16:57

Поставил скрипт, отвалились 2 дисплея и все жопа

Reply
Belfigor 04.08.2019 - 17:53

Какие-нибудь логи или ошибки выводит?

Reply
dmin 19.08.2019 - 09:48

Не успел прочесть комменты. Теперь у меня тоже кирпич! почитал коменты исправил но нервов потрепал знатно

Reply
Belfigor 20.08.2019 - 06:33

В каком именно моменте был кирпич и какой комментарий помог его починить? Я добавлю этот пункт в статью.

Reply
SA 30.09.2019 - 22:00

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

Reply
kinokrut 02.09.2019 - 21:18

sudo apt-get -y install xserver-xorg-input-all

Reply
Pavel 30.09.2019 - 10:55

Всё сделал по инструкции. Проблема с зависанием мышки и действий с клавиатуры присутствует.
Подскажите, как ввести эту команду, если нет возможности зайти с компа, а по RDP не хватает прав?

testmon@mon-MS:~$ sudo apt-get -y install xserver-xorg-input-all
[sudo] пароль для testmon:
testmon отсутствует в файле sudoers. Данное действие будет занесено в журнал.
testmon@mon-MS:~$

Reply
Belfigor 01.10.2019 - 07:31

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

Reply
UrbanVampire 01.10.2019 - 20:52

Хороший мануал, простой, понятный, без излишеств.
Сегодня устанавливал связку Ubuntu SERVER 18.04 LTS + LXDE + xRDP на VMWare ESXi 5.5.
Отличия от мануала:
Предварительно при установке самого 18.04 server на вопрос об установке OpenSSH сервера отвечаем утвердительно (кончено, можно установить и позже, но зачем нам лишний геморрой?).
Дальнейшая настройка производилась по SSH.
Совершенно внезапно в убунту-сервере отсутствует unzip. Лечится
sudo apt-get install unzip
Далее устанавливаем DE по вкусу. Лично я ставлю LXDE (нравится она мне, да и на винду похожа, меньше вопросов у пользователей, особенно тех кто ещё помнит XP-шку).
sudo apt-get install lxde-core
Обращаю внимание что эта команда установит именно ЯДРО LXDE безо всяких дополнительных программ. В смысле даже firefox нужно будет устанавливать ручками. Если вам такого не надо то используйте apt-get install lxde (впрочем, с таким же успехом можно поставить MATE, Gnome, Untiy или что угодно ещё).
Дальше действуем по приведённой уважаемым автором инструкции:
mkdir ~/Downloads
sudo apt-get install xrdp-pulseaudio-installer -y
wget http://adminguide.ru/wp-content/uploads/2018/11/install-xrdp-2.2.zip
unzip ./install-xrdp-2.2.zip
chmod +x ./Install-xrdp-2.2.sh
./Install-xrdp-2.2.sh
sudo reboot

Замечу в скобках что при попытке установки xrdp из репозитория я сталкивался с описанным некоторыми из предыдущих ораторов «окирпичиванием» системы с основной консоли (в моем случае — консоли ESXi). Однако, если действовать по инструкции, всё заканчивается благополучно.
Совершенно внезапным побочным эффектом оказалось то, что некоторые старые системы Windows отказались подключаться к установленному серверу по RDP с ошибкой «Произошла ошибка проверки подлинности. Указанная функция не поддерживается».
Не буду рассусоливать, суть в том что свежая реализация xrdp закрывает некоторые уязвимости, что влияет на совместимость со старыми непропатчеными форточками. Для решения проблемы требуется перейти по этой ссылке:
https://portal.msrc.microsoft.com/en-us/security-guidance/advisory/CVE-2018-0886
и скачать обновление безопасности для вашей системы.
Кстати, поскольку Windows XP официально больше не поддерживается, то ответ на заданный выше вопрос о том, сможет ли такой терминальный сервер работать с XP, скорее всего будет отрицательным. А вот версия xrdp из репозитория убунты скорее всего с ХРюшей работать будет, хотя и не поручусь.

Еще раз спасибо за отличный мануал, лично мне он сэкономил кучу времени и нервов. Надеюсь мой небольшой вклад поможет как автору так и читателям.
Лично с автором с удовольствием пообщался бы на тему установки 1C под получившуюся систему, есть несколько вопросов, но это не для папблика по ряду причин.

Reply
Dmitry 05.11.2019 - 21:40

хау)
Сделал по инструкции, прошло все гладко. После подключения по RDP из Windows 10 с установленной галкой для дисков в Ubuntu не показывает диски, папка thinclient_drives пуста.
Как-нибудь можно это поправить?

Reply
Dmitry 05.11.2019 - 22:05

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

Reply
Евгений 16.11.2019 - 21:55

Не могу начать установку скрипта, выдает ошибку что не существует папки Downloads
Версия Ubuntu английская, папка там есть.
Система Esxi

Reply
Belfigor 17.11.2019 - 07:24

Можно скриншот ошибки?

Reply
Евгений 18.11.2019 - 13:04

Не пойму как тут прикрепить скриншот…
—-
Ну да ладно, проблема решилась, но очень странно, описываю:
По инструкции выше, попробовал установить rdp из скрипта, как написал в комменте скрипт не запускался, с ошибкой что нет папки Downloads. — Отчаившись найти решение я решил установить сам xrdp на той же системе Ubunta desktop 18
apt-get -y install xrdp — установил сервис рдп
apt-get -y install xfce4 — установил окружение xfce
echo xfce4-session >~/.xsession — установил для рдп сервера использовать xfce окружение
nano /etc/xrdp/startwm.sh — отредактировал данный файл согласно инструкции

В итоге установленный сервер заработал, давал окно логина в xfce среду при подключении с клиента(windows10) но не подключался,…оставил этот вопрос на потом.
———
Сегодня на этой же системе попробовал запустить скрипт установки rdp, просто ради интереса, и вуаля — установка пошла и завершилась корректно! При этом пускает по рдп, оболчка запускается именно xfce, которую я установил и указал в ручную.

——
Получается я установил как бы дважды, сначала сам, потом из скрипта.

Reply
Belfigor 18.11.2019 - 19:30

Всё хорошо что хорошо кончается. Спасибо что поделились опытом решения проблемы!

Reply
Евгений 19.11.2019 - 21:37

BELFIGOR в Вашем профиле увидел что вы работали с Zabbix, можно как то с Вами связаться? есть много вопросов по нему, хотелось бы разобраться, за плату естественно!

Belfigor 25.11.2019 - 16:10

Да, можно писать на admin[@]adminguide.ru

Leave a Comment