Подключиться к linux mint по rdp
Рассмотрим процес установки и настройки rdp сервера (xrdp, x11rdp) на ОС linux Mint, Debian, Ubuntu, для удаленного доступа из ОС Windows стандартными средствами, через удаленный рабочий стол windows. Добавление русской раскладки клавиатуры.
RDP (Remote Desktop Protocol) — Протокол удалённого рабочего стола, ипользуется для удаленного подключения и управления к рабочим столам ОС Windows. Получил большое распространение в связи с тем, что по умолчанию присуствует во всех системах Windows, причем как серверная так и клиентская часть.
Для того чтобы подключиться из window стандартным клиентом к рабочему столу linux, необходимо чтобы на linux был запущен rdp сервер.
Установка RDP-сервера xrdp
Я установил xrdp через Центр Приложений Ubuntu, набрав в поиске xrdp и нажав кнопку установить.
Можно установить и из терминала следующей командой.
Впринципе после установки доступ к Linux машине из windows, используя стандартный клиент rdp я получил.
Надо сказать, что все работало не так, как хотелось. Подключиться через модуль sesman-X11rdp неполучилось, после авторизации клиент rdp закрывался. Зато заработало через sesman-Xvnc, правдо с переодическими тормазами, также отсуствовал в раскладке клавиатуры русский язык и доставить его было невозможно.
Выход из сложившейся ситуации был найден. Пришлось собрать x11rdp.
Установка x11rdp
Установим отдельно x11rdp (RDP сервера для Linux) следующими командами.
1.Установим следующие пакеты:
2.Извлекаем repos/main в директорию с названием x11rdp_xorg71 в текущей директории.
3.Создаем директорию X11rdp.
4.Переходим в директорию с извлеченными компанентами x11rdp.
Процедура компиляции занимает довольно много времени, у меня этот процесс длился минут 20.
6.Сделаем символьные ссылки.
7.Устанавливаем по умолчанию подключение через модуль sesman-X11rdp в окне «login to xrdp».
Для этого правим файл /etc/xrdp/xrdp.ini и ставим на первое место секцию «[xrdp0]» с sesman-X11rdp.
Теперь можно пробывать подключаться по rdp. Я завел себе отдельного пользователя специально для работы по rdp. При первом входе отсуствовал русский язык. Его нужно было добавить в настройках клавиатуры. Ниже рассмотрим как это сделать на примере xUbuntu.
Добавление русской раскладки клавиатуры в xUbuntu
Открываем «Диспечер Настроек», выбираем «Клавиатура», переходим на вкладку «Раскладка».
1.»Использовать стандартные системные параметры»: снимаем галочку.
2.»Изменить параметры раскладки» выбираем: Alt+Shift.
3.»Раскладка клавиатуры»: нажимаем «добавить», выбираем раскладку: Русская.
Для удобства добавим на панель модуль переключения раскладки клавиатуры, отображающим значок с текущим выбранным языком.
Открываем «Диспечер Настроек», выбираем «Панель», переходим на вкладку «Элементы», нажимаем «плюсик», выбираем «Раскладки Клавиатуры» и «Добавить»
На этом все, rdp сервер установлен и отлично работает под ОС Linux. Комментируем, подписываемся ну и всем пока:)
1″ :pagination=»pagination» :callback=»loadData» :options=»paginationOptions»>
Справочная информация
про свой опыт решения некоторых проблем и использования ряда возможностей ОС и приложений
воскресенье, 16 ноября 2014 г.
Доступ по RDP в Linux Mint
В своей домашней сети у меня есть необходимость работать с удалённым рабочим столом второго компьютера. В силу определённых причин было решено отказаться от Windows и установить на управляемый компьютер OC Linux Mint.
Задача удалённого управления решается в 2 этапа: включение возможности предоставления в доступ по сети рабочего стола и установка программы удалённого управления.
Найти в центре управления Desktop Sharing и включить удалённый доступ:
Если Вы будете управлять своим вторым компьютером, который функционирует без монитора, то снимите галочку в поле «Запрашивать подтверждение при любой попытке доступа к компьютеру».
Обязательно установите пароль (придумайте его сами) и поставьте галочку в поле «Требовать от пользователя ввести следующий пароль:».
В Linux Min 19 имеются изменения. Порядок настройки указан здесь.
Установите программу удалённого управления, которая называется Remmina. Так как реализацией доступа к удалённому рабочему столу в Linux Mint является сервер vino, то обязательно установите плагин VNC.
Теперь Вам осталось только создать в программе соединение, настроить его и подключиться к удалённому рабочему столу. Так как компьютер расположен в моей домашней сети, то шифрования у меня нет и оно отключено, а качество является «наилучшим» (иначе раскраска удалённого рабочего стола выглядит поистине ужасной).
Смотрите ролик, как описанное выше выглядит на самом деле.
P.S. Если Вы подключаетесь по IP адресу, то, возможно, будет необходимо назначить удалённому компьютеру статический адрес. Пример решения этой задачи у меня дома описан здесь.
2 комментария:
И при чем здесь RDP? RDP и VNC — совершенно разные протоколы. Что очевидно даже из настроек Реммины, показанных на скриншоте.
RDP в Linux: запуск сервера и подключение к Windows
Как подключиться к удалённому столу по RDP в Linux
Клиенты RDP существуют для многих платформ, даже для мобильных телефонов, конечно, имеются клиенты RDP и для Linux
Мы рассмотрим 2 клиента RDP под Linux
- freerdp — бесплатная реализация протокола удалённого рабочего стола (Remote Desktop Protocol (RDP))
- rdesktop — клиент с открытым исходным кодом для служб Windows удалённого рабочего стола
Как пользоваться freerdp
Для установки freerdp в Debian, Kali Linux, Linux Mint, Ubuntu и производные выполните команду:
sudo apt install freerdp2-x11 freerdp2-shadow-x11
Если пакеты freerdp2-x11 и freerdp2-shadow-x11 не найдены, то поищите пакет с именем freerdp .
Для установки freerdp в Arch Linux и производные выполните команду:
sudo pacman -S freerdp
Как подключиться командой freerdp
Для подключения к удалённому рабочему столу с помощью xfreerdp , запустите команду вида:
xfreerdp /f /u:ИМЯ-ПОЛЬЗОВАТЕЛЯ /p:ПАРОЛЬ /v:ХОСТ[:ПОРТ]
- /f — опция означает открыть удалённый стол в полноэкранном режиме
- /u:ИМЯ-ПОЛЬЗОВАТЕЛЯ — имя учётной записи на компьютере, к которому подключаемся
- /p:ПАРОЛЬ — пароль указанной учётной записи
- /v:ХОСТ[:ПОРТ] — IP адрес или имя компьютера, к удалённому столу которого выполняется подключение. ПОРТ указывать необязательно
Например, я хочу открыть удалённый стол компьютера с IP адресом 192.168.0.101 , на котором имеется пользователь Tester с паролем 1234 , причём я хочу открыть удалённый рабочий стол в полноэкранном режиме, тогда команда следующая:
xfreerdp /f /u:Tester /p:1234 /v:192.168.0.101
Для переключения между полноэкранным режимом и оконным, используется сочетание клавиш Ctrl+Alt+Enter .
При первом подключении появляется следующее сообщение о проблеме с сертификатом:
Поскольку используются самоподписанные сертификаты без добавленного в хранилище приватного CA ( центра аутентификации, удостоверяющего центра ), то единственный выбор, это согласиться доверять указанному сертификату, для этого введите Y .
В полноэкранном режиме вы можете отключиться от удалённого рабочего стола двумя способами:
- нажать крестик на верхней панели
- меню «Пуск» → Выключение → Отключиться
Для запуска в оконном режиме не используйте опцию /f :
xfreerdp /u:Tester /p:1234 /v:192.168.0.101
Как в freerdp создать общие папки
С удалённым рабочим столом, подключённым по RDP, можно иметь совместные папки. Рассмотрим несколько примеров.
Чтобы подключить все точки монтирования в текущей системе как совместные папки на удалённом рабочем столе используйте опцию +drives , например:
xfreerdp /u:Tester /p:1234 /v:192.168.0.101 +drives
На скриншоте показан удалённый стол Windows, в котором доступны папки Linux системы, из которой сделано подключение по RDP:
Чтобы подключить только домашнюю папку текущего пользователя Linux в качестве сетевой папки к компьютеру по RDP укажите опцию +home-drive :
xfreerdp /u:Tester /p:1234 /v:192.168.0.101 +home-drive
В этом случае домашняя папка смонтирована в систему, подключённую по протоколу удалённый рабочий стол:
С опцией /drive:ИМЯ,/ПУТЬ/В/LINUX можно подключить любую папку с любым именем. В качестве /ПУТЬ/В/LINUX должен быть указан путь в текущей системе, а ИМЯ это то имя, которое будет иметь шара в удалённой системе. Например, чтобы подключить корневую папку текущей системы ( / ) к удалённой с именем root :
xfreerdp /u:Tester /p:1234 /v:192.168.0.101 /drive:root,/
Как вывести удалённый рабочий стол на другой монитор
Если у вас несколько мониторов, то вы можете выбрать, какой из них использовать для удалённой системы. Чтобы вывести список мониторов запустите команду:
Выбранный идентификатор монитора (или нескольких мониторов) укажите с помощью опции /monitors: [,[,…]] .
Как установить размер окна удалённого рабочего стола
В следующем примере выполняется подключение к хосту rdp.contoso.com с именем USER и размером 50 процентов от высоты .
xfreerdp /u:USER /size:50%h /v:rdp.contoso.com
Если вместо высоты ( h ) установлена ширина ( w ), примерно как /size:50%w , то будет использоваться 50 процентов ширины.
Как пользоваться rdesktop
Для установки rdesktop в Debian, Kali Linux, Linux Mint, Ubuntu и производные выполните команду:
sudo apt install rdesktop
Для установки rdesktop в Arch Linux и производные выполните команду:
sudo pacman -S rdesktop
Как подключиться к удалённому рабочему столу с rdesktop
Для подключения к RDP с rdesktop используйте команду вида:
rdesktop -u ПОЛЬЗОВАТЕЛЬ -p ПАРОЛЬ ХОСТ
rdesktop -u Tester -p 1234 192.168.0.101
Как обычно, в самом начале возникнет проблема с сертификатом:
Затем возникнет ошибка:
- Failed to initialize NLA, do you have correct Kerberos TGT initialized ?
- Failed to connect, CredSSP required by server (check if server has disabled old TLS vers
Она вызвана тем, что не настроена аутентификация на уровне сети (Kerberos TGT). Инструкция по настройке по ссылке: https://github.com/rdesktop/rdesktop/wiki/Network-Level-Authentication-(NLA)
Другой вариант, который позволяет подключиться к Windows по RDP с помощью rdesktop без настройки Network Level Authentication (NLA) — это отключить аутентификацию на уровне сети в Windows. Понятно, что это ослабит безопасность RDP, поэтому не рекомендуется. Но как «быстрый грязный фикс» это можно сделать следующим образом: Меню «Пуск» → Параметры → Система → Удалённый рабочий стол → Дополнительные параметры → Снять галочку с «Требовать использование компьютерами аутентификации на уровне сети для подключения (рекомендуется)» :
Всё равно продолжить:
После этого подключение rdesktop проходит без ошибок:
В настройках Windows вы могли увидеть ссылку «Почему следует разрешать подключения только с проверкой подлинности на уровне сети?», там написано следующее:
Если вы хотите ограничить доступ к компьютеру, разрешите доступ только с проверкой подлинности на уровне сети (NLA). При включении этого параметра пользователи должны пройти аутентификацию в сети, чтобы подключиться к компьютеру. Разрешение подключений только с компьютеров с удаленным рабочим столом с NLA является более безопасным методом проверки подлинности, который поможет защитить компьютер от злоумышленников и вредоносных программ. Чтобы узнать больше о NLA и удаленном рабочем столе, ознакомьтесь с разделом Configure Network Level Authentication for Remote Desktop Services Connections (Настройка NLA для подключения к удаленному рабочему столу). Если вы подключаетесь удаленно к компьютеру в своей домашней сети, не находясь в этой сети, не выбирайте этот параметр.
Как установить сервер RDP в Linux
Сервер удалённого рабочего стола RDP может работать не только на Windows, но и на Linux. В результате к Linux можно подключиться по протоколу RDP.
В Linux протокол RDP не встроен по умолчанию как в Windows. Также в Linux отсутствуют некоторые другие протоколы, которые используются прозрачно (незаметно) для пользователей Windows, например, для сетевой аутентификации.
Тем не менее существуют сервера RDP которые успешно работают на Linux.
Как использовать freerdp-shadow для запуска RDP сервера
Для установки freerdp в Debian, Kali Linux, Linux Mint, Ubuntu и производные выполните команду:
sudo apt install freerdp2-shadow-x11 winpr-utils
Для установки freerdp в Arch Linux и производные выполните команду:
sudo pacman -S freerdp
Исполнимые файлы в разных дистрибутивах называются чуть по-разному. В 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 тогда команда следующая:
winpr-hash -u mial -p 2
Создаём текстовый файл SAM и в него записываем строку
Теперь запускаем 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] — Failed to check FreeRDP file descriptor
То необходимо создать файл SAM и запустить freerdp-shadow с опциями /sam-file:SAM /sec:nla как это показано выше.
Как запустить RDP сервер с xrdp
Для установки xrdp в Debian, Kali Linux, Linux Mint, Ubuntu и производные выполните команду:
sudo apt install xrdp
Для установки 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
- /etc/xrdp/xrdp.ini — файл настроек
- /var/log/xrdp.log — файл журналов событий
Подключаемся из Windows к xrdp . Вводим имя пользователя и пароль пользователя Linux:
Теперь мы можем выполнять команды на компьютере с Linux так, будто бы мы сидим за ним:
Как из Linux подключиться к другому Linux по RDP
Каких-то особенностей при подключении с использованием программы xfreerdp нет, достаточно запустить сервер RDP, причём, если вы используете freerdp-shadow , то опции /sam-file:SAM /sec:nla также нужны:
freerdp-shadow-x11 /sam-file:SAM /sec:nla
Либо запустите xrdp-sesman и xrdp .
А затем подключение ничем не отключается от подключению к Windows:
xfreerdp /u:mial /p:2 /v:192.168.0.73
Что касается rdesktop , то её не удалось заставить работать ни с одним из рассмотренных серверов RDP под Linux — если вы знаете, как это сделать, то пишите в комментариях.