Сервер rdp linux mint

exec startlxde

Универсальный файл ~/.xinitrc для любых рабочих столов можно найти на stackoverflow (необходима установка slim).

Диагностика

Перезагружаем ПК, который выполняет роль сервера.

Проверяем с него же, что сервер Xorg запускается без ошибок:

sudo Xorg :10 -auth .Xauthority -config xrdp/xorg.conf -noreset -nolisten tcp

На этом этапе экран может погаснуть, если вы проверяете XRDP с того же ПК, на котором запущена начальная сессия Xorg. Нужно нажать Ctrl+Alt+F1 ввести имя и пароль, при помощи команды ps -aux | grep xrdp найти номер процесса » sudo xrdp » и завершить его командой » sudo kill «.

В текстовом выводе результата этой команды будет содержаться причина ошибки.

Если же сообщение «(EE) Cannot establish any listening sockets — Make sure an X server isn’t already running(EE)»,
нужно перезагрузить ПК и повторить диагностику.

Второй вариант проверки — перед первым подключением к серверу XRDP, завершаем текущий сеанс «Пуск» — «Выйти» — «Выйти из системы». Так как клиент RDP не сможет создать второй сеанс такого же пользователя (с ошибкой в файле ~/.xorgxrdp.10.log: «(EE) Caught signal 11 (Segmentation fault). Server aborting»).

Либо, нужно создать второго пользователя для тестирования подключения к xRDP, которым будем подключаться по протоколу RDP:

sudo useradd -m ivanov-rdp passwd ivanov-rdp

Ошибки xRDP сервера в Linux и их решения

Настройка брандмауэра

При невозможности подключения по протоколу RDP к серверу, прежде всего проверить открытие порта на FireWall:

sudo apt install nmap sudo nmap 192.168.55.100 -p 3389

где вместо 192.168.55.100 укажите IP-адрес сервера в локальной сети.
Не забываем открыть локальный порт 3389 в firewall:

Если порт открыт, то вывод:
PORT STATE SERVICE
3389/tcp open ms-wbt-server

Проблема «При подключении с клиента по RDP виден чёрный пустой экран»

На сервере не установлен пакет xorgxrdp — программная «прослойка» между xorg и rdp сервером, который отображает графику — Рабочий стол, указатель мыши и иконки.

Решение — установить на сервер пакет xorgxrdp :

sudo apt-get install xorgxrdp sudo service xrdp restart

Сеанс xRDP теперь должен работать. Пробуем подключиться!

Примечание: Пакет «xorgxrdp — Remote Desktop Protocol (RDP) modules for X.org» входит в большинство дистрибутивов Debian, а также Ubuntu 18.04 «bionic», 20.04 LTS «focal», 21.04 «hirsute», 21.10 «impish», 22.04 LTS «jammy» (вышла 21.04.2022), и производных ОС на основе DEB-пакетной базы Ubuntu (таких как Runtu, Lubuntu, Xubuntu, Kubuntu и др.), а также дистрибутивы на основе RPM: Fedora, Arch и др.. Поэтому данная инструкция должна работать с множеством версий Linux.

Читайте также:  Linux setting stack size

Remmina RDP Client — подключение к серверу

sudo apt-get install remmina remmina-plugin-rdp remmina-plugin-secret sudo reboot remmina

remmina

Добавляем подключение — тип RDP.

Если VPN не используется, то в IP адрес вводим «белый» IP-адрес домашнего роутера.
При работе через VPN IP адрес относится к внутренней (локальной, домашней) сети.
Имя и пароль — такие же как при входе «с клавиатуры» на сервере.

Нижние кнопки окна Remmina на нетбуках с разрешением экрана 1024×600 пикселей могут быть обрезаны и видны частично.
«Отменить» — «Сохранить как значения по умолчанию» — «Сохранить» — «Подключиться» — «Сохранить и подключиться»

Нажимаем крайнюю правую кнопку «Сохранить и подключиться».

Различные проблемы

Журналы ошибок в системной каталоге /var/log/:

Журналы ошибок в каталоге пользователя ~:

Просмотреть их можно командами:

sudo cat /var/log/xrdp.log sudo cat /var/log/xrdp-sesman.log sudo cat /var/log/Xorg.0.log sudo cat /var/log/Xorg.10.log sudo cat ~/.xorgxrdp.log

Если при подключении с ПК под управлением Windows к ПК под управлением Linux после ввода имени пользователя пароля виден сине-зелёный однотонный фон без текста и иконок,
или в файле XRDP.LOG многочисленные ошибки, значит подключение произошло, но не запустилась графика Xorg — скорее всего из-за старой версии OpenGL, либо прав, см. выше.

blue

Пример ошибки на стороне клиента при попытке подключения с помощью программы MSTSC.EXE:

error19

Сообщения об ошибка в журнале XRDP.LOG на стороне сервера:

или аналогичная [DEBUG] Closed socket 17 (AF_UNIX)

Решение — диагностика командой с рабочего стола машины-сервера:

sudo Xorg :10 -auth .Xauthority -config xrdp/xorg.conf -noreset -nolisten tcp

Нужно добиться отсутствия ошибок Xorg в файле /var/log/Xorg.10.log.

Если при подключении с ПК под управлением Windows виден на мгновение чёрный экран, который тут же закрывается, один из вариантов:

  • неправильной имя/пароль пользователя
  • неправильный скрипт ~/.xinitrc (не запустилась сессия рабочего стола). Проверьте файл ~/.xinitrc на наличие команды exec .
  • пользователь, которым вы подключаетесь к ПК удалённо, имеет открытую сессию в операционной системе локально (использует компьютер в данный момент).

Безопасность

Теперь любой ПК в локальной сети сможет подключаться к вашему компьютеру по протоколу RDP. Следует установить для учётной записи пользователя сложный пароль. Если подключение к ПК из Интернет — можно дополнительно использовать VPN с шифрованием трафика.

Дата последнего редактирования 25.04.2022

Источник

Как установить и запустить RDP сервер в Linux

В этой инструкции мы рассмотрим два RDP сервера для Linux: freerdp-shadow (входит в пакет freerdp) и xrdp.

Как использовать freerdp-shadow для запуска RDP сервера

Для установки freerdp в Debian, Kali Linux, Linux Mint, Ubuntu и производные выполните команду:

sudo apt install freerdp2-shadow-x11 winpr-utils

Для установки freerdp в Arch Linux и производные выполните команду:

Читайте также:  Точка монтирования efi linux

Исполнимые файлы в разных дистрибутивах называются чуть по-разному. В Debian, Kali Linux, Linux Mint, Ubuntu файл для запуска RDP сервера называется: freerdp-shadow-x11

А в Arch Linux файл для запуска RDP сервера называется: freerdp-shadow-cli

Но по сути это одна программа и опции у них одинаковые.

Чуть выше, говоря о rdesktop, мы уже столкнулись с Network Level Authentication (NLA), то есть проверкой подлинности на уровне сети. Для запуска RDP сервера на Linux вы должны выбрать один из двух вариантов:

  • запустить сервер вовсе без аутентификации
  • включить NLA и сделать необходимые для неё настройки

Чтобы запустить RDP сервер вовсе без аутентификации используйте опцию -auth:

Если аутентификация включена, PAM используется с подсистемой X11. Запуск от имени пользователя root не обязателен, однако, если запускать от имени пользователя, только тот же пользователь, который запустил freerdp-shadow, может аутентифицироваться. Предупреждение: если аутентификация отключена, каждый может подключиться.

Любая сетевая служба без аутентификации это беда для безопасности системы. Поэтому рассмотрим, как запустить freerdp-shadow с поддержкой NLA.

Прежде всего для NLA необходимо создать файл, в котором будет строка вида:

Имя пользователя Linux нам известно, для вычисления хеша нужно выполнить команду вида:

winpr-hash -u ПОЛЬЗОВАТЕЛЬ -p ПАРОЛЬ

К примеру, имя пользователя mial, а пароль цифра 2 тогда команда следующая:

8f33e2ebe5960b8738d98a80363786b0

Создаём текстовый файл SAM и в него записываем строку

mial. 8f33e2ebe5960b8738d98a80363786b0.

Теперь запускаем freerdp-shadow-x11 с двумя опциями:

  • /sam-file:ФАЙЛ — указывает на расположение NTLM SAM файла для NLA аутентификации
  • /sec:nla — принудительное включение аутентификации по протоколу NLA

Итак, моя команда следующая:

freerdp-shadow-x11 /sam-file:SAM /sec:nla

Для проверки подключаюсь из Windows:

У нас запрашивают пароль — это означает, что на сервере RDP включена аутентификация NLA.

Для того, чтобы делиться не всем экраном, а только его частью, используйте опцию /rect:x,y,w,h. Где:

  • x,y — координаты верхнего левого угла прямоугольника
  • w — ширина прямоугольника
  • h — высота прямоугольника

К примеру, чтобы делиться частью экрана 500×500 пикселей с координатами 200,300:

freerdp-shadow-x11 /sam-file:SAM /sec:nla /rect:200,300,500,500

Ошибка freerdp-shadow «client authentication failure: -1»

Если при запуске RDP сервера freerdp-shadow вы получили ошибку:

[11:54:02:458] [1921:1925] [ERROR][com.freerdp.client.shadow] - client authentication failure: -1 [11:54:02:458] [1921:1925] [ERROR][com.freerdp.core.peer] - peer_recv_callback: CONNECTION_STATE_FINALIZATION - peer_recv_pdu() fail [11:54:02:458] [1921:1925] [ERROR][com.freerdp.core.transport] - transport_check_fds: transport->ReceiveCallback() - -1 [11:54:02:458] [1921:1925] [ERROR][com.freerdp.client.shadow] - Failed to check FreeRDP file descriptor

То необходимо создать файл SAM и запустить freerdp-shadow с опциями /sam-file:SAM /sec:nla как это показано выше.

Как запустить RDP сервер с xrdp

Для установки xrdp в Debian, Kali Linux, Linux Mint, Ubuntu и производные выполните команду:

Для установки xrdp в Arch Linux и производные выполните команды:

sudo pacman -S alsa-lib mesa git clone https://aur.archlinux.org/xrdp.git cd xrdp makepkg -si

Для запуски служб xrdp-sesman и xrdp в любом дистрибутиве выполните команду:

sudo systemctl start xrdp-sesman.service

Важные файлы xrdp:

  • /etc/xrdp/xrdp.ini — файл настроек
  • /var/log/xrdp.log — файл журналов событий
Читайте также:  Linux создать бинарный файл

Подключаемся из Windows к xrdp. Вводим имя пользователя и пароль пользователя Linux:

Теперь мы можем выполнять команды на компьютере с Linux так, будто бы мы сидим за ним:

Связанные статьи:

Источник

RDP на Debian/Ubuntu/Mint с помощью XRDP

Надоело использовать консоль? Вы не знаете как пользоваться консолью и Вам проще использовать графическую оболочку? Выход есть и сейчас я покажу как я это делал у себя на сервере. Хочу рассказать в своей статье «RDP на Debian/Ubuntu/Mint с помощью XRDP» как я настроил RDP на Debian.

Желательно выполнить обновление всего:

# sudo apt-get update && sudo apt-get upgrade

Установим сначала дополнительное программное обеспечение:

# sudo apt-get install ubuntu-desktop

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

После того как установится xRDP, мы его запустим:

Теперь создадим пользователя под управление нашего соединения, у меня это будет пользователь XRDP:

Может такая команды и не выполниться, то нужно сделать «финт ушами», а именно запустить с параметром:

# adduser XRDP --force-badname

Даем нашему пользователю ( у меня — XRDP) права полного доступа ( рута):

Так же, зададим пароль для пользователя:

Теперь запустите «Remote Desktop Connection,» на вашей локальной машине. Можно ввести «MSTSC» перешел в Пуск -> Выполнить или вы можете найти программу в вашем меню.

запускаем службу с RDP

В открывшееся окно вводим IP адрес нашего сервера (если кто не знает какой ИП, то выполните ifconfig), вводим пользователя и нажимаем «подключить».

У меня открылось окно, вроде бы все хорошо, а вот нет! Почитал логи, все чисто было. Оказалось нужно еще кое что добавить и немного установить. Сейчас мы этим займемся.

Была проблема в том, что если вы используете только консоль ( это же логично, зачем на серверах ставить GUI), то на машине не установлены графические оболочки.

Устанавливаем xfce4 на сервер, но перед этим всем обновимся:

# sudo apt-get update # sudo apt-get install xfce4

После установки графической среды, пропишем параметр входа в систему:

# echo xfce4-session >~/.xsession

Но т.к я юзаю пользователя XRDP, то нужно и для него это сделать:

# echo xfce4-session > /home/XRDP/.xsession

Перезапускаем саму службу:

# sudo service xrdp restart

После чего можно пробовать подключатся! Должно все работать.

Для удобства можно заюзать следующий скрипт:

# vim /etc/xrdp/start_xRDP.sh #!/bin/sh if [ -r /etc/default/locale ]; then . /etc/default/locale export LANG LANGUAGE fi #. /etc/X11/Xsession startxfce4 # or startlxde, startlubuntu, gnome-session, startkde
# chmod +x /etc/xrdp/start_xRDP.sh

PS: можно так же установить Gnome, KDE, LXDE, но это кто к чему привык. Но не забывайте прописать в файл с сессией строки запуска X. Но как по мне, Это извращение ставить графическую оболочку! Юзайте консоль, люди!

Источник

Оцените статью
Adblock
detector