Безлимитные тарифы интернета с высокой скоростью соединения упростили администрирование компьютеров. Сегодня все чаще помощь пользователям оказывается удаленно. Это удобно, ведь не надо тратить время на поездки и возможность подключиться есть практически круглосуточно.
Сегодня поговорим об удаленном подключении к Ubuntu из ОС Windows.
Зачем удаленно подключаться из Windows к Ubuntu
Не так важно, где находится удаленный компьютер – в соседней комнате или в другом регионе. Интернет убирает подобные ограничения, главное – чтобы связь оставалась стабильной на все время настройки. Это одинаково относится к машинам, работающим хоть на операционной системе Windows, хоть на Ubuntu. Последние используются, например, для развертывания сервера CS или Minecraft.
Причины, по которым требуется удаленное подключение:
- ручной запуск обновлений на компьютере с Ubuntu;
- настройка системы без подключения локального монитора, клавиатуры;
- работа с машиной, расположенной по другому адресу.
Пользователю доступно три варианта коннекта с компьютеров, работающих на ОС Windows. Выбор зависит от удобства и предпочтений: SSH через приложение PuTTY, встроенная поддержка RDP и виртуальная сеть VNC (понадобится предварительная настройка клиента). В любом случае перед работами понадобится выяснить IP-адрес компьютера, к которому предстоит подключаться.
Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Подписаться
Как выяснить IP-адрес компьютера с установленной ОС Ubuntu
Если есть физический доступ к компьютеру с установленной Ubuntu, на нем открывается терминал (комбинация клавиш Ctrl+Alt+T) и вводится команда ifconfig. В отображенном перечне данных имеет значение строка, начинающаяся с inet addr. Если используется подключение через Wi-Fi, то рядом будет его маркер в виде «wlan0». При проводном соединении фраза будет заменена на «eth0». Рядом отображается актуальный IP-адрес машины.
Второй способ заключается в применении функций графического интерфейса. Последовательность действий: найти значок подключения на панели, кликнуть правой кнопкой мышки, выбрать пункт «Сведения о подключении». Там и указан постоянный IP-адрес компьютера. Если доступа к нему нет, то можно выяснить данные через маршрутизатор. В панели управления отображаются активные пользователи вместе с их «контактами».
Подключение к Linux через SSH
Перед подключением на компьютер с Windows устанавливается приложение PuTTY. Это популярный инструмент для организации SSH-соединения, которое предоставит удаленный доступ к командной строке Ubuntu. Важно понимать, что этот режим требует определенного опыта в управлении, ведь здесь нет привычной мыши и «окошек», а все команды передаются в текстовом виде. Отчеты предоставляются в таком же виде.
По умолчанию возможность коннекта через SSH в Ubuntu отключена. Так что предварительно эту систему требуется настроить. Активация функции выполняется вводом команды sudo apt install openssh-server (в той же консоли, где ранее был взят IP-адрес). Логин и пароль подключения будут те же, что используются при входе в операционную систему.
Из-за неудобства управления в текстовой среде этот вариант востребован для удаленной активации более удобных инструментов. Например, тех же протоколов RDP или VNC. В них также пригодится IP-адрес, поэтому получить минимальные навыки работы в консоли все равно рекомендуется. Это упростит решаемые задачи, если по каким-то причинам не удается соединение в других режимах.
Подключение из Windows через RDP
Способ подключения через службу Remote Desktop Protocol (RDP) распространен при работе с машинами на платформе Windows. Популярность инструмента объясняется просто – его поддержка встроена во все виды и версии операционных систем. Все, что понадобится для подключения, уже известно: это IP-адрес, логин и пароль от Ubuntu. Запускается утилита через поиск, называется она «Подключение к рабочему столу».
На компьютере-клиенте требуется установка приложения xrdp.
- Необходимо открыть окно термина нажатием комбинации клавиш Ctrl+Alt+T.
- Ввести текстовую команду sudo apt install xrdp и нажать «Ввод».
- Провести активацию программы командой sudo systemctl enable xrdp.
После установки надо ввести на компьютере-сервере данные доступа и нажать кнопку «Подключить». Если поставить галочку «Разрешить мне сохранять учетные данные», последующие входы будут выполняться без дополнительных вопросов. Но в первый раз пароль всегда вводится вручную. При желании создается отдельный конфигурационный файл (востребовано, когда много компьютеров с удаленным управлением).
После подключения пользователь видит рабочий стол компьютера на Ubuntu. Работа с его окнами не отличается от локального управления – функционируют все настроенные горячие клавиши, перетаскивание мышью. В некоторых версиях Ubuntu, например, 18.04 LTS, RDP не работает, пока не выйдешь из текущего пользователя. Подобные фишки обычно известны системным администраторам.
Подключение через VNC
Есть другой вариант удаленного рабочего стола – сеть Virtual Network Computing (VNC). Она тоже требует предварительной настройки обеих машин. Так, на компьютер с Ubuntu инсталлируется ПО, открывающее доступ к управлению.
Последовательность действий:
- Открыть окно терминала.
- Ввести команду sudo apt update.
- Установить сервер: sudo apt install tightvncserver.
- Активировать его: sudo tightvncserver.
Система предложит ввести пароль для подключения. Он понадобится при активации удаленного соединения, поэтому стоит записать (запомнить) внесенные данные.
На этом все! TightVNC Server готов к работе, остается следом настроить компьютер на Windows. Программа доступна на официальном сайте разработчика в двух версиях: 32 и 64-бит.
После инсталляции и запуска достаточно ввести IP-адрес хоста и пароль доступа, введенный после активации сервера на Ubuntu. Схема работы VNC аналогична предыдущему примеру: пользователь видит перед собой удаленный рабочий стол и управляет функциями операционной системы, как будто сидит за компьютером локально.
Время на прочтение11 мин
Количество просмотров359K
В службу технической поддержки RUVDS регулярно обращаются по поводу GUI и удаленного доступа к нему на виртуальных серверах с Linux, несмотря на то что в интернете достаточно много материалов освещающих эту проблему. Поэтому, для наших пользователей мы решили собрать всё по этой теме в одну статью.
Введение
На всякий случай возможно стоит упомянуть, что SSH — основной способ предоставления доступа к линуксовым виртуалкам на RUVDS. Большая часть действий описываемых в этой статье будет осуществляться именно таким образом.
Для подключения необходимо найти SSH-клиент для вашей операционной системы.
Windows:
- PuTTY: Telnet/SSH-Клиент
- OpenSSH для Cygwin
- OpenSSH для MinGW
- WinSCP
Linux:
- OpenSSH; если Вы пользуетесь Linux, например Ubuntu, скорее всего всё уже установлено, до нас, так что можно смело писать в терминале: ssh root@[IP].
- PuTTY есть и для Linux, в том числе в официальных репозиториях Debian и Ubuntu.
MAC OS:
- OpenSSH; это бесплатно!
- ZOC (80$!)
- vSSH
Плагины для браузеров:
- FireSSH для Firefox
- Secure Shell для Google Chrome
Установка GUI
Итак, перейдем к установке GUI. Сначала нужно поставить графическую подсистему:
Для Debian/Ubuntu:
$ apt-get update
$ apt-get install --no-install-recommends xserver-xorg xserver-xorg-core xfonts-base xinit libgl1-mesa-dri x11-xserver-utils
Для CentOS:
$ yum groupinstall "X Window System" "Fonts"
Далее следует установка Desktop Environment (DE). Их существует великое множество. Мы рекомендуем ставить на сервер более легковесные среды, а еще лучше, не ставить вовсе. Первые две DE достаточно компактные, функциональные и «привычные».
1. Xfce
Для Debian/Ubuntu:
$ apt-get update
Полная установка:
$ apt-get install task-xfce-desktop
Стандартная:
$ apt-get install xfce4 xfce4-terminal
Можно поставить дополнительно:
$ apt-get install xfce4-goodies
Для CentOS:
$ yum install epel-release
$ yum groupinstall "Xfce"
$ echo "PREFERRED=startxfce4" >> /etc/sysconfig/desktop
2. LXDE
Для Debian/Ubuntu:
$ apt-get update
Полная:
$ apt-get install lxde
Минимальная:
$ apt-get install lxde-core
Для CentOS:
Нет в официальных репозиториях
Добавление русской раскладки:
$ setxkbmap -option grp:switch,grp:ctrl_shirt_toggle us,ru
Сочетание клавиш можно менять на свое усмотрение, например:
$ setxkbmap -option grp:switch,grp:alt_shift_toggle us,ru
Чтобы эта команда запускалась каждый раз при запуске LXDE, нужно добавить в конец файла с помощью вашего любимого vi строку: @setxkbmap -option grp:switch,grp:ctrl_shift_toggle,grp_led:scroll us,ru. Или вот так…
$ echo "@setxkbmap -option grp:switch,grp:alt_shift_toggle,grp_led:scroll us,ru" >> /etc/xdg/lxsession/LXDE/autostart
Следующие две DE являются чрезвычайно легкими. Если уж GUI нужен на сервере, вероятно, стоит использовать именно их.
3. FluxBox
Для Debian/Ubuntu:
$ apt-get update
$ apt-get install fluxbox xterm
Для CentOS:
$ yum install fluxbox xterm
$ echo "PREFERRED=startfluxbox" >> /etc/sysconfig/desktop
4. Openbox
Для Debian/Ubuntu:
$ apt-get update
$ apt-get install openbox xterm
Для CentOS:
$ yum install epel-release
$ yum install openbox xterm
$ echo "PREFERRED=openbox-session" >> /etc/sysconfig/desktop
Далее следуют наиболее популярные на десктопах графические оболочки.
5. Gnome
Для Ubuntu/Debian:
$ apt-get update
Минимальная установка:
$ apt-get install --no-install-recommends lightdm gnome-panel gnome-terminal
Полная установка:
$ apt-get install gnome gnome-shell
Замечание: с настройкой VNC-сервера под Gnome что-то пошло не так… Сервера из репозиториев tightvncserver и vnc4server так и не согласились сотрудничать, поэтому пришлось собрать пару deb-пакетов руками. Если у Вас не получится настроить сервер, то мы можем порекомендовать скачать собранный нами архив с tigervnc-server’ом и поставить его. Для этого:
$ curl -LOk https://ruvds.com/downloads/tightvnc-packages.tar
Или
$ wget https://ruvds.com/downloads/tightvnc-packages.tar $ tar -xvf tightvnc-packages.tar $ cd ./tightvnc-packages $ dpkg -i *.deb || (apt -f install -y ; dpkg -i *.deb)
Для CentOS:
$ yum groupinstall "GNOME"
$ echo "PREFERRED=gnome-session" >> /etc/sysconfig/desktop
6. KDE
Для Debian:
$ apt-get update
Полная:
$ apt-get install kde-full
Стандартная:
$ apt-get install kde-standart
Минимальная установка:
$ apt-get install kde-plasma-desktop
Для CentOS:
$ yum groupinstall "KDE"
$ echo "PREFERRED=startkde" >> /etc/sysconfig/desktop
7. Cinnamon
Для Debian/Ubuntu:
$ apt-get update
$ apt-get install --no-install-recommends cinnamon-core lightdm
Для CentOS:
$ yum install cinnamon
8. MATE
Для Debian/Ubuntu:
$ apt-get update
Полная:
$ apt-get install mate-desktop-environment-extras
Стандартная:
$ apt-get install mate-desktop-environment
Минимальная:
$ apt-get install mate-desktop-environment-core
Для CentOS:
$ yum groupinstall "MATE Desktop"
Если Вы хотите получать доступ к GUI через «Аварийный режим», то необходимо сделать следующее:
$ systemctl set-default graphical.target
Мало того, необходимо обеспечить запуск графической оболочки при старте системы. Для этого можно установить какой-нибудь экранный менеджер (Display Manager, DM), например:
$ apt-get install lightdm
Или в случае с CentOS:
$ yum install lightdm
Если необходимости в доступе из личного кабинета нет, то следует выполнить:
$ systemctl set-default multi-user.target
Заметка: Ubuntu предлагает своим пользователям несколько метапакетов для более удобной установки нужной DE:
Unitu:
$ apt-get install ubuntu-desktop
LXDE:
$ apt-get install lubuntu-desktop
XFCE:
$ apt-get install xubuntu-desktop
KDE:
$ apt-get install kubuntu-desktop
Далее, есть много способов получить удаленный доступ к GUI.
Удаленный доступ
RDP
На виртуальном сервере, в зависимости от OS нужно произвести следующие действия.
Debian:
$ apt-get install xrdp
$ systemctl enable xrdp
$ systemctl start xrdp
CentOS:
$ yum install epel-release
$ yum install xrdp tigervnc-server tigervnc-server-module
$ chcon -t bin_t /usr/sbin/xrdp
$ chcon -t bin_t /usr/sbin/xrdp-sesman
$ firewall-cmd --zone=public --add-port=3389/tcp --permanent
$ firewall-cmd --zone=public --add-port=3389/udp --permanent
$ firewall-cmd --reload
$ systemctl enable xrdp
$ systemctl start xrdp
XDMCP:
$ vi /etc/gdm/custom.conf
[security]
AllowRemoteRoot=true
DisallowTCP=false
[xdmcp]
Enable=true
MaxSessions=30
Далее, если вы используете Windows, подключаемся через встроенный RDP-клиент, Remote Desktop Connection (Подключение к удаленному рабочему столу).
Стандартный порт 3389. Для Linux есть масса клиентов которые можно установить из репозиториев: freerdp и remmina, gnome-rdp, vinagre и т.п.
Для Mac OS:
Также можно пробросить RDP-шный трафик через SSH-туннель. Для этого нужно поправить конфигурационный файл xrdp:
$ vi /etc/xrdp/xrdp.ini
В секцию [globals] нужно добавить строку: address=127.0.0.1
$ systemctl restart xrdp
Проверить, что всё правильно, можно так:
$ nmap -p 3389 [IP]
Starting Nmap 6.47 ( http://nmap.org ) at 2016-10-04 13:07 MSK
Nmap scan report for unspecified.mtw.ru ([IP])
Host is up (0.0087s latency).
PORT STATE SERVICE
3389/tcp closed ms-wbt-server
Затем если вы используете cygwin или mingw, linux или mac os:
ssh root@[IP] -L 3389:localhost:3389
Если PuTTY:
Запустите PuTTY. В древовидном меню слева Connection → SSH → Tunnels. Далее добавляем новый Forwarded Port (Source port: 3389, Destination: localhost:3389). Нажимаем Add.
Далее следуете в секцию Session. Вводите IP вашего сервера в поле Host Name (or IP address). Нажимаете кнопку Open, вводите пароль для подключения по SSH.
Далее для Windows:
VNC
Клиент:
Для Windows:
- www.realvnc.com
- www.tightvnc.com
- www.uvnc.com/downloads/ultravnc.html
Для Linux:
- Можно использовать вышеупомянутый клиент: remmina
- Если в браузере хотите: novnc — HTML5 VNC client
- И ещё куча всяких разных: directvnc, gnome-rdp, krdc, xtightvncviewer, vinagre, xvnc4viewer
Для MAC OS:
OS X предоставляет для этого встроенное приложение Screen Sharing. Можно также использовать Safari
vnc://yourserverip:5901
Сервер: На Вашей виртуальной машине установите VNC сервер:
$ apt-get install tightvncserver
Или
$ apt-get install vnc4server
$ yum install tigervnc-server
Если на Вашей системе работает файрвол необходимо открыть соответствующие порты. Пример для CentOS
$ firewall-cmd --zone=public --add-port=5901/tcp --permanent
$ firewall-cmd --zone=public --add-port=5901/udp --permanent
$ firewall-cmd --reload
Далее выполните:
$ vncpasswd
Password:
Verify:
При возникновении проблем с отображением иконок и шрифтов при использовании xfce4 по Ubuntu/Debian:
$ echo "export XKL_XMODMAP_DISABLE=1" >> ~/.vnc/xstartup
Если вы хотите, чтобы VNC-сервер стартовал автоматически, создайте файл:
$ vi /lib/systemd/system/vncsrv.service
Со следующим содержимым:
[Service]
Environment=RESOLUTION=800x600
Environment=COLOR=16
Environment=DISPLAY=1
[Unit]
Description=VNC Server
[Service]
Type=forking
ExecStart=/usr/bin/vncserver -depth ${DEPTH} -geometry ${RESOLUTION} :${DISPLAY}
ExecStop=/usr/bin/vncserver -kill :${DISPLAY}
ExecReload=/usr/bin/vncserver -kill :${DISPLAY} && /usr/bin/vncserver -depth ${DEPTH} -geometry ${RESOLUTION} :${DISPLAY}
User=root
[Install]
WantedBy=multi-user.target
Делее выполните:
systemctl daemon-reload
systemctl enable vncsrv.service
systemctl start vncsrv.service
Теперь можно подключиться, например, через UltraVNC. Для этого нужно запустить UltraVNC Viewer, в поле VNC Server записать [IP]::5901 (по-умолчанию: 5901, 5902 и т.п. для первого дисплея, второго и т.д. соответственно) и нажать на кнопку подключиться.
Также можно пустить vnc-шный трафик через ssh-туннель. Для этого отредактируйте:
$ vi /lib/systemd/system/vncsrv.service
[Service]
Environment=RESOLUTION=800x600
Environment=COLOR=16
Environment=DISPLAY=1
[Unit]
Description=VNC Server
[Service]
Type=forking
ExecStart=/usr/bin/vncserver -depth ${DEPTH} -geometry ${RESOLUTION} :${DISPLAY} -localhost
ExecStop=/usr/bin/vncserver -kill :${DISPLAY}
ExecReload=/usr/bin/vncserver -kill :${DISPLAY} && /usr/bin/vncserver -depth ${DEPTH} -geometry ${RESOLUTION} :${DISPLAY} -localhost
User=root
[Install]
WantedBy=multi-user.target
Затем если вы используете cygwin или mingw, linux или mac os:
ssh root@[IP] -L 5901:localhost:5901
Если PuTTY:
Запустите PuTTY. В древовидном меню слева Connection → SSH → Tunnels. Далее добавляем новый Forwarded Port (Source port: 5901, Destination: localhost:5901). Нажимаем Add.
Далее следуете в секцию Session. Вводите IP вашего сервера в поле Host Name (or IP address). Нажимаете кнопку Open, вводите пароль для подключения по SSH.
Затем открываете UltraVNC Viewer и в поле VNC Server вводите: localhost::5901 после чего подключаетесь.
Также можете попробовать другие VNC-сервера:
x11vnc — фактически VNC-сервер (как vnc4server или tightvnc), но позволяет получать доступ к уже существующей X-сессии. Т.е. если Вы настроили графическую оболочку таким образом, что она запускается при старте системы, то можно использовать следующий вариант:
$ apt-get install x11vnc
$ x11vnc -storepasswd
$ x11vnc -usepw
$ x11vnc -xkb -noxrecord -noxfixes -noxdamage -display :0 -auth /var/run/lightdm/root/:0 -usepw &
$ disown -h %1
После подключения по VNC (на порт 5900) Вы должны увидеть тоже что и в «Аварийном режиме».
Для старта x11vnc при запуске OS необходимо проделать следующее:
$ vi /lib/systemd/system/xvncsrv.service
Добавляем:
[Unit]
Description=X11VNC
[Service]
Type=forking
ExecStart=/usr/bin/x11vnc -xkb -noxrecord -noxfixes -noxdamage -display :2 -usepw
User=root
[Install]
WantedBy=graphical.target
Далее:
systemctl daemon-reload
systemctl enable xvncsrv.service
systemctl start xvncsrv.service
NX
Теперь немного поинтереснее. Одна замечательная компания NoMachine разработала отличный протокол NX на замену VNC. Клиенты для подключения по этому протоколу бесплатны, а официальное серверное ПО от NoMachine стоит много денег. В свое время, эта же компания поддерживала проект FreeNX работы на котором со временем затихли; текущая версия 0.7.2 от 2008-08-22. Но, к счастью, нашлись люди создавшие форк и назвавшие его x2go. К сожалению, x2go не совместим ни с NX от NoMachine, ни с freeNX. Так что клиент берем тут.
Установка сервера на Debian (источник):
Для примера поставим эту DE:
$ apt-get install fluxbox
Далее следуем инструкциям с оффициального сайта:
$ apt-key adv --recv-keys --keyserver keys.gnupg.net E1F958385BFE2B6E
$ echo "deb http://packages.x2go.org/debian jessie main" > /etc/apt/sources.list.d/x2go.list
$ echo "deb-src http://packages.x2go.org/debian jessie main" >> /etc/apt/sources.list.d/x2go.list
$ apt-get update
$ apt-get install x2go-keyring && apt-get update
$ apt-get install x2goserver x2goserver-xsession
Вывод следующей команды должен показать, что x2go готов к работе:
$ systemctl status x2goserver
● x2goserver.service - LSB: Start and stop the X2Go daemon
Loaded: loaded (/etc/init.d/x2goserver)
Active: active (running) since Tue 2016-10-11 22:05:51 MSK; 30min ago
...
А теперь важный момент, подключиться без этого фикса не получится! Нужно найти в файле .profile строку «mesg n» и заменить её на «tty -s && mesg n».
$ vi .profile
Следующая команда выведет путь до исполняемого файла startfluxbox, понадобится при настройке клиента:
$ whereis startfluxbox
Установка сервера на Ubuntu:
$ apt-get install xfce4 xfce4-terminal
$ add-apt-repository ppa:x2go/stable
$ apt-get update
$ apt-get install x2goserver x2goserver-xsession
А теперь важный момент, подключиться без этого фикса не получится! Нужно найти в файле .profile строку «mesg n || true» и заменить её на «tty -s && mesg n».
$ vi .profile
Установка сервера на CentOS:
$ yum install epel-release
$ yum install x2goserver x2goserver-xsession
Клиент для линукс ставится из вышеприведенных репозиториев следующей командой:
$ apt-get install x2goclient
Для Windows — скачиваем, ставим, запускаем. По той же ссылке, приведенной выше, есть клиент для OS X.
Запускаем клиент:
В настройках сессии указываем: в поле Host — IP вашего сервера, в поле Login — root, порт оставляем как есть, session type — тот GUI который ставили.
Как вы можете видеть, есть возможность аутентификации по ключу. В общем много всякого. Посмотрите сами. И звук можно через PulseAudio выводить.
После нажатия Ok вы увидите вот такие вот очаровательные штучки, на которые нужно нажать для получения запроса на ввод пароля и подключения к выбранной сессии:
Замечание: обратите внимание, что в списке нет Вашего любимого FluxBox’а поэтому путь к нему приходится прописывать руками.
Важной возможностью x2go является возможность запуска любого графического приложения вообще без установки DE. Для этого в настройках сессии нужно в секции session type нужно выбрать пункт single application и выбрать выполняемое приложение или ввести путь к программе которую следует запустить.
В этом случае установка ПО на сервер будет выглядеть следующим образом. В случае с Ubuntu:
$ add-apt-repository ppa:x2go/stable
$ apt-get update
$ apt-get install x2goserver x2goserver-xsession
А теперь важный момент, подключиться без этого фикса не получится! Нужно найти в файле .profile строку «mesg n || true» и заменить её на «tty -s && mesg n».
$ vi .profile
$ apt-get install firefox xterm
И настроив сессию как показано ниже, можно будет запустить браузер на удаленном сервере, а на вашей машине откроется окно его отображающее:
Или так; тогда просто откроется окно терминала:
Ниже вы можете видеть скриншот окна статуса текущей сессии. Оранжевыми цифрами отмечены кнопки:
- «Suspend session» — после нажатия на эту кнопку соединение будет разорвано, но сессия останется и будет ожидать повторного подключения. Все запущенные вами на сервере приложения продолжат свою работу;
- «Terminate session» — после нажатия подключение к серверу будет разорвано, а запущенные вами на сервере приложения будут завершены.
TeamViewer
Последний способ удаленного доступа к рабочему столу.
Установка на Ubuntu:
$ apt-get update
$ apt-get install lubuntu-desktop
$ reboot
$ dpkg --add-architecture i386
$ apt-get update
$ wget http://download.teamviewer.com/download/teamviewer_i386.deb
$ dpkg -i teamviewer_i386.deb
$ apt-get -f install
$ teamviewer --passwd [PASSWD]
Установка на Debian:
$ apt-get update
$ apt-get install lxde lightdm
$ reboot
$ dpkg --add-architecture i386
$ apt-get update
$ wget http://download.teamviewer.com/download/teamviewer_i386.deb
$ dpkg -i teamviewer_i386.deb
$ apt-get -f install
$ teamviewer --passwd [PASSWD]
Установка на CentOS:
$ yum groupinstall "X Window system"
$ yum install epel-release
$ yum install fluxbox xterm lightdm
$ systemctl set-default graphical.target
$ reboot
$ curl -o TeamViewer_Linux_PubKey.asc -Lk http://www.teamviewer.com/link/?url=354858
$ rpm --import TeamViewer_Linux_PubKey.asc
$ curl -LOk http://download.teamviewer.com/download/teamviewer.i686.rpm
$ yum install teamviewer.i686.rpm
$ teamviewer --passwd [PASSWD]
Также необходимо принять лицензионное соглашение TeamViewer’а, это можно сделать с помощью «Аварийного режима», либо добавить следующие строки в конец файла /opt/teamviewer/config/global.conf:
$ echo "[int32] EulaAccepted = 1" >> /opt/teamviewer/config/global.conf
$ echo "[int32] EulaAcceptedRevision = 6" >> /opt/teamviewer/config/global.conf
$ teamviewer --daemon restart
Следующая команда покажет состояние демона TeamViewer’а и необходимый для подключения девятизначный TeamViewer ID:
$ teamviewer --info
После запуска клиента скачанного тут, нужно ввести TeamViewer ID в поле Partner UD и нажать на кнопку «Connect to partner». Далее TeamViewer запросит пароль: [PASSWD].
Вместо заключения
Вот вроде бы и всё. Надеемся что эта статья поможет пользователям linux-серверов в настройке комфортного и удобного для них окружения.
- Как настроить удаленный доступ к Ubuntu из Windows
- Шаг 1. Установите для Ubuntu Xrdp и Xfce
- Шаг 2. Подключитесь через Windows-терминал
Читайте нашу статью, если хотите узнать, как настроить подключение к Ubuntu из Windows через удаленный рабочий стол. Мы расскажем о способах удаленного подключения и подробно рассмотрим вариант подключения по RDP.
Как настроить удаленный доступ к Ubuntu из Windows
Существует три основных способа удалённого подключения:
- по SSH (Secure Shell),
- через VNC (Virtual Network Computing),
- по RDP (Remote Desktop Protocol).
Первые два способа хорошо подойдут, чтобы подключиться к Ubuntu из Linux. Самый оптимальный вариант удалённого подключения к Ubuntu из Windows — по протоколу RDP. Этот протокол удаленного управления, который разработала компания Microsoft, позволяет подключаться только к тем к устройствам (компьютерам, серверам, а также виртуальным серверам), на которых установлен сервис терминальных подключений. В Windows сервис терминальных подключений встроен по умолчанию. Подключение к устройствам всегда происходит по порту TCP 3389.
Чтобы настроить удаленное подключение к Ubuntu этим способом, сначала нужно установить на компьютер или сервер пакет Xrdp и графическое окружение Xfce.
Шаг 1. Установите для Ubuntu Xrdp и Xfce
1. Обновите пакеты командой:
sudo apt update
2. Откройте TCP-порт 3389:
sudo ufw allow 3389
3. Установите Хrdp с помощью команды:
sudo apt install xrdp
4. Активируйте Хrdp командой:
sudo systemctl enable xrdp
5. Проверьте статус установки Хrdp:
sudo systemctl status xrdp
Если установка прошла успешно, статус будет active:
Как установить Ubuntu RDP
6. Затем установите графическое окружение рабочего стола Xfce:
sudo apt install xfce4
7. Запустите Хrdp командой:
sudo systemctl start xrdp
Совет: если вы хотите остановить работу xrdp, введите команду:
sudo systemctl stop xrdp
Готово, вы установили в Ubuntu Xfce и Хrdp. Теперь к Ubuntu можно подключиться через удалённый рабочий стол.
Шаг 2. Подключитесь через Windows-терминал
Обратите внимание: Для работы через удалённый рабочий стол вам понадобятся данные учётной записи Ubuntu, а также IP-адрес устройства, к которому вы планируете подключиться. IP-адрес сервера указан в информационном письме, которое пришло на контактный email при заказе услуги, а также в карточке услуги на вкладке “Управление”.
1. Откройте меню терминала RDP сочетанием клавиш Win+R. Затем в поисковую строку введите “mstsc”:
Настройка Ubuntu RDP
2. Укажите IP-адрес устройства, к которому планируете подключиться, и кликните Подключить:
3. Введите данные учётной записи Ubuntu, в которой хотите работать, и нажмите ОК:
Подключение к рабочему столу Ubuntu
Готово, вы подключились к Ubuntu из Windows.Теперь вы можете работать в операционной системе через удаленный рабочий стол.
Remote Desktop Protocol (RDP) enables users to establish a secure connection to remote computers over a network, allowing them to access files, applications, and system resources as if they were physically present.
Microsoft developed RDP primarily for Windows, but it also works for Linux, macOS, Android, and iOS devices, making it a versatile solution for remote access across different operating systems.
This article will show you how to connect to an Ubuntu system from Windows using RDP.
Prerequisites
- A client Windows machine.
- A host machine with Ubuntu installed.
- Sudo or root privileges on the host machine.
How to Connect to Ubuntu Remote Desktop From Windows
The RDP client is preinstalled on Windows. However, the Ubuntu system must be configured before it accepts incoming RDP connections.
Follow the steps in the sections below.
Install xrdp on Ubuntu
xrdp is an RDP server for Linux that listens for and accepts RDP connections from clients. Ubuntu systems usually do not have xrdp installed by default.
To install xrdp on Ubuntu, take the following steps:
1. Update the Ubuntu packages list:
sudo apt update
2. Install xrdp with the following command:
sudo apt install xrdp -y
3. Check the xrdp server status:
sudo systemctl status xrdp
The output confirms the xrdp is active.
Configure xrdp Port (Optional)
The <strong>xrdp</strong>
server listens for incoming RDP connections on port number 3389. Using a non-standard port for RDP connection is a form of protection through obscurity. It is not a robust security measure, but it protects a system from rudimentary brute-force attacks.
To instruct xrdp to listen on a different port, take the following steps:
1. Use a text editor, like Vim, to edit the xrdp configuration file, xrdp.ini:
sudo vim /etc/xrdp/xrdp.ini
2. Locate the port
directive in the [Globals] section and set the desired value. In this example, the RDP port is 49952
:
port=49952
3. Save the changes and exit the file.
4. Restart the xrdp server to apply the changes:
sudo systemctl restart xrdp
There is no confirmation message after the server restarts.
Open a Port for Incoming Traffic in ufw
An active firewall on the Ubuntu system, such as ufw, can block traffic on specific ports. Configure the firewall and allow traffic on the desired port to ensure successful RDP connections.
Take the following steps:
1. Check the ufw firewall status:
sudo ufw status
If the firewall is inactive, use the following command to turn on ufw:
sudo ufw enable
2. Allow traffic on port 3389
or choose a different port for your RDP connection. The following command allows RDP connections on port 49952
:
sudo ufw allow 49952/tcp
Modify the command to open a different port number for RDP connections.
3. Reload the ufw firewall tool to apply the changes:
sudo ufw reload
Note: If you want to access the Ubuntu machine from outside its local network, configure port forwarding on the router or adjust external firewalls.
Configure Remote Desktop Connection on Windows
To initiate an RDP connection to a remote Ubuntu system from Windows, take the following steps:
1. Type rdp in the Windows search box.
2. Open the Remote Desktop Connection app.
3. Enter the IP address or name of the remote Ubuntu system in the Computer field.
If you change the default port number for RDP connections on Ubuntu, enter the port number after the IP address in the following format:
IP_address:port_number
4. Type the username of the Ubuntu user for the RDP connection.
5. (Optional) Save the connection details for future use.
6. (Optional) The Remote Desktop Connection (RDP) app in Windows enables users to configure the RDP session. The main configuration options are split into several sections:
- Display. Adjust the size and color settings of the remote desktop window.
- Local Resources. Decide which local devices (keyboards, audio, and printers) to share with the remote system.
- Experience. Modify visual effects like desktop background and font smoothing based on network speeds.
- Advanced. Fine-tune server authentication settings, set up a Remote Desktop Gateway server, and more.
7. Click Connect.
Log in to Ubuntu System
Enter the password for the Ubuntu RDP user and click OK.
You are now able to interact with the Ubuntu machine via the established RDP session.
Ubuntu RDP From Windows: Extra Tips + Best Practices
To set up a smooth and secure RDP connection from Windows to Ubuntu, focus on more than basic configuration. Optimize hardware, internet speed, and security settings to improve performance and responsiveness.
The following text explains best practices and useful tips for RDP from Windows to Ubuntu.
Minimum vs. Optimal Hardware Requirements
The RDP connection quality from Windows to Ubuntu depends on the system’s hardware capabilities and the type of tasks and applications running on the Ubuntu system.
The Ubuntu system should meet the following requirements:
REQUIREMENTS | MINIMAL | RECOMMENDED |
---|---|---|
CPU | Single-core 1 GHz+ | Dual-core 2 GHz+ |
RAM | 2 GB+ | 8 GB+ |
Storage | 25 GB+ | 50 GB+ (SSD) |
Network | Basic NIC | Stable broadband (Ethernet NIC) |
Graphics | Integrated graphics or entry-level GPU | Dedicated GPU |
Ideal Internet Speed for RDP Connections
Certain tasks require a minimal level of responsiveness and visual quality. The table offers an overview of minimal and recommended bandwidth per connection for general RDP tasks:
Tasks | LOCAL NETWORK | INTERNET |
---|---|---|
Text editing | 1 Mbps | 1 Mbps |
Web browsing | 5 Mbps | 2-5 Mbps |
Video streaming | 10-15 Mbps | 5-10 Mbps |
Beyond bandwidth, factors such as server load, network latency, and packet loss impact RDP performance. For the best experience, prioritize low-latency connections and stable network conditions.
xrdp Black Screen Issue Troubleshooting
Users sometimes encounter a black screen when using xrdp with specific Ubuntu configurations. The screen appears after establishing an RDP session and prevents users from interacting with the Ubuntu system.
To try and resolve the black screen issue, use the tips from the sections below.
Check Log Files
Log files provide valuable information about potential errors. Access the /var/log/xrdp.log using the following command:
sudo vim /var/log/xrdp.log
Look for warnings and error messages on the log timeline.
The /var/log/xrdp-sesman.log file contains entries about session startups and shutdowns, operational messages, and warnings. Use the following command to access the log:
sudo vim /var/log/xrdp-sesman.log
Check for errors occurring when a new session is initiated and for other backend-related issues.
Set max_bpp in xrdp.ini File
The bits per pixel (bpp) value defines the number of bits used to represent the color of a single pixel. High bpp values increase the data that needs to be transferred, which affects performance and causes compatibility issues.
Use the following command to access the xrdp.ini configuration file and check the max_bpp
value:
sudo vim /etc/xrdp/xrdp.ini
Set the max_bpp
value in the [Globals] section to 24
, as the default value of 32
bpp sometimes causes issues. If there are other max_bpp
values under individual sections, adjust them as well.
Save the changes and restart the xrdp service to ensure the changes take effect.
Reinstall xrdp
A straightforward way to resolve configuration or compatibility issues is to reinstall xrdp.
Run the following to remove the xrdp package and delete its configuration files:
sudo apt remove --purge xrdp -y
Initiate a fresh xrdp installation from Ubuntu repositories with:
sudo apt install xrdp -y
After the installation, modify the xrdp configuration files again.
Install a Different Desktop Environment
The default Ubuntu GNOME desktop occasionally has compatibility issues with xrdp. Install an alternative Ubuntu GUI, such as the XFCE desktop environment, and attempt to establish an RDP connection.
Security Measures
Secure an RDP session from Windows to Ubuntu to prevent unauthorized access and data breaches. Proper security measures include hardening the Windows client and Ubuntu host, restricting network access, and enforcing strong authentication policies.
The following sections present key steps to enhance security.
Windows
- Update Windows regularly to ensure the Remote Desktop Connection app is up-to-date with the latest security patches.
- Limit the number of simultaneous active RDP sessions.
- Disconnect from an RDP session when it is not being used and set timeouts for idle sessions.
Network
- Use a firewall to restrict RDP access to specific IP addresses.
- Change the default RDP port (3389) to a non-standard port number.
- Use a VPN to encrypt the data transfer between client and host machines.
- Alternatively, use SSH port forwarding to create an encrypted tunnel for the RDP session if a VPN is not an option.
Linux
- If you use xrdp, edit the /etc/xrdp/sesman.ini file to specify which users can establish an RDP connection.
- Create dedicated accounts for RDP to restrict access to critical systems or data.
- Implement two-factor authentication for RDP sessions. xrdp does not natively support 2FA but can be integrated with other authentication tools.
- Temporarily lock user accounts after multiple unsuccessful login attempts.
- Enforce strong password policies for RDP user accounts.
Reduce Resolution and Color Depth for Performance Boost
Enhance the RDP session performance by adjusting the color depth and screen size from the Windows RDP client.
To reduce the resolution and color depth, access the Remote Desktop Connection app and:
1. Open the Display tab.
2. Drag the Display configuration slider left to reduce the resolution. For optimal performance on slower connections, 1280×720 resolution is a good choice.
3. Expand the dropdown in the Colors section and choose High Color (16-bit) to reduce the color depth.
Reducing the screen size and color depth is especially beneficial for low-bandwidth or unreliable network connections.
Conclusion
This tutorial explained how to initiate an RDP session from your Windows system to a remote Ubuntu machine. It also elaborated on useful tips and best practices for a high-quality and secure connection.
Next, learn how to SSH to a remote server from Windows, Linux, or Mac.
Was this article helpful?
YesNo
Обычно мы рассказываем об операционной системе Debian 12 в качестве промышленного сервера, в данном руководстве речь пойдет о рабочей станции или домашнего сервера в качестве Debian 12.
При установке операционной системы мы установили графическую оболочку, можно выбрать Gnome или KDE. Возникла задача подключится к нему удаленно из операционной системы Windows, использую стандартную утилиту — Подключение к удаленному рабочему столу.
1. Установим на Linux Debian 12 необходимые службы
apt update
apt upgrade
apt install xrdp
apt install xfce4
1.1 Внесем необходимые настройки
echo xfce4-session >~/.xsession
1.2 Разрешим доступ
В файле
nano /etc/X11/Xwrapper.config
Поменяем строку:
allowed_users=console
на:
allowed_users=anybody
1.3 Перезапустим службу
service xrdp restart
2. Подключимся с помощью стандартной утилиты Windows
2.1 Запустим приложение и введем ip адрес рабочей станции Debian 12
2.2 Укажем логин и пароль
2.3 Подключение прошло успешно