Debian rdp from windows

Содержание
  1. HackWare.ru
  2. Этичный хакинг и тестирование на проникновение, информационная безопасность
  3. RDP в Linux: запуск сервера и подключение к Windows
  4. Оглавление: Всё о RDP: от настройки до взлома
  5. Как подключиться к удалённому столу по RDP в Linux
  6. Как пользоваться freerdp
  7. Как подключиться командой freerdp
  8. Опции xfreerdp
  9. Как в freerdp создать общие папки
  10. Как вывести удалённый рабочий стол на другой монитор
  11. Как установить размер окна удалённого рабочего стола
  12. Как пользоваться rdesktop
  13. Как подключиться к удалённому рабочему столу с rdesktop
  14. Как установить сервер RDP в Linux
  15. Как использовать freerdp-shadow для запуска RDP сервера
  16. Ошибка freerdp-shadow «client authentication failure: -1»
  17. Как запустить RDP сервер с xrdp
  18. Как из Linux подключиться к другому Linux по RDP
  19. Как подключиться к Linux из Windows
  20. Удалённый доступ к Linux с помощью VNC
  21. Шаг 1. Установка рабочей среды XFCE
  22. Шаг 2. Установка TightVNC
  23. Шаг 3. Настройка пароля
  24. Шаг 4. Настройка скрипта запуска
  25. Шаг 5. Запуск VNC сервера
  26. Шаг 6. Подключение из Windows
  27. Шаг 8. Настройка systemd
  28. Использование RDP для удалённого подключения
  29. Подключение к Linux из Windows по SSH
  30. Использование Putty для подключения к Linux
  31. Выводы

HackWare.ru

Этичный хакинг и тестирование на проникновение, информационная безопасность

RDP в Linux: запуск сервера и подключение к Windows

Оглавление: Всё о 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 и производные выполните команду:

Если пакеты freerdp2-x11 и freerdp2-shadow-x11 не найдены, то поищите пакет с именем freerdp.

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

Как подключиться командой freerdp

Для подключения к удалённому рабочему столу с помощью xfreerdp, запустите команду вида:

  • /f — опция означает открыть удалённый стол в полноэкранном режиме
  • /u:ИМЯ-ПОЛЬЗОВАТЕЛЯ — имя учётной записи на компьютере, к которому подключаемся
  • /p:ПАРОЛЬ — пароль указанной учётной записи
  • /v:ХОСТ[:ПОРТ] — IP адрес или имя компьютера, к удалённому столу которого выполняется подключение. ПОРТ указывать необязательно

Например, я хочу открыть удалённый стол компьютера с IP адресом 192.168.0.101, на котором имеется пользователь Tester с паролем 1234, причём я хочу открыть удалённый рабочий стол в полноэкранном режиме, тогда команда следующая:

Для переключения между полноэкранным режимом и оконным, используется сочетание клавиш Ctrl+Alt+Enter.

При первом подключении появляется следующее сообщение о проблеме с сертификатом:

Поскольку используются самоподписанные сертификаты без добавленного в хранилище приватного CA (центра аутентификации, удостоверяющего центра), то единственный выбор, это согласиться доверять указанному сертификату, для этого введите Y.

В полноэкранном режиме вы можете отключиться от удалённого рабочего стола двумя способами:

  • нажать крестик на верхней панели
  • меню «Пуск» → Выключение → Отключиться

Для запуска в оконном режиме не используйте опцию /f:

Опции xfreerdp

У программы xfreerdp множество опций, далее выбраны самые интересные из них:

Как в freerdp создать общие папки

С удалённым рабочим столом, подключённым по RDP, можно иметь совместные папки. Рассмотрим несколько примеров.

Чтобы подключить все точки монтирования в текущей системе как совместные папки на удалённом рабочем столе используйте опцию +drives, например:

На скриншоте показан удалённый стол Windows, в котором доступны папки Linux системы, из которой сделано подключение по RDP:

Чтобы подключить только домашнюю папку текущего пользователя Linux в качестве сетевой папки к компьютеру по RDP укажите опцию +home-drive:

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

С опцией /drive:ИМЯ,/ПУТЬ/В/LINUX можно подключить любую папку с любым именем. В качестве /ПУТЬ/В/LINUX должен быть указан путь в текущей системе, а ИМЯ это то имя, которое будет иметь шара в удалённой системе. Например, чтобы подключить корневую папку текущей системы (/) к удалённой с именем root:

Как вывести удалённый рабочий стол на другой монитор

Если у вас несколько мониторов, то вы можете выбрать, какой из них использовать для удалённой системы. Чтобы вывести список мониторов запустите команду:

Выбранный идентификатор монитора (или нескольких мониторов) укажите с помощью опции /monitors: [, [,…]].

Как установить размер окна удалённого рабочего стола

В следующем примере выполняется подключение к хосту rdp.contoso.com с именем USER и размером 50 процентов от высоты.

Читайте также:  Greylink для windows 10

Если вместо высоты (h) установлена ширина (w), примерно как /size:50%w, то будет использоваться 50 процентов ширины.

Как пользоваться rdesktop

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

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

Как подключиться к удалённому рабочему столу с rdesktop

Для подключения к RDP с rdesktop используйте команду вида:

Как обычно, в самом начале возникнет проблема с сертификатом:

Набираем yes.

Затем возникнет ошибка:

Она вызвана тем, что не настроена аутентификация на уровне сети (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 и производные выполните команду:

Для установки freerdp в Arch 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 нам известно, для вычисления хеша нужно выполнить команду вида:

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

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

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

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

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

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

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

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

  • x,y — координаты верхнего левого угла прямоугольника
  • w — ширина прямоугольника
  • h — высота прямоугольника
Читайте также:  Подключить usb цап windows 10

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

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

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

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

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

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

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

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

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

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

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

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

Как из Linux подключиться к другому Linux по RDP

Каких-то особенностей при подключении с использованием программы xfreerdp нет, достаточно запустить сервер RDP, причём, если вы используете freerdp-shadow, то опции /sam-file:SAM /sec:nla также нужны:

Либо запустите xrdp-sesman и xrdp.

А затем подключение ничем не отключается от подключению к Windows:

Что касается rdesktop, то её не удалось заставить работать ни с одним из рассмотренных серверов RDP под Linux — если вы знаете, как это сделать, то пишите в комментариях.

Как подключиться к Linux из Windows

В мире ИТ существует уже довольно широкий спектр операционных систем, начиная с серверных, заканчивая операционными системами для мобильных устройств. В обычных пользовательских компьютерах и в серверах довольно часто используются две ОС — Linux и Windows. Поэтому очень часто возникают ситуации, когда приходится подключаться по сети из одной операционной системы к другой для выполнения разнообразных операций.

В этой статье мы рассмотрим варианты подключения к Linux из Windows. Существуют бесплатные и условно бесплатные утилиты вроде AnyDesk или TeamViewer, но установка их довольно тривиальна и не нуждается в дополнительном пояснении. Утилиты подобного рода обладают рядом ограничений при бесплатном некоммерческом использовании, либо их функциональность не удовлетворяет тем или иным потребностям пользователя. Мы рассмотрим полностью бесплатные способы как подключится к Linux из Windows.

Удалённый доступ к Linux с помощью VNC

На сегодняшний день самое популярное удаленное подключение к Linux из Windows, с использованием привычный в Windows графического интерфейса, является VNC (Virtual Network Computing) — утилита, использующая протокол RFB (Remote FrameBuffer — удалённый кадровый буфер). Управление осуществляется путём передачи нажатий клавиш на клавиатуре и движений мыши с одного компьютера на другой и ретрансляции содержимого экрана через компьютерную сеть.

В качестве сервера VNC в данном примере будет использоваться TightVNC, установленный в Ubuntu 20.04. Для установки сервера VNC необходимо выполнить ряд действий:

Шаг 1. Установка рабочей среды XFCE

Xfce — одна из самых легковесных рабочих сред, используемых в Linux, она будет быстро работать даже при слабом и нестабильном сетевом подключении. Установите её с помощью команд:

sudo apt update

sudo apt install xfce4 xfce4-goodies

Шаг 2. Установка TightVNC

Далее установите TightVNC:

sudo apt install tightvncserver

Шаг 3. Настройка пароля

Перед началом выполнения всех действий необходимо задать пароль пользователя VNC. Выполните команду:

Вам будет предложено создать новый пароль, а также пароль только для просмотра. Откажитесь от второй опции:

Завершите процесс vncserver:

vncserver -kill :1

Шаг 4. Настройка скрипта запуска

Отредактируйте скрипт, который выполняется после запуска VNC-сервера:

Он должен содержать такой текст:

#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
startxfce4 &

Сделайте файл исполняемым:

Шаг 5. Запуск VNC сервера

На этом этапе уже можно запустить VNC-сервер с помощью команды:

Шаг 6. Подключение из Windows

Для того, чтобы подключиться из Windows к вашему Linux-серверу, используйте TightVNC Viewer.

Укажите IP-адрес компьютера, к которому нужно подключиться, и номер порта в поле Remote Host. В данном примере — 192.168.56.102::5901:

После того, как будет введён пароль, вы должны увидеть рабочий стол Xfce:

Шаг 8. Настройка systemd

Для того, чтобы запуск вашего VNC-сервера добавить в автозагрузку надо использовать systemd. Создайте новый файл сервиса systemd:

sudo nano /etc/systemd/system/vncserver@.service

Его содержимое должно быть следующим:

[Unit]
Description=Systemd VNC server startup script for Ubuntu 20.04
After=syslog.target network.target
[Service]
Type=forking
User=ubuntu
ExecStartPre=-/usr/bin/vncserver -kill :%i &> /dev/null
ExecStart=/usr/bin/vncserver -depth 24 -geometry 800×600 :%i
PIDFile=/home/ubuntu/.vnc/%H:%i.pid
ExecStop=/usr/bin/vncserver -kill :%i
[Install]
WantedBy=multi-user.target

Измените имя пользователя ubuntu и рабочего каталога ubuntu на нужные вам значения. Если у вас запущен VNC-сервер, остановите его:

Читайте также:  Ошибка 6008 eventlog windows 10 что это

vncserver -kill :1

Сообщите systemd о появлении нового сервиса:

sudo systemctl daemon-reload

Добавьте запуск вашего нового сервиса в список автозагрузки:

sudo systemctl enable vncserver@1.service

sudo systemctl start vncserver@1

Использование RDP для удалённого подключения

Помимо VNC, для управления Linux-сервером из Windows можно воспользоваться RDP (Remote Desktop Protocol). Для этого на компьютере с Ubuntu 20.04 установите утилиту xrdp:

sudo apt install xrdp

Для корректной работы сервиса необходимо добавить пользователя xrdp в группу ssl-cert:

sudo adduser xrdp ssl-cert

sudo apt-get install xfce4

Добавьте Xfce в сессии RDP в качестве рабочего стола по умолчанию:

Перезапустите сервис xrdp:

sudo systemctl restart xrdp.service

Процедура подключения из Windows к Linux-серверу по протоколу RDP почти ничем не отличается от подключения к удалённым Windows-серверам. Введите IP-адрес сервера, логин и пароль пользователя в Linux:

Если всё сделано правильно, вы увидите рабочий стол Xfce:

Подключение к Linux из Windows по SSH

Для подключения к компьютеру под управлением Linux по протоколу SSH из Windows можно воспользоваться PowerShell. Сначала становите OpenSSH Client, если ещё не установлен. Запустите на вашем компьютере PowerShell от имени администратора системы и выполните следующую команду:

Get-WindowsCapability -Online | ? Name -like ‘OpenSSH*’

Это необходимо для того, чтобы узнать текущую версию SSH-клиента. В данном примере доступна версия OpenSSH.Client-0.0.1.0. Установите OpenSSH.Client с помощью команды:

Add-WindowsCapability -Online -Name OpenSSH.Client

Для того, чтобы подключиться к устройству, на котором запущен SSH-сервер, необходимо ввести имя пользователя и IP-адрес. Команда для подключения по SSH используя PowerShell выглядит так:

Здесь ubuntu — имя пользователя на удалённом компьютере, а 192.168.56.1 — IP-адрес Linux-сервера, на котором запущен демон SSH.

При первом подключении необходимо подтвердить использование специального персонального ключа для шифрованного соединения по SSH-протоколу (введите слово Yes), затем введите пароль пользователя (в данном случае для пользователя ubuntu):

Как видите, соединение прошло успешно. Теперь можно выполнять все команды так же, как если бы вы их выполняли используя стандартный Linux SSH-клиент:

Для завершения терминальной сессии на удалённом компьютере введите команду exit. Теперь вы знаете как выполняется подключение к Linux из Windows по SSH.

Использование Putty для подключения к Linux

Пожалуй, одним из самых популярных способов подключения к Linux из Windows является кроссплатформенная утилита Putty — небольшая по размерам, но очень часто незаменима для подключения по таким протоколам как SSH, Telnet, rlogin и даже с помощью последовательных портов.

Для обычного подключения к Linux-серверу по протоколу SSH достаточно в поле Host Name (or IPaddress) указать его IP-адрес и нажать кнопку Open (в данном примере Linux-сервер имеет IP-адрес: 192.168.56.102):

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

Далее нужно будет ввести логин и пароль. Если всё сделано правильно, запустится удалённая сессия терминала Linux:

Мало кто знает, что Putty позволяет запустить почти любое приложение, установленное на компьютере с Linux, по сети в Windows. Для этого на компьютере с Windows нужно установить собственный X-сервер. В данном примере воспользуемся Xming.

Скачайте Xming с официального сайта. Установка довольно тривиальная, поэтому не будем на ней останавливаться. Ничего не меняйте в процессе установки. Просто нажимайте кнопку Next до тех пор, пока программа не установится и не запустится:

Когда установка Xming завершится, откройте Putty и в настройках сессии для вашего подключения в разделе SSH -> X11 включите флажок напротив опции Enable X11 forwarding, а также, в строке Отображение дисплея X впишите значение localhost:0, после чего откройте сессию подключения с помощью кнопки Open:

В открывшемся терминале Putty введите консольное название программы, обладающей графическим интерфейсом. В данном примере введено название графического редактора drawing:

(Знак & позволит запустить программу в фоновом режиме, в этом случае в окне Putty можно будет выполнять и другие команды):

Как видите, Linux-приложение drawing успешно запустилось по сети на X-сервере, установленном в Windows. С ним можно работать так же, как и с локальным приложением.

Выводы

Сегодня не существует слишком уж больших проблем для подключения к Linux из Windows. Способов существует довольно много. Каждый из них обладает своими достоинствами и недостатками, например, скорость работы VNC, да и других тоже, существенно зависит от скорости сетевого соединения. Существуют также программные средства, позволяющие подключаться к Linux-серверам используя мессенджеры или браузеры.

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