Как настроить удаленный доступ к Ubuntu из Windows. Удаленный рабочий стол Linux Удаленный доступ на ubuntu с windows машины

Удаленное подключение к рабочему столу Linux из Windows с помощью Xming и SSH

В отличие от Windows, в Linux графическая оболочка не является частью ядра системы. Стандартная оконная система для Linux – это X Window System, или, попросту говоря, иксы. Она берет на себя отрисовку графических элементов и взаимодействие с устройствами ввода-вывода. А самое вкусное заключается в том, что эта система имеет прозрачную клиент-серверную архитектуру. Оконная система выполняет роль сервера, а графические приложения – роль клиентов. Как и положено клиентам, они подключаются к серверу и взаимодействуют с ним для отрисовки и для получения событий мыши и клавиатуры.

Но это еще не все! Дело в том, что оконная система может находиться на другом компьютере, а графическое приложение связываться с ней через сеть. Так вы можете запустить приложение на удаленном компьютере, заставив его рисоваться на том компьютере, за которым сейчас работаете. Или наоборот. Или запустить программу на одном удаленном компьютере с отрисовкой интерфейса на другом удаленном компьютере.

1.SSH-клиент. Я установил PuTTY.

2.X Server для Windows. Я выбрал Xming.

Для начала установим соединение по SSH с удаленным компьютером. Для этого запускаем PuTTY. Вводим IP-адрес компьютера Linux

Теперь переходим в раздел Connection / SSH / X11 и включаем перенаправление графического интерфейса. В качестве расположения X-сервера водим IP-адрес компьютера Windows, за которым сейчас сидим (это будет скорее всего 127.0.0.1)

Кроме того, чтобы вместо русских букв не всплыли крокозябли, желательно в разделе Window / Translation установит правильную кодировку (у меня – UTF8 – стандартная кодировка на Debian и Ubuntu). Возвращаемся в раздел Session, сохраняем настройки и подключаемся к компьютеру Linux. В случае успешного подключения мы вводим логин и пароль и видим текстовую консоль. С ее помощью мы можем удаленно запустить консольные программы, но графические программы не могут рисоваться в консоли. Поэтому оставим на время наше подключение по SSH.

Теперь настроим Xming. Для этого запускаем программу XLaunch – это мастер настроек. На первом шаге указываем способ интеграции в графическое окружение Windows. Мне более всего по душе первый, когда каждое приложение Linux находится в своем окне.

На втором шаге нам предлагается автоматически запускать какое-нибудь приложение вместе с иксами. Я предпочел сделать это позже по мере необходимости посредством уже запущенного нами PuTTY.

На третьем шаге указываем параметры запуска Xming. Опция Clipboard позволяет интегрировать буфер обмена. Также для полноценной работы я ввел следующие параметры:

«-dpi 96? – чтобы поправить размер шрифтов. Значение можно подбирать по вкусу.

«-xkblayout us,ru» – для работы с двумя раскладками клавиатуры.

«-xkbvariant basic,winkeys» – уточнение раскладок.

«-xkboptions grp:caps_toggle» – переключение раскладки клавишей CAPS LOCK.

И, наконец, на следующем шаге сохраняем настройки кнопкой «Save configuration» и запускаем X-сервер кнопкой «Готово».

В системном лотке появится иконка Xming.

Итак, X-сервер запущен. Возвращаемся в нашу консоль, предоставленную соединением SSH. Здесь мы можем удаленно запустить консольное приложение, и в этой же консоли увидим вывод этого приложения. А что теперь будет, если мы попытаемся запустить в этой консоли графическое приложение? Обычно, если вы подключились по SSH и пытаетесь запустить оконное приложение, вы получите ошибку, потому что вы подключились к удаленному компьютеру в консольном режиме, и рисовать окна просто нечем. Однако, в этот раз мы включили перенаправление графики на наш компьютер Windows, на котором уже запущен свой X-сервер. Поэтому, если вы попытаетесь запустить оконное приложение в удаленном консольном терминале, его окно нарисуется на компьютере Windows. Попробуйте, например, набрать следующую команду:

$ gedit &

Амперсанд в конце команды указывает, что программу нужно запустить в фоновом режиме, чтобы во время ее работы консоль была доступна для других действий.

Если по какой-либо причине тебе потребовалось получить доступ к удаленной машине с Ubuntu именно через RDP, то не отчаивайся — все возможно! Для этого существует инструмент под названием xrdp. В данной инструкции я расскажу, как можно подключиться к Ubuntu через RDP из Windows.

Установка необходимых пакетов

Нам потребуется установить в систему два пакета — xrdp и xorgxrdp, но второй итак находится в зависимостях первого, поэтому достаточно выполнить одну команду:

Sudo apt install xrdp

Настройка xrdp

Для корректной работы необходимо, чтобы был открыт TCP порт 3389 — убедись, что твой брандмауэр не блокирует данный порт.
Также, если в системе не установлено ни одно окружение рабочего стола — то стоит его установить, например Xfce, сделать это можно командой:

Sudo apt install xfce4

Также в домашнем каталоге пользователя, от имени которого будет происходить вход в систему должен быть расположен файл .xsession в котором указана команда запуска оболочки, в нашем примере это startxfce4 (для запуска xfce). После создания этого файла выполни команду sudo systemctl restart xrdp для обновления конфигурации xrdp (если он уже был запущен).

Запуск xrdp

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

Sudo systemctl start xrdp

а для того, чтобы xrdp стартовал вместе с системой (не обязательно) команду:

Sudo systemctl enable xrdp

Соответственно остановка и отключение автозапуска сервиса:

Sudo systemctl stop xrdp sudo systemctl disable xrdp

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

Открываем меню подключения к удаленному рабочему столу. Универсальный способ сделать это — через «Выполнить» — нажимаем Win+R и в открывшемся окне набираем mstsc:

В открывшемся окне указываем машины с Ubuntu и жмем «Подключить»:

В появившемся приглашении указываем данные учетной записи в Ubuntu от имени которой будет происходить подключение:

И, после нажатия «Ok», попадаем в систему:

В данном примере была использована Ubuntu 18.04 и Windows 10.

В этой статье рассмотрим несколько способов удаленного подключения из Windows к Ubuntu.

Представьте, вы находитесь в одной комнате, сидя перед компьютером с Windows; данные, которые вам нужны, находятся в другой, на компьютере под управлением Ubuntu. Если оба компьютера находятся в одном доме, нет проблем; но что, если они находятся в одном офисном блоке?

Зачем удаленно подключаться к Ubuntu из Windows?

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

В качестве альтернативы, возможно, вы используете сервер Ubuntu. Возможно, вы настроили его для управления запуском такой игры, как Counter-Strike или Minecraft. В любом случае, настройка удаленного подключения сэкономит много времени и сил.

У вас есть два варианта установки удаленного соединения с компьютером Ubuntu: вы можете использовать Remote Desktop (RDP) или Virtual Network Computing (VNC).

Давайте рассмотрим каждый метод по очереди.

Узнайте IP-адрес вашего ПК Ubuntu

Прежде чем установить соединение с устройством Ubuntu, необходимо знать IP-адрес.

Первый способ самый простой. Физически подойдите к устройству Ubuntu, нажмите Ctrl + Alt + T, чтобы открыть терминал, и введите команду:

Ifconfig

Ищите "inet addr" напротив соединения, которое вы в данный момент используете. Например, если вы пользуетесь Wi-Fi, ищите wlan0 . Если компьютер подключен к сети для Ethernet, ищите eth0 .

Другой способ найти IP-адрес - найти значок подключения на панели, щелкнуть правой кнопкой мыши и выбрать Сведения о подключении . Здесь вы найдете IP-адрес.

Ни один из этих вариантов не можете открыть? Вы также можете подключиться к маршрутизатору напрямую, через браузер вашего компьютера.

После входа в консоль администрирования маршрутизатора, вы сможете увидеть, какие устройства подключены. Просто найдите имя своего устройства Ubuntu, найдите IP-адрес и запишите его.

1. Подключение по SSH

Перед началом работы, возможно, вы захотите установить PuTTY на ваш компьютер (или просто попробовать встроенную функцию Windows SSH). Это позволит вам установить SSH-соединение, которое дает удаленный доступ к командной строке Ubuntu.

Чтобы было понятно: это не опция удаленного рабочего стола, так как нет управления мышью. Но полезно иметь для удаленной установки инструменты, которые вы будете использовать. Однако SSH часто отключен по умолчанию, так что если он не установлен, вам придется это исправить.

Короче говоря, это зависит от того, какую версию Ubuntu вы используете и использовали ли вы SSH ранее.

После установки через терминал (sudo apt install openssh-server ) вы сможете установить удаленное соединение (просто используя IP-адрес и имя пользователя и пароль Ubuntu) и использовать терминал для установки необходимых инструментов для RDP и для VNC.

2. Удаленный доступ с помощью протокола удаленного рабочего стола

Самым простым вариантом является использование протокола Remote Desktop Protocol или RDP. Встроенный в Windows, этот инструмент можно использовать для создания подключения к удаленному рабочему столу в вашей домашней сети. Все, что вам нужно, это IP-адрес устройства Ubuntu.

В то время как необходимое программное обеспечение предустановлено на Windows, вам нужно будет установить инструмент xrdp на Ubuntu. Для этого откройте окно терминала (Ctrl + Alt + T ) и введите:

Sudo apt install xrdp

Sudo systemctl enable xrdp

Подождите, пока он установится, затем запустите приложение Remote Desktop в Windows с помощью меню "Пуск" или "Поиск". Введите rdp и нажмите на Remote Desktop Connection (Подключение к удаленному рабочему столу). Когда приложение будет открыто, введите IP-адрес в поле Компьютер.

Затем нажмите кнопку Показать опции и добавьте имя пользователя для Ubuntu PC. Вы можете нажать Сохранить , чтобы сохранить эти настройки для повторного использования в следующий раз.

Нажмите кнопку Подключить , чтобы начать подключение и введите пароль учетной записи Ubuntu, когда это будет предложено. После этого соединение будет установлено, что даст вам полный доступ к удаленному компьютеру Ubuntu с помощью мыши и клавиатуры. Если вы планируете часто использовать это соединение, вы можете создать для него конфигурационный файл, чтобы сэкономить время.

Устранение проблем с RDP

Хотя RDP является отличным вариантом для удаленного подключения к компьютеру Ubuntu, с приходом Ubuntu 18.04 LTS, такой способ менее надежен. Похоже, что существует проблема с установлением удаленного соединения, когда в учетной записи уже выполнен вход на машине Ubuntu.

Таким образом, простой способ обойти это - просто выйти из пользователя.

Если это невозможно, попробуйте переключить RDP-соединение с использования сервера Xorg на использование X11rdp, подождите, пока это не сработает, а затем снова попробуйте Xorg.

Вы также можете попытаться установить соединение после перезагрузки машины с Linux.

3. Удаленный доступ с помощью виртуальной сети (VNC)

Другой вариант с полной функциональностью удаленного рабочего стола - VNC (Virtual Network Computing). Для этого требуется клиентское приложение на ПК с Windows и сервер на Ubuntu.

На удаленном ПК установите компонент TightVNC Server после проверки обновлений:

Sudo apt update

Установите сервер:

Sudo apt install tightvncserver

И запустите:

Sudo tightvncserver

На этом этапе вам будет предложено установить пароль для подключения. Вам также будет присвоен номер рабочего стола, обычно:1. Запишите это.


Теперь, когда TightVNC Server настроен на Ubuntu, вам нужно будет установить клиент на Windows. Его можно скачать с сайта www.tightvnc.com/download.php - убедитесь, что вы выбрали правильную версию, так как она доступна в 32-битном и 64-битном варианте.

Инструменты TightVNC доступны только в комплекте, поэтому после установки ищите TightVNC Viewer в поиске Windows.

После запуска просмотрщика введите IP-адрес Ubuntu в хост, а затем номер рабочего стола. Это может выглядеть следующим образом:

192.168.0.99:1

Введите пароль при запросе и начните работу на удаленном рабочем столе!

Делаем TightVNC более безопасным

По умолчанию TightVNC зашифрует ваш пароль, но больше ничего. Это делает его небезопасным для подключений через интернет. К счастью, его можно сделать более безопасным, благодаря SSH и Xming.

Для этого скачайте и установите инструмент из Sourceforge. После этого найдите ярлык рабочего стола, щелкните правой кнопкой мыши и выберите Properties (Свойства).


Ищите вкладку Shortcut, а в поле Target введите следующее:

"C:\Program Files (x86)\Xming\Xming.exe" :0 -clipboard -multiwindow

Установите флажок Включить переадреcацию X11 , затем вернитесь к сеансу (Session) в верхней части меню.


Введите IP-адрес удаленного устройства и нажмите кнопку Открыть . Через несколько секунд будет доступно защищенное соединение с удаленным рабочим столом Ubuntu.

Выбор правильного решения для удаленного доступа

Как вы используете эти методы, зависит от того, что вы хотите получить от вашего удаленного рабочего стола.

Доступны три основных варианта:

  • RDP : Он использует протокол Windows Remote Desktop Protocol, через реализацию xrdp с открытым исходным кодом.
  • VNC : Виртуальные сетевые вычисления являются альтернативой RDP, но менее безопасны.
  • VNC через SSH : смешивание VNC с SSH повышает безопасность соединения.

Вы также можете использовать SSH для управления терминалом на вашем компьютере Ubuntu.

Мы показали вам три способа установить удаленное соединение с вашим компьютером Ubuntu или сервером из Windows. Каждый из них имеет свои преимущества и недостатки. Но если вы просто хотите быстро окунуться в Ubuntu, почему бы не попробовать подсистему Windows для Linux, доступную в Windows 10?

Может рассматриваться как акт агрессии, но иногда он просто необходим.

Известны случаи, когда пользователи используют удаленные сессии для уже используемой машины (звучит необычно, но имеет место быть для организации работы с несколькими рабочими столами). Большинство пользователей не знают, когда именно им понадобится данная функциональность.

Опытные пользователи Unix-систем часто говорят о SSH и командной строке, как об инструментах получения доступа к графическому рабочему столу, но существуют отдельные приложения для данной цели.

Портал Techradar протестировал систему VNC и ее функции во многих клиентах. Тем не менее, существуют другие протоколы и виды доступа к удаленному рабочему столу. Растущая популярность подобных клиентов заключается в поддержке нескольких протоколов передачи, поэтому независимо от типа используемого сервера и целевой машины, Вы найдете подходящее решение.

Исследователи придерживались принципа справедливой оценки различных протоколов. Например, NoMachine NX поддерживает подключения VNC, но он проверялся в связке с собственным сервером NX, что вполне разумно.

Клиент TightVNC не тестировался, потому что он очень схож с реализацией TigerVNC. Оба продукта имеют одинаковую кодовую базу, но TigerVNC имеет несколько дополнительных функций.

Как проходило тестирование

Ключевым элементом эффективного клиента удаленного рабочего стола является быстрый отклик на выполняемые операции. Идеальный интерфейс не будет так хорош, если вам нужно ждать по две минуты из-за каждой регистрации нажатия клавиш.

При тестировании проверялась способность удаленно воспроизводить игру Armegatron. В этой нетребовательная игре на OpenGL на обновление экрана требуются доли секунд времени. Результаты могут быть несколько субъективны, но данный способ оказался очень действенным при демонстрации отзывчивости клиентов.

Клиенты были протестированы совместно с локальным компьютером с 4-х ядерным процессором и 16 гигабайтами памяти в гигабитной локальной сети под Ubuntu 14.04.3. В качестве серверов использовался сервер X11 VNC и официальный сервер NX для клиентов NX. Функциональность на базе протокола RDP поддерживается некоторыми продуктами, но на практике не была протестирована.

Сами клиенты работали на виртуальной машине с 2-х ядерным процессом Core i7, 4Гб ОЗУ и Fedora 23.