- Windows xp или vista
- Как в freerdp создать общие папки
- Как вывести удалённый рабочий стол на другой монитор
- Как запустить rdp сервер с xrdp
- Как из linux подключиться к другому linux по rdp
- Связанные статьи:
- Как использовать freerdp-shadow для запуска rdp сервера
- Как подключиться к удалённому рабочему столу с rdesktop
- Как подключиться к удалённому столу по rdp в linux
- Как подключиться командой freerdp
- Как пользоваться freerdp
- Как пользоваться rdesktop
- Как установить сервер rdp в linux
- Настройка rdp подключения к windows 8.
- Настройка на windows 8.
- Настройка подключения к windows 8 на ubuntu.
- О проблемах
- Обзор возможностей
- Опции xfreerdp
- Ошибка freerdp-shadow «client authentication failure: -1»
- Плагины к remmina.
- Примеры использования remmina
- Установка remmina
- Установка новых плагинов
- Установка последней версии remmina в ubuntu.
Windows xp или vista
В XP можно поднять протокол с 5.1 до 7. Хотфикс
В Vista — c 6 до 7. Хотфикс имеет тот же номер, файлы windows6.0-kb969084-x64.msu или Windows6.0-KB969084-x86.msu
Как в 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,/
Как вывести удалённый рабочий стол на другой монитор
Если у вас несколько мониторов, то вы можете выбрать, какой из них использовать для удалённой системы. Чтобы вывести список мониторов запустите команду:
xfreerdp monitor-list
Выбранный идентификатор монитора (или нескольких мониторов) укажите с помощью опции /monitors:<id>[,[,…]].
Как запустить rdp сервер с xrdp
Для установки xrdp в Debian, Kali Linux, Linux Mint, Ubuntu и производные выполните команду:
sudo apt install xrdp
Для установки xrdp в Arch 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 — если вы знаете, как это сделать, то пишите в комментариях.
Связанные статьи:
Как использовать 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:
freerdp-shadow-x11 -auth
Если аутентификация включена, PAM используется с подсистемой X11. Запуск от имени пользователя root не обязателен, однако, если запускать от имени пользователя, только тот же пользователь, который запустил freerdp-shadow, может аутентифицироваться. Предупреждение: если аутентификация отключена, каждый может подключиться.
Любая сетевая служба без аутентификации это беда для безопасности системы. Поэтому рассмотрим, как запустить freerdp-shadow с поддержкой NLA.
Прежде всего для NLA необходимо создать файл, в котором будет строка вида:
ПОЛЬЗОВАТЕЛЬ:::ХЕШ:::
Имя пользователя Linux нам известно, для вычисления хеша нужно выполнить команду вида:
winpr-hash -u ПОЛЬЗОВАТЕЛЬ -p ПАРОЛЬ
К примеру, имя пользователя mial, а пароль цифра 2 тогда команда следующая:
winpr-hash -u mial -p 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
Как подключиться к удалённому рабочему столу с rdesktop
Для подключения к RDP с rdesktop используйте команду вида:
rdesktop -u ПОЛЬЗОВАТЕЛЬ -p ПАРОЛЬ ХОСТ
Например:
rdesktop -u Tester -p 1234 192.168.0.101
Как обычно, в самом начале возникнет проблема с сертификатом:
Autoselecting keyboard map 'ru' from locale
ATTENTION! The server uses and invalid security certificate which can not be trusted for
the following identified reasons(s);
1. Certificate issuer is not trusted by this system.
Issuer: CN=HackWare-MiAl
Review the following certificate info before you trust it to be added as an exception.
If you do not trust the certificate the connection atempt will be aborted:
Subject: CN=HackWare-MiAl
Issuer: CN=HackWare-MiAl
Valid From: Thu Apr 2 20:56:11 2020
To: Fri Oct 2 20:56:11 2020
Certificate fingerprints:
sha1: 6a4cbe35235f46b5bd37155ef721ec59aac11c3e
sha256: 35368cc1b2ae9e79927bcb8ededed228062de34978aeeeab74bb029ccbc255e9
Do you trust this certificate (yes/no)? yesНабираем yes.
Затем возникнет ошибка:
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 versions, if yes use -V option).
Как подключиться к удалённому столу по rdp в linux
Клиенты RDP существуют для многих платформ, даже для мобильных телефонов, конечно, имеются клиенты RDP и для Linux
Мы рассмотрим 2 клиента RDP под Linux
- freerdp — бесплатная реализация протокола удалённого рабочего стола (Remote Desktop Protocol (RDP))
- rdesktop — клиент с открытым исходным кодом для служб Windows удалённого рабочего стола
Также имеется клиент VNC и RDP с графическим пользовательским интерфейсом — Remmina. У программы много настроек, в целом она дружественная пользователю за исключением одного недостатка — она не заработала. Тем не менее она присутствует в стандартных репозиториях большинства дистрибутивов, поэтому при желании вы без труда сможете установить и попробовать её.
Как подключиться командой freerdp
Для подключения к удалённому рабочему столу с помощью xfreerdp, запустите команду вида:
xfreerdp /f /u:ИМЯ-ПОЛЬЗОВАТЕЛЯ /p:ПАРОЛЬ /v:ХОСТ[:ПОРТ]
В этой команде:
Например, я хочу открыть удалённый стол компьютера с IP адресом 192.168.0.101, на котором имеется пользователь Tester с паролем 1234, причём я хочу открыть удалённый рабочий стол в полноэкранном режиме, тогда команда следующая:
xfreerdp /f /u:Tester /p:1234 /v:192.168.0.101
Для переключения между полноэкранным режимом и оконным, используется сочетание клавиш Ctrl Alt Enter.
При первом подключении появляется следующее сообщение о проблеме с сертификатом:
Как пользоваться 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
Как пользоваться rdesktop
Для установки rdesktop в Debian, Kali Linux, Linux Mint, Ubuntu и производные выполните команду:
sudo apt install rdesktop
Для установки rdesktop в Arch Linux и производные выполните команду:
sudo pacman -S rdesktop
Как установить сервер rdp в linux
Сервер удалённого рабочего стола RDP может работать не только на Windows, но и на Linux. В результате к Linux можно подключиться по протоколу RDP.
В Linux протокол RDP не встроен по умолчанию как в Windows. Также в Linux отсутствуют некоторые другие протоколы, которые используются прозрачно (незаметно) для пользователей Windows, например, для сетевой аутентификации.
Тем не менее существуют сервера RDP которые успешно работают на Linux.
Настройка rdp подключения к windows 8.
Давайте подключимся по RDP к Windows 8.
Настройка на windows 8.
Заходим в “Система” – “Настройка удаленного доступа”, на вкладке “Удаленный доступ” разрешаем удаленный подключения к этому компьютеру.
Не забудьте задать текущему пользователю пароль, или создайте другого пользователя для удаленного подключения. Тогда вам надо будет еще и “Выбрать пользователей” нажать и там выбрать созданного пользователя.
Вот и всё. Теперь нужно лишь узнать ip компьютера в локальной сети:
Настройка на windows 8 на этом закончилась.
Настройка подключения к windows 8 на ubuntu.
Открываем Remmina, создаем новое подключение.
Заполняем Название (удобное Вам).
В поле Сервер вписываем ip компьютера c Windows 8. Также вписываем имя пользователя и пароль. Всё. Сохраняем и подключаемся.
Кроме того можно отредактировать еще качество картинки, я обычно “Хорошее” выбираю:
Вы всегда можете отредактировать данные параметры, просто нажав на соединении правой кнопкой мыши и выбрав “правка”.
Кроме того, в настройка Remmina (CTR-P) можно качество отрегулировать:
При первом подключении не забудьте согласиться на получение сертификата:
Вот и всё, подключаемся.
Вот так выглядит картинка.Нормальные шрифты и курсор меняется, нет зависания картинки при старте подключения. Работает всё шустро, нет задержек. Можно вполне себе работать, использую компьютер с windows как тонкий клиент:
И мой сайт хорошо выглядит:
И еще один момент, чтобы нормально срабатывали комбинации клавиш, такие как смена раскладки или alt-f4, нужно, чтобы была зажата данная опция в меню:
Вот и всё.
О проблемах
XP и Vista
Если проблема возникает на Windows XP или Vista, попробуйте сначала обновить протокол до 7 версии (писал в начале статьи). Обязательно включите поддержку CredSSP. На сайте Microsoft статьи уже удалены, но Интернет помнит.
Если не помогло — «доктор говорит в морг, значит в морг». Что испытала на себе операционная система за последние 15 лет — лучше об этом даже и не думать.
NLA
Иногда помогает отключение NLA на сервере. Выяснить причину не получилось, домашние машины все разные.
NTLM
Некоторые клиенты пытаются авторизоваться с использованием NTLMv1. Причины разные, но исправить на клиенте можно так:
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLsa]
"LmCompatibilityLevel"=dword:00000003
Перезагрузка обязательна.
Если вы молоды и дерзки ничего не боитесь, то есть более радикальное решение — отключение Channel Binding на Remote Desktop Gateway
HKLMSoftwareMicrosoftWindows NTCurrentVersionTerminalServerGatewayConfigCore
Type: REG_DWORD
Name: EnforceChannelBinding
Value: 0 (Decimal)Делать так не надо. Но мы делали. 🙂 Для клиента, который настаивал (нет не так, НАСТАИВАЛ) что NTLMv1 на рабочих станциях ему необходим. Не знаю, может там серверы на NT4 без SP еще в работе.
Отключение RDP 8 в Windows 10
Если ничего не помогает, а идеи кончились, можно воспользоваться недокументированным ключом для даунгрейда протокола RDP до 7 версии.
Обзор возможностей
Основные функции программы представлены на рисунке:
Опции xfreerdp
У программы xfreerdp множество опций, далее выбраны самые интересные из них:
/v:<СЕРВЕР>[:ПОРТ] Имя хоста сервера с RDP
/u:... Имя пользователя
/p:<ПАРОЛЬ> Пароль
/f Полноэкранный режим (<Ctrl> <Alt> <Enter> переключает полноэкранный режим)
/port:<number> Порт сервера
/size:... Размер экрана
/w:<width> Ширина
/h:<height> Высота
/monitor-list Вывести список обнаруженных мониторов
/monitors:<id>[,[,...]] Выбрать мониторы для использования
-grab-keyboard Отключить захват клавиатуры
-mouse-motion Отключить отправку движений мыши
/log-level:... Установить уровень журналирования по умолчанию, подробности смотрите в wLog(7)
home-drive Сделать домашнюю папку пользователя совместной с удалённым столом
/drive:<ИМЯ>,<ПУТЬ> Подключить директорию <ПУТЬ> как шару с именем <ИМЯ>
drives Включить перенаправление всех точек монтирования как совместных папок
/ipv6 Предпочитать IPv6 AAAA запись, а не IPv4 A запись
/t:<ЗАГОЛОВОК> Заголовок окна
/kbd:0x<id> или <ИМЯ> Раскладка клавиатуры
/kbd-fn-key:<ЗНАЧЕНИЕ> Значение функциональной клавиши
/kbd-list Вывести список раскладок клавиатуры
/kbd-subtype:<id> Подтип клавиатуры
/kbd-type:<id> Тип клавиатурыОшибка 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 как это показано выше.
Плагины к remmina.
По умолчанию в Remmina доступно мало протоколов удаленного доступа:
VNC плагин не ставьте, он работать не будет.Из рабочих плагинов можно поставить для протоколов NX и XDMCP:
sudo apt-get install remmina-plugin-nx remmina-plugin-xdmcp
Перезапустить Remmina и в окне нового подключения станут доступны новые протоколы:
XDMCP не использовал, поэтому ничего сказать не могу, но по сообщения, работает ужасно.
Про NX расскажу подробнее в следующей статье.
Примеры использования remmina
1. Установка подключения к Windows (для примера взят Windows Server 2021r2).
Для установки соединения нажмите на кнопку «Добавить новый профиль соединения». Откроется окно создания соединения, где вам нужно выбрать протокол RDP и заполнить поля «Сервер», «Имя пользователя» и «Пароль».
После заполнения полей нажмите на кнопку «Сохранить» — для сохранения настроек или на кнопку «Сохранить и подключить» — для сохранения настроек и подключения к удаленному рабочему столу.
2. Подключение к x11vnc-серверу, используя протокол VNC.
В новом профиле соединения из выпадающего списка параметра «Протокол» выберите «Модуль VNС Remmina». Также заполните поля «Имя пользователя» и «Пароль». В поле «Сервер» впишите IP-адрес хоста вашей машины и порт VNC.
Для подключения нажмите на кнопку «Подключить» или «Сохранить и подключить».
3. Перенаправление USB-устройств через Remmina.3.1 Перенаправление принтера в удаленный рабочий стол по протоколу RDP.
Откройте параметры соединения, перейдите на вкладку «Дополнительные», установите флажок на строке «Сделать принтеры общедоступными».
Нажмите на кнопку «Сохранить и подключить», в результате локальный принтер будет перенаправлен в удаленный рабочий стол.
3.2 Общий доступ к локальным каталогам или Flash-носителю в удаленном рабочем столе.
Откройте профиль соединения в «Профиль соединения», далее во вкладке «Основные» в диалоговом окне выпадающего списка директорий параметра «Общая папка» выберите нужный каталог или диск.
Нажмите на кнопку «Сохранить и подключить». Выбранная папка станет доступной для использования в удаленном рабочем столе.
Установка remmina
Для установки данного приложения выполните команду:— для РЕД ОС версии 7.2 и младше:
yum install remmina -y
— для РЕД ОС версии 7.3 и старше:
dnf install remmina -y
Установка новых плагинов
При скачивании Remmina будут доступны следующие плагины: EXEC, NX, RDP, RDPF, RDPS, SFTP, SPICE, SSH, ST, VNC, VNCI, XDMCP, glibsecret.
Для расширенной работы с приложением вы можете установить оставшиеся плагины следующими командами (команды необходимо выполнять с правами администратора):— для РЕД ОС 7.2 и младше:
yum install remmina-gnome-session.x86_64 yum install remmina-plugins-kwallet.x86_64 yum install remmina-plugins-spice.x86_64 yum install remmina-plugins-www.x86_64
— для РЕД ОС 7.3 и старше:
dnf install remmina-gnome-session.x86_64 dnf install remmina-plugins-kwallet.x86_64 dnf install remmina-plugins-spice.x86_64 dnf install remmina-plugins-www.x86_64
Установка последней версии remmina в ubuntu.
Для Ubuntu есть
на ланчпад, где добавляются последние версии remmina и rdp плагина.
В репозитории есть пакеты только для версий 14.04 – 15.04
Чтобы установить последнюю версию Remmina в Ubuntu откройте терминал и выполните следующие команды:
sudo apt-add-repository ppa:remmina-ppa-team/remmina-nextsudo apt-get updatesudo apt-get install remmina remmina-plugin-rdp
Для
Ubuntu 12.04
попробуйте такой фокус:
Всё. Теперь последняя версия Remina установлена.
Если нужно удалить программу, то выполните следующие команды:
sudo apt-add-repository -r ppa:remmina-ppa-team/remmina-nextsudo apt-get updatesudo apt-get remove remmina remmina-plugin-rdp
