Linux and windows vnc

Удаленный рабочий стол на Ubuntu

В статье рассказано о настройке возможности подключения к Ubuntu по удаленному рабочему столу (аналогично RDP в Windows). Примеры команд проверены на Linux Ubuntu 16.04 и 18.04.

Мы рассмотрим реализацию с помощью сервера VNC (подключиться к нашему компьютеру можно будет как с помощью клиента VNC, который доступен как для Linux, так и Windows). Также мы рассмотрим возможность использования клиента RDP из Windows, настроив xRDP.

Подготовка системы

Все действия описанные ниже мы будем выполнять с правами суперпользователя. Для этого переходим в режим sudo:

. или заходим под root:

* по умолчанию, в Ubuntu не задан пароль от root и данная команда не сработает. В этом случае сначала задаем пароль руту — passwd root.

Если используется брандмауэр, добавляем правило:

iptables -A INPUT -p tcp —dport 5901 -j ACCEPT

* в данном примере, мы разрешаем входящие соединения на порту 5901. Для работы с несколькими портами, добавляем их по аналогии.

Установка и настройка VNC сервера

Рассмотрим два варианта использования графической оболочки — xfce и gnome.

Если используем XFCE

Установка

Установку выполняем следующей командой:

apt install xfce4 xfce4-goodies tightvncserver

Задаем пароль для доступа по удаленному рабочему столу. Для этого вводим команду:

. на запрос пароля вводим его дважды.

* Если система не затребует второй раз пароль, проверьте внимательно сообщение. Сервер может выдать ошибку, если пароль будет короткий.

После будет предложено ввод пароля для гостевого доступа — можно согласиться (y) и ввести пароль или отказаться (n).

Настройка

Для начала, останавливаем экземпляр VNC сервера:

vncserver -kill :1

* экземпляр :1, по умолчанию, слушает на порту 5900+1 (5901).

Настраиваем VNC сервер:

#!/bin/bash
xrdb $HOME/.Xresources
startxfce4

Снова запускаем vncserver:

Если используем Gnome

Установка

Установку выполняем следующей командой:

apt install ubuntu-desktop gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal vnc4server

Задаем пароль для доступа по удаленному рабочему столу. Для этого вводим команду:

. на запрос пароля вводим его дважды.

* Если система не затребует второй раз пароль, проверьте внимательно сообщение. Сервер может выдать ошибку, если пароль будет короткий.

После будет предложено ввод пароля для гостевого доступа — можно согласиться (y) и ввести пароль или отказаться (n).

Настройка

Для начала, останавливаем экземпляр VNC сервера:

vncserver -kill :1

* экземпляр :1, по умолчанию, слушает на порту 5900+1 (5901).

Настраиваем VNC сервер для текущего пользователя:

#!/bin/sh
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
x-terminal-emulator -geometry 80×24+10+10 -ls -title «$VNCDESKTOP Desktop» &
x-window-manager &

gnome-panel &
gnome-settings-daemon &
metacity &

Снова запускаем vncserver:

Подключаемся к удаленному рабочему столу

Запускаем клиент VNC. Например, в Linux — Remmina, в Windows — TightVNC Viewer или RealVNC. Вводим IP-адрес компьютера с VNC и номер порта:

Будет запрошен пароль — вводим тот, что устанавливали при настройке.

Автозапуск сервиса

Чтобы VNC сервер запускался после перезагрузки, создаем новый юнит в systemd:

[Unit]
Description=VNC server
After=syslog.target network.target

[Service]
Type=forking
User=root
PAMName=login
PIDFile=/root/.vnc/%H:%i.pid
ExecStartPre=-/usr/bin/vncserver -kill :1 > /dev/null 2>&1
ExecStart=/usr/bin/vncserver
ExecStop=/usr/bin/vncserver -kill :1

Читайте также:  Installing windows and sata

Разрешаем автозапуск сервиса:

systemctl enable vncserver

Смена пароля

Для смены пароля на подключения к VNC, вводим команду:

Система напишет, в каком файле на данный момент хранится пароль и запросит ввод нового:

Using password file /root/.vnc/passwd
Password:
Warning: password truncated to the length of 8.
Verify:
Would you like to enter a view-only password (y/n)? n

* как видим, файл для хранения пароля в данном примере — /root/.vnc/passwd; требование по минимальной длине пароля — 8 символов; также после ввода нового пароля система предложит ввод пароля на режим «только для чтения».

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

xRDP для подключения из Windows

Если мы не хотим устанавливать на Windows никакого дополнительного программного обеспечения, а хотим использовать стандартное подключение к удаленному рабочему столу (mstsc), можно установить на Linux xRDP. Для этого вводим:

Установка VNC Server в Ubuntu 18.04

VNC или Virtual Network Computing — это одна из самых популярных технологий удаленного доступа к рабочему столу, которая используется в Linux. Ранее очень часто для доступа к удаленному рабочему столу в Linux использовался VNC сервер x11vnc, но после перехода Ubuntu на Wayland настройка X11vnc стала сложной. Но у него есть несколько альтернатив, например, TigerVNC, который мы сегодня рассмотрим.

В отличие от X11vnc здесь вы не можете подключиться к уже запущенной рабочей сессии, вместо этого каждый запущенный процесс VNC сервера будет создавать свою рабочую сессию на отдельном виртуальном экране дисплейного сервера. Дальше мы рассмотрим как выполняется установка и настройка VNC Server Ubuntu 18.04, а также первоначальная настройка программы для начала работы.

Установка VNC Server на Ubuntu 18.04

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

Чтобы установить VNC server в Ubuntu выполните такую команду:

sudo apt install tigervnc-standalone-server tigervnc-common tigervnc-xorg-extension tigervnc-viewer

Также необходимо установить эмулятор терминала xterm, его программа будет использовать для запуска тестового окружения:

sudo apt install xterm

Для запуска сервера используется команда vncserver. Её синтаксис очень прост:

vncserver порт: номер_дисплея опции

А вот её основные опции:

  • -dry-run — тестовый запуск, не выполнять никаких реальных действий;
  • -verbose — включить более подробный вывод;
  • -useold — запустить VNC сервер только если он ещё не запущен;
  • -cleanstale — очистить оставшиеся файлы после предыдущего запуска;
  • -localhost — разрешить подключения только с локального компьютера;
  • -name — имя VNC сервера, которое будет отображаться при подключении, по умолчанию используется host:display# (username);
  • -geometry — разрешение экрана для запускаемого окружения, например, 1024×768;
  • -depth — глубина цвета, доступны значения: 8, 15, 16 и 24;
  • -fg — не запускать сервис в фоновом режиме и оставить его привязанным к терминалу;
  • -autokill — автоматически останавливать сервер после завершения подключения;
  • -xstartup — программа, которую следует использовать вместо оболочки;
  • -list — список запущенных серверов;
  • -kill — завершить запущенный vnc сервер.

Теперь можно попытаться запустить VNC Server:

vncserver -xstartup /usr/bin/xterm

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

Утилита не только создаст конфигурацию, но и запустит VNC сервер. Посмотреть список запущенных серверов можно командой:

Чтобы завершить запущенный VNC сервер используйте опцию kill и идентификатор дисплея, на котором запущен сервер из предыдущей команды:

Читайте также:  Звуковые утилиты для windows 10

vncserver -kill :1

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

/.vnc/xstartup со следующим содержимым:

#!/bin/sh
dbus-launch —exit-with-session gnome-session &

Это скрипт, который запускает рабочее окружение Gnome, вы также можете запускать и другие окружения. Теперь запущенный VNC сервер появится в списке доступных серверов и вы можете к нему подключиться.

Чтобы показать использование других опций давайте запустим vncserver на четвертом виртуальном дисплее с разрешением экрана 1024×768:

vncserver :1 -geometry 1024×768

Подключение к VNC серверу

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

vncviewer -SecurityTypes VncAuth -passwd /home/sergiy/.vnc/passwd :1

В этой команде мы указываем тип авторизации и передаем файл с паролем, который создали при первом запуске VNC сервера. Перед вами откроется окно удаленного соединения.

Также можно запустить vncviewer Ubuntu без параметров, тогда утилита откроет графический интерфейс, где вам нужно ввести ip адрес машины, на которой запущен сервер, а также номер дисплея или порта:

После этого нужно ввести пароль для подключения и откроется это же окно удаленного соединения:

Выводы

В этой статье мы рассмотрели как выполняется установка VNC на Ubuntu 18.04, а также как настроить программу для полноценной работы.

Как подключиться к серверу по VNC

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

Что такое VNC

VNC (от англ. Virtual Network Computing) – система, позволяющая подключаться к удаленному компьютеру через протокол RFB. Алгоритм работы реализован следующим образом: для соединения используется специальная программа либо панель управления VMmanager, в нее вводятся данные для авторизации, и в результате пользователь получает полноценный доступ к запрашиваемой системе. С помощью этого протокола мы можем работать с компьютером, который находится в другой точке планеты.

Близким по понятию является соединение по RDP, но такой способ обычно ассоциируется с ОС Windows. VNC же больше относится к системам Linux, но также поддерживает и Windows, MacOS, Chrome, iOS, Android и даже Raspberry Pi.

Программное обеспечение распространяется в свободном доступе. Популярные утилиты, которые можно скачать – Ultra VNC remote access tools, TightVNC и VNC Viewer. Подробнее о том, как ими воспользоваться, мы поговорим чуть позднее, а пока давайте рассмотрим преимущества подключения по ВНС.

Особенности VNC

Удаленное подключение обычно осуществляется через протоколы RDP и SSH – они чаще используются для получения доступа к VDS. Но если есть они, зачем использовать ВНС?

Вот некоторые особенности, полезные для некоторых сценариев:

  • Возможность сессионного коннекта, благодаря которому разрешено подключаться нескольким пользователям.
  • VNC-клиент может подключаться к любой другой операционной системе.
  • Поддержка мобильного приложения на iOS и Android.

Важно: для соединения сервер должен использовать KVM. Это аппаратная виртуализация, позволяющая воссоздать физический сервер на виртуальной машине. Также существует другая виртуализация под названием OpenVZ – она разрешает запускать несколько ОС на одной машине.

Как только вы убедитесь, что сервер использует KVM, можно переходить к подключению по ВНС. О том, как это сделать, мы поговорим уже в следующем разделе.

Читайте также:  Virtualdub для windows 10 64 bit

Подключаемся к серверу по VNC

Существует два способа подключения к VDS/VPS по VNS: через панель управления VMmanager и с помощью VNC-клиента. Первый вариант подразумевает установленную панель с приобретенной лицензией. Второй – установленную на компьютер программу (Ultra VNC remote access tools, TightVNC или VNC Viewer). Давайте рассмотрим, как всем этим можно воспользоваться и подключиться к VDS/VPS.

Способ 1: Через панель управления VMmanager

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

  • Запускаем на компьютере PuTTY, в разделе «Session» вводим IP-адрес и кликаем по кнопке «Open».
  • В консоли прописываем логин и пароль для входа. Коннект осуществляется по защищенному протоколу, поэтому ваши данные не будут перехвачены во время соединения. В результате будет отображен текст приветствия с информацией об установленной ОС.
  • Последующие команды мы сможем скопировать и вставить в консоль простым кликом правой кнопкой мыши – это и есть одно из преимуществ такого метода. В консоли хостинга сделать так не получится.
  • Устанавливаем утилиту, позволяющую загружать файлы:
  • Загружаем установщик ISPsystem:
  • Устанавливаем VMmanager:
  • Далее перед нами отобразится окно выбора – нажимаем 1 и жмем «Enter».

Таким образом на машине будет установлена панель управления. Чтобы в нее войти, нужно в браузере ввести ссылку: https:// :1500/vmmgr. В результате будет отображено окно, где нужно активировать лицензию либо воспользоваться ознакомительной версией.

Как только регистрация будет завершена, мы получим доступ к самой панели. Там переходим в раздел «Управление» -> «Виртуальные машины» и в правой части окна кликаем по кнопке «VNC».

Далее будет запущена консоль, в которой следует ввести логин и пароль от VDS.

Вот такими несложными действиями мы смогли подключиться к VDS/VPS через VMmanager. Теперь давайте рассмотрим более простой способ с использованием специальной утилиты.

Способ 2: Через VNC-клиент

Как мы говорили ранее, существует множество различных программ, позволяющих подключаться по протоколу RFB. Не будем рассматривать все возможные варианты, а разберемся в работе утилиты VNC Viewer.

Подключаемся через VNC-клиент:

  • Открываем официальную страницу и загружаем программу под нужную операционную систему.
  • Установим программу и остановимся немного на теории. Так как на ПК разрешено использовать несколько ВНС, для их разделения необходимо указывать номер дисплея. Каждому соответствует номер TCP-порта. Номер порта для дисплея получается прибавлением номера дисплея к базовому номеру — 5900. Дисплею :0 соответствует TCP-порт 5900, дисплею :1 — порт 5901 и так далее.
  • Таким образом, в VNC Viewer следует ввести IP-адрес и приписать к нему порт. Например, 89.11.201.22:5900.
  • Запускаем программу, вводим в нее свое значение и жмем «Connect to…».
  • В случае успешного распознавания виртуальной машины отобразится небольшое окно авторизации, в которое нужно ввести данные для входа.
  • При подключении к системам Linux, будет отображена только консоль, как происходит в случае с SSH. Если соединение происходит на Windows, то VNC Viewer преобразится в окно с графическим доступом к системе.

Почему не удается подключиться?

Ошибки подключения могут быть связаны со следующим:

  • отсутствует подключение к интернету;
  • виртуальная машина не отвечает на пинги;
  • на машине не запущен VNC-сервер;
  • файрвол перекрывает доступ к TCP-порту;
  • неправильно указан номер порта после двоеточия.

На этом наша статья подходит к концу. Надеемся, что у вас не осталось вопросов, и подключение к серверу по VNC прошло без затруднений. Спасибо за внимание!

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