Как подключиться к Windows из Linux? Удаленное управление ubuntu из windows Как подключиться к рабочему столу ubuntu.

» и вскоре после этого меня попросили рассказать, как сделать то же самое, но наоборот - из Windows к Linux. На первый взгляд может показаться, что задача непростая, но на самом деле, это очень легко.

У читателей может возникнуть вопрос - а зачем это вообще нужно? Ответ прост - для того, чтобы иметь единую точку администрирования. Ведь сколько времени обычно тратится на беготню между компьютерами в попытке разрешить какую-либо проблему! Вы уже знаете, как подключаться к компьютерам под управлением Windows из Linux, а прочитав эту статью, сможете подключаться наоборот - из Windows к Linux, и это значительно облегчит вам задачу администрирования в локальной сети. Итак, приступим.

Допущения

В своей статье я исхожу из того, что в вашей локальной сети уже имеются корректно функционирующие компьютеры под управлением . Чтобы упростить задачу, я буду по схеме 192.168.1.x. При этом намного удобнее использовать статические IP-адреса, иначе вам придется тратить лишнее время на выяснение адреса нужного компьютера.

Программное обеспечение

Вам понадобятся всего два приложения:

На компьютере под управлением Linux для использования в качестве VNC-сервера;
на компьютере под управлением Windows для использования в качестве VNC-клиента.

Установить TightVNC очень легко - просто загрузите инсталлятор и запустите его двойным щелчком. А вот процесс установки приложений в Linux для многих пользователей Windows не так очевиден.

Разумеется, все зависит от того, какой у вас дистрибутив Linux. Но в общих чертах последовательность действий такова:

1. Запустите средство установки и удаления программ - Synaptic, Центр приложений Ubuntu (Ubuntu Software Center), gnome-packagekit и т. п.
2. Введите «x11vnc» (без кавычек) в строке поиска.
3. Отметьте пакеты для установки.
4. Нажмите кнопку «Применить» (Apply), чтобы начать установку.

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

1. Откройте терминал.
2. Выполните команду вида sudo apt-get install x11vnc - в зависимости от того, какой у вас дистрибутив.

После завершения установки можно приступать к подключению.

На компьютере под управлением Linux

Здесь все довольно просто - нужно лишь запустить сервер x11vnc. В справке к данной утилите, которую можно вызвать командой man x11vnc , приводится список доступных опций. Я бы порекомендовал использовать опцию -forever - без нее сервер будет отключаться сразу же после завершения клиентского сеанса. Так что команда, которую следует выполнить в терминале, должна выглядеть так:

X11vnc -forever

Приглашение на ввод следующей команды после этого не появится, даже если использовать символ &. Поэтому стоит добавить строку x11vnc -forever в конце файла «/etc/rc.local », чтобы сервер запускался всякий раз при старте системы.

На компьютере под управлением Windows

Теперь давайте наладим подключение. Запустите установленную в Windows утилиту TightVNC из меню «Пуск» (Start). Появится показанное на рис. A окно, в котором нужно указать адрес для подключения. Отсюда же можно вызвать диалоговое окно настроек (Options).

Рисунок A. Выберите профиль соединения (Connection Profile), наиболее соответствующий вашему типу соединения.

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


Рисунок B. TightVNC можно подключить в режиме просмотра (View) - тогда сеанс будет не интерактивным. Это неплохой вариант для тестового подключения.

Настроив все параметры, нажмите кнопку «Соединиться» (Connect), чтобы подключиться к удаленному рабочему столу (рис. C). Скорость соединения зависит от пропускной способности сети, но в целом TightVNC представляет собой вполне работоспособное решение.

При попытке доступа по VNC к удалённому рабочему столу Linux Mint 19 пришлось столкнуться с тем, что, по сравнению с предыдущими версиями (17, 18), по умолчанию такой возможности не предоставляется. При дальнейших действиях по организации возможности подключения по VNC к узлу под управлением Linux Mint 19 необходимость приложить ряд дополнительных усилий стала напоминать эпизод из фильма:

– Тебя как, сразу прикончить или желаешь помучиться?
– Лучше, конечно, помучиться.
(из к/ф "Белое солнце пустыни")

Началось всё с того, что в настройках (далее имеется в виду графическое окружение XFCE) раздела "Сеансы и запуск" и вкладке "Автозапуск" никакого упоминания о подключении к удалённому рабочему столу не имеется, хотя в предыдущей Linux Mint 18 пункт включения был расположен между обновлением папок пользователя и сетью.



За реализацию сервера VNC в Linux Mint отвечает пакет vino, который в Linux Mint 19 по умолчанию не устанавливается. Данный пакет необходимо установить и, в принципе, его можно легко найти через Synaptic.



Однако этого будет недостаточно. Как показало изучение вопроса, разработчики vino удалили из своего продукта утилиту графической настройки, поэтому настройку vino необходимо будет произвести через конфигуратор dconf-editor.

Выполните в терминале команду, которая установит необходимые компоненты и запустит dconf-editor

Sudo apt install -y vino dconf-editor && sudo dconf-editor

При запуске dconf-editor будет показано предупреждение, что вносимые изменения осуществляются вами на свой страх и риск и для продолжения необходимо нажать на кнопку "I"ll be careful" (я буду осторожен). Для выключения этого показа при последующих запусках dconf-editor снимите галочку в поле "Show this dialog next time".


После запуска графического конфигуратора системы путём последовательного перемещения "gnome – desktop" перейдите в секцию "remote-access"




Если планируется подключаться по клиенту VNC из Windows, то, как пишут, желательно выключить шифрование (двигать движок в соответствующей строке).




Несмотря на то, что это, как говорится, не есть "гуд", но в локальной сети, которой доверяете, данное действие допустимо.

Аналогичным образом поступите с prompt-enabled, иначе на другом компьютере придётся каждый раз "одобрять" удалённое к нему подключение.


В целях какой-никакой защиты установите пароль на подключение, выключив настройку по умолчанию и введя придуманный Вами пароль, например:




Чтобы закрепить данное изменение нажмите на кнопку зелёного цвета.


Закройте конфигуратор и перейдите к настройкам автозапуска. Добавьте в список автоматически запускаемых при старте системы программ ПО vino

/usr/lib/vino/vino-server



Рисунок относится к оболочке XFCE. В Cinnamon и MATE используйте существующие в них настройки автозапуска программ.

Перезагрузите систему.

На компьютере, с которого будете подключаться, создайте соответствующее соединение. На рисунке ниже подключение будет осуществляться с узла Linux, поэтому оно добавляется в программе Remmina.


Обратите внимание, что имя пользователя вводить не надо, вводится только пароль, который был задан при настройке vino через графический конфигуратор dconf-editor.

На рисунке указан узел H-4.vot, что соответствует полному доменному имени узла. В этом случае подразумевается, что DNS сервер Вашей локальной сети умеет сопоставлять выданные DHCP адреса IP именам узлов сети. MikroTik, например, умеет это делать через . Если сервера DNS не имеется или он не умеет этого делать, то назначьте узлу, к которому будете удалённо подключаться, статический адрес (или настройте сервер DHCP на выдачу ему одного и того же адреса) и подключайтесь по IP.

Если всё сделано правильно, то будете иметь удовольствие наблюдать удалённый рабочий стол узла Linux, к которому подключились, а также управлять этим компьютером.


При этом на панели (как правило, внизу) будет отображаться значок (при теме оформления Mint-Y – голубого цвета), отображающий факт удалённого подключения к рабочему столу.


Быстрота реагирования удалённого компьютера на Ваши команды зависит от его аппаратных возможностей, степени загруженности системы, а также количества передаваемых данных по VNC. При рассмотрении вопроса об "отзывчивости" удалённой системы во многих публикациях пишут о проигрыше VNC перед RDP, но ничего лучшего для удалённого подключения к Linux с GUI лично мне встретить не удалось. С целью повышения скорости реагирования конечной системы можно попробовать "поиграться" с настройками качества отображения экрана целевого компьютера в параметрах соединения (см. окно настроек подключения Remmina):


Альтернативное решение – x11vnc ().

Если по какой-либо причине тебе потребовалось получить доступ к удаленной машине с 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.

В этой статье я покажу вам, как можно получить удаленный доступ к компьютеру с Ubuntu. Имеется ввиду доступ к удаленному рабочему столу, т.к. с доступом к консоли все понятно, и наверное SSH особо в описании не нуждается.
Показывать я буду на примере vnc сервера и xrdp. Т.к. если планируете подключаться с компьютера Windows, VNC на нем скорее всего будет работать, мягко говоря не очень быстро, плюс к этому, нужно будет еще поставить VNC клиента на компьютер, а такая возможность есть далеко не всегда. Мы сделаем так, что можно будет подключаться к компьютеру 1) по чистому vnc протоколу, 2) можно будет подключаться по RDP, а уже из под RDP сессии подключаться по VNC к рабочему столу, это позволит не устанавливать дополнительно VNC клиент на компьютер с которого осуществляется подключение.
Требование к этой схеме одно – у вас должен быть белый IP, в идеале лучше использовать VPN или SSH туннель . Давайте начнем с установки VNC сервера на Ubuntu, я предпочитаю x11vnc. Для того что бы его установить нужно набрать в консоли:

Sudo apt-get update sudo apt-get install x11vnc

X11vnc –storepasswd

Будет предложено ввести пароль, и указать, где размещать файл с паролем.
Далее сделаем что бы x11vnc запускался автоматически.

1) Если у вас система использует systemd (например ubuntu 15.04 и выше) нужно создать конфиг:

Sudo nano /lib/systemd/system/x11vnc.service Description=Start x11vnc at startup. After=multi-user.target Type=simple ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /home/sanglyb/.vnc/passwd -rfbport 5906 -shared WantedBy=multi-user.target

Само собой, за место /home/sanglyb должна быть ваша домашняя папка, или путь до файла который был указан при создании пароля, если он отличается.

После этого нужно выполнить команды:

Sudo systemctl daemon-reload sudo systemctl enable x11vnc.service

2) Если у вас система использует upstart (например старые версии ubuntu до 15.04) нужно создать конфиг, лежать он должен в папке / etc / init / :

Sudo nano /etc/init/x11vnc.conf

И нужно вписать в этот файл следующее содержимое:

Start on login-session-start script /usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /home/sanglyb/.vnc/passwd -rfbport 5900 -shared end script

Аналогично примеру с systemd, замените путь до файла с паролем для vnc на ваш.

После чего можно запустить x11vnc сервис.

В первом случае:

Sudo service x11vnc start

Во втором:

Sudo start x11vnc

Либо можно перезгарузить компьютер, и при включении компьютера этот сервис будет запущен.

Далее можно попробовать подключиться к нашему компьютеру по vnc. Если все прошло удачно, и после перезагрузки компьютера vnc сервер будет запущен, можно переходить к следующему шагу – установке xrdp сервера.
Для его установки нужно набрать в терминале:

Sudo apt-get install xrdp

После этого нужно поправить конфиг:

Sudo nano /etc/xrdp/xrdp.ini

В нем уберем все пункты кроме globals и console (xrdp2) и изменить название с xrdp2 на xrdp1, то есть у вас должны остаться 2 секции:

Bitmap_cache=yes bitmap_compression=yes port=3389 crypt_level=low channel_code=1 max_bpp=24 #black=000000 #grey=d6d3ce #dark_grey=808080 #blue=08246b #dark_blue=08246b #white=ffffff #red=ff0000 #green=00ff00 #background=626c72 name=console lib=libvnc.so ip=127.0.0.1 port=5906 username=na password=ask

После чего нужно набрать команду

Sudo /etc/init.d/xrdp restart

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

Xrdp — это инструмент с открытым исходным кодом, который позволяет пользователям получать доступ к удаленному рабочему столу Linux через Windows RDP.

Помимо Windows RDP, инструмент xrdp также принимает соединения от других клиентов RDP, таких как FreeRDP, rdesktop и NeutrinoRDP

Требования Xrdp

  • пакеты xrdp и xorgxrdp
  • Слушает 3389 / tcp. Убедитесь, что ваш брандмауэр принимает соединения

В этой статье я покажу, как вы можете удаленно подключиться к Ubuntu Desktop с компьютера Windows с помощью инструмента Xrdp.

1) Установка на Linux

на Ubuntu 18.04

Во-первых, вам нужно установить Xrdp на Ubuntu

# apt install xrdp Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: xorgxrdp Suggested packages: guacamole xrdp-pulseaudio-installer The following NEW packages will be installed: xorgxrdp xrdp 0 upgraded, 2 newly installed, 0 to remove and 256 not upgraded. Need to get 498 kB of archives. After this operation, 3,303 kB of additional disk space will be used. Do you want to continue? y

Вы должны настроить правило polkit, чтобы избежать всплывающего окна аутентификации после ввода имени пользователя и пароля на экране входа xrdp в windows

# vim /etc/polkit-1/localauthority.conf.d/02-allow-colord.conf polkit.addRule(function(action, subject) { if ((action.id == “org.freedesktop.color-manager.create-device” || action.id == “org.freedesktop.color-manager.create-profile” || action.id == “org.freedesktop.color-manager.delete-device” || action.id == “org.freedesktop.color-manager.delete-profile” || action.id == “org.freedesktop.color-manager.modify-device” || action.id == “org.freedesktop.color-manager.modify-profile”) && subject.isInGroup(“{group}”)) { return polkit.Result.YES; } });

перезапустите службу xrdp

# systemctl restart xrdp

Затем убедитесь, что служба запущена

# systemctl status xrdp ● xrdp.service - xrdp daemon Loaded: loaded (/lib/systemd/system/xrdp.service; enabled; vendor preset: en Active: active (running) since Tue 2018-10-16 02:05:21 WAT; 11min ago Docs: man:xrdp(8) man:xrdp.ini(5) Main PID: 2654 (xrdp) Tasks: 1 (limit: 2290) CGroup: /system.slice/xrdp.service └─2654 /usr/sbin/xrdp

Теперь убедитесь, что вы автоматически запускаете службу при запуске системы.

# systemctl enable xrdp Synchronizing state of xrdp.service with SysV service script with /lib/systemd/systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install enable xrdp

Теперь вам нужно будет проверить свой IP-адрес, потому что вам понадобится его для подключения

# ip add 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6::1/128 scope host valid_lft forever preferred_lft forever 2: ens33: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 00:0c:29:ef:f6:9b brd ff:ff:ff:ff:ff:ff inet 172.16.8.177/24 brd 172.16.8.255 scope global dynamic noprefixroute ens33

Мой IP-адрес — 172.16.8.177. Так что держите это в своем уме.

Xrdp работает с портом 3389, поэтому обязательно откройте его.

UFW по умолчанию отключен, поэтому вам нужно включить брандмауэр и создать правило для xrdp

# ufw enable # ufw allow 3389/tcp

Теперь вы можете продолжить настройку со стороны windows.

На Centos / Redhat 7

Обязательно установите репозитории Epel прежде всего

# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

Теперь установите пакеты xrdp

# yum update && yum -y install xrdp tigervnc-server

Добавьте правило в брандмауэр. На Centos / RedHat ufw не работает, а работает firewalld

# firewall-cmd --permanent --zone=public --add-port=3389/tcp

Затем перезагрузите брандмауэр

# firewall-cmd --reload

Теперь включите и перезапустите службу xrdp

# systemctl enable xrdp && systemctl restart xrdp

Проверьте свой IP-адрес для удаленного подключения в Windows

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

На вашем компьютере windows, таком как windows 10 в нашем случае, запустите средство подключения к удаленному рабочему столу по умолчанию.

Вам нужно будет ввести IP-адрес вашего устройства, и вам будет предложено ввести имя пользователя

Доступ к удаленному рабочему столу Ubuntu / CentOS

Введите IP-адрес и имя пользователя

Теперь подтвердите информацию и запустите соединение.

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

Теперь вас попросят ввести пароль

Теперь подтвердите свои учетные данные. Вы можете увидеть IP-адрес моего Ubuntu в верхней части и страницу входа. Введите свой пароль и наслаждайтесь