Xrdp — это аналог протокола Microsoft Remote Desktop Protocol (RDP). Если xrdp установлен в системе Linux, пользователи могут удаленно получить доступ к рабочему столу Linux с помощью RDP-клиента. Все это я покажу в этой статье. Его можно совершенно бесплатно скачать и использовать.
Без лишних слов давайте давайте приступим к установке Xrdp на Ubuntu Desktop 20.04 и 18.04.
Предпосылки
В этом руководстве предполагается, что у вас уже установлена Ubuntu 20.04 или Ubuntu 18.04. Если у вас есть минимальная установка без графического интерфейса – то рекомендуется установить среду рабочего стола или GNOME.
Чтобы установить среду рабочего стола Ubuntu, выполните команду:
$ sudo apt install ubuntu-desktop
Шаг 1: Установите Xrdp на Ubuntu 20.04
Для начала запустите терминал и выполните следующую команду для установки Xrdp в вашу систему.
$ sudo apt install xrdp
Когда появится запрос, просто нажмите 'Y'
, а далее нажмите enter, чтобы продолжить установку.
Установите Xrdp на Ubuntu
Служба Xrdp запускается автоматически после установки. Для проверки работоспособности сервиса XRDP, выполнив команду:
$ sudo systemctl status xrdp
Данные которые вы видите на рисунке подтверждают, что сервис XRDP работает.
Шаг 2: Настройка Xrdp на Ubuntu 20.04
При установке Xrdp ключ SSL сертификата ssl-cert-snakeoil. key помещается в папку /etc/ssl/private/. Нам требуется добавить пользователя xrdp в группу ssl-cert, чтобы сделать файл читаемым для пользователя. Это можно сделать командой:
$ sudo adduser xrdp ssl-cert
Xrdp прослушивает порт 3389 и если вы находитесь за брандмауэром UFW, то вам нужно открыть порт. Это делается для того чтобы разрешить входящий трафик от клиентов RDP. В этом примере я разрешу трафик на порт 3389 из всей моей подсети в систему Ubuntu.
$ sudo ufw allow from 192.168.2.0/24 to any port 3389
После этого требуется перезагрузить брандмауэр и проверить, открыт ли порт.
$ sudo ufw reload
$ sudo ufw status
Шаг 3: Доступ к удаленному рабочему столу Ubuntu с помощью RDP клиента
На этом шаге мы попробуем подключится к системе Ubuntu из Windows 10. В этом нам поможет стандартный клиент удаленного рабочего стола (RDP). Но прежде чем продолжить, убедитесь что вы вышли из Ubuntu 20.04. Так как Xrdp поддерживает только один Xsession.
- Запустите RDP клиент на Windows
- Введите IP-адрес удаленной системы
- Нажмите кнопку «Подключиться«.
В окне которое требует проверку удаленной системы, игнорируйте ошибки сертификата и нажмите на кнопку «Далее«.
На странице входа в систему Xrdp введите свои учетные данные и нажмите кнопку «Ok«.
Примечание: в этот момент Вы можете столкнуться с пустым черным экраном вместо фона рабочего стола Ubuntu. Лично я столкнулся с таким багом. После долгих мучений, я нашел вариант как исправить этот баг.
Как исправить черный экран XRDP в Ubuntu
Решение довольно простое. Откройте Ubuntu и отредактируйте /etc/xrdp/startwm.sh сценарий.
$ sudo vim /etc/xrdp/startwm.sh
Добавьте эти строки непосредственно перед строками, которые тестируют и выполняют Xsession, как показано на скриншоте ниже.
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR
Далее требуется сохранить файл и выйдите. Не забудьте перезапуститm службу Xrdp.
$ sudo systemctl restart xrdp
Затем повторно подключитесь. После первоначальной аутентификации вам потребуется пройти повторную аутентификацию, как показано на рисунке.
Введите свои учетные данные и нажмите кнопку «аутентификация«.После проделанного в перейдете на экран стола удаленной системы Ubuntu.
Заключение
Ну вот и все, в этой статье вы узнали Как установить Xrdp на Ubuntu 20.04. Это совсем не сложно и это может сделать даже новичок Linux. Если у вас что-то не получилось или вы нашли ошибку, оставьте комментарий.
Ух, прикольно надо будет попробовать.
Попробуйте. очень удобно из сервера ubuntu сделать RDP SERVER UBUNTU )
Помню как-то пытался установить на 16 убунту был чёрный экран. Не смог его победить и забил на rdp. Думаю надо ещё раз попробовать установить. Может в этот раз получится.
Если бы вы еще написали что эти две строчки делают было бы шикарно.
Если мне не отказывает память то косяк черного экрана был из-за ядра ubuntu. На дебиане все работало. Думаю что в 20 убунте нашли обход.
ищем файл /etc/xrdd/startwm.sh и в нем комментируем строки (вероятно, будут последними):
test -x /etc/X11/Xsession && exec /etc/X11/Xsession
exec /bin/sh /etc/X11/Xsession
и вместо них добавляем другие две строчки:
unset DBUS_SESSION_BUS_ADDRESS
exec mate-session
Когда пытаюсь зайти из под windows на ubuntu по rdp, то выдаётся такая ошибка:
Произошла ошибка проверки подлинности. Указанная функция не поддерживается Удаленный компьютер: 192.168.0.105
Где настраивать нужно на Windows или в ubuntu?
Здравствуйте проблема в вашей винде. https://www.youtube.com/watch?v=bwLIuUfzB0k&t=38s посмотрите здесь. должно помочь.
Добрый день!
Выполнил команду по рекомендации:
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters /v AllowEncryptionOracle /t REG_DWORD /d 2
И всё равно ошибка осталась. Может для Ubuntu это не подходит?