Настройка vnc debian 8

Обновлено: 03.07.2024

Virtual Network Computing (VNC) — система удалённого доступа к рабочему столу компьютера. Помогает управлять сервером дистанционно. Пользователь использует клавиатуру и мышь, подключенные к своему компьютеру, для ввода информации, а все содержимое рабочего стола с сервера ретранслируется по сети на его компьютер.

Для работы VNC внутри сервера необходима графическая оболочка, поэтому перед установкой VNC сначала установим её.

Вариантов установки будет три, для каждого своя ОС и разные графические оболочки:

  • ОС Debian 9/10 — оболочка KDE
  • ОС Ubuntu 18/20 — оболочка GNOME
  • ОС Centos 7 — оболочка xfce

На каждую из них установим VNC-сервер и расскажем об особенностях.

Если интересна установка графической оболочки xfce на ОС Debian/Ubuntu, то можете воспользоваться этой инструкцией.

Так как установка на Debian и Ubuntu будет схожа, то рассмотрим её одним пунктом с пометками, какие команды для какой ОС используем.

Еще можно пойти другим путём и установить на сервер операционную систему сразу с графической оболочкой. Такой дистрибутив можно скачать самостоятельно и загрузить через ISO-образ. Мы взяли образ ОС Mint c оболочкой Cinnamon.

В этом случае шаг «Установка графической оболочки» можно пропустить и перейти сразу к настройке VNC-сервера.

А еще у нас есть статья «Как подключиться к встроенному интерфейсу VNC», который мы предоставляем для наших виртуальных серверов.

Установка VNC на сервер Ubuntu/Debian

1. Установка графической оболочки KDE/GNOME

На серверах с ОС Ubuntu/Debian графическую оболочку будем разворачивать с помощью утилиты Tasksel, она установит несколько зависимых пакетов в качестве единой задачи.

Подробнее об утилите Tasksel можно узнать здесь.

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


Затем ставим графическое окружение.

Для Debian 9/10 будем ставить Kde, командой:

Для Ubuntu 18/20 будем ставить Gnome, командой:

Этап загрузки пошёл, ждём 100%.


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

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

Устанавливаем VNC-server командой:

Необходимо определиться, под каким пользователем будете работать в VNC.

Если нужен новый пользователь, создаём его командой:

Указываем пароль два раза и дополнительную информацию — можно поставить пробелы.

На вопрос Is the information correct? [Y/n] , отвечаем “y” (yes) и переходим под пользователя командой:


Настраиваем пароль для подключения по VNC:

Указываем не менее 6 символов, которые нужно будет повторить еще раз. Пароль при вводе виден не будет — так и должно быть, это система защиты.

На вопрос после Would you like to enter a view-only password (y/n)? , отвечаем “n” (нет).


После чего создаём конфигурационный файл, командой:

В него нужно записать код, который мы указали ниже, перейдя в режим вставки (клавиша i на клавиатуре), об этом будет сигнализировать надпись снизу слева -- INSERT -- :

Для Kde содержание будет следующее:


Для Gnome содержимое другое:


Для варианта с загрузкой из образа ISO мы взяли ОС Mint с графической оболочкой Cinnamon.

Для него содержимое файла будет:


Чтобы выйти из редактора vim, нажмите Esc и напишите :wq

Затем копируем файл:

Выходим из-под пользователя ( Ctrl+D ) и перезапускаем сервер командой:

Готово, осталось запустить VNC:

Подключиться на сервер можно по IP_СЕРВЕРА:1 , после чего ввести пароль, который указывали командой vncpasswd несколько шагов назад.

Вот так будет выглядеть подключение по VNC c установленной оболочкой:



Mint Cinnamon (установку этой OC сделали через загрузку образа ISO)


Установка VNC на сервер CentOS

На ОС Centos установка и настройка будет отличаться:

1. Установка графической оболочки xfce

Графическая оболочка доступна в репозиториях EPEL, поэтому устанавливаем его, командой:


Далее ставим саму оболочку:


На скриншоте показан процесс установки.

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

Ставим VNC-server командой:

Добавляем пользователя, если нужен другой, а не root:

Указываем пароль для него:

Переходим под него:

И настраиваем пароль для VNC:

Далее редактируем файл vim

/.vnc/xstartup , мы используем редактор vim, но вы можете использовать тот, что удобен вам. После входа в редактор переходим в режим редактирования, нажав клавишу i на клавиатуре, если активен режим вставки, то появится надпись снизу слева -- INSERT -- .

Содержимое файла изменяем на:


Выходим из редактора vim, нажав Esc и :wq

Даём права на файл:

Выходим из-под пользователя ( Ctrl+D ).

После перезагрузки снова входим под пользователя, которого создавали выше и запускаем VNC:

Подключиться на сервер можно по IP_СЕРВЕРА:1

После чего ввести пароль, который указывали командой vncpasswd пару шагов назад.


Установка и настройка VNC Server на Debian/Ubuntu/Linux Mint

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

Чтобы установить VNC, достаточно выполнить команду:

Вы можете использовать любого пользователя для входа в свой VNC Server, но по соображениям безопасности, я собираюсь создать VNC пользователя для моего VNC Server-а:

Устанавливаем для него пароль:

Теперь переключимся на этого пользователя (vncuser) для создания некоторых конфигурационных файлов для VNC:

После этого, запускаем VNC сервер:

После запуска VNC-сервера, вам будет предложено создать VNC пароль. Устанавливаем любой удобный для вас пароль, но не более 9 символов ( если больше, то он обрежит его).

На рисунке ниже видно как стартанул наш vnc сервер, но нам его нужно немного подредактировать:

запуск vncserver

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

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

Установка Gnome X Window для Ubuntu (на стороне клиента, можно установить и другую среду):

Вот еще моя статья как установить другую графическую оболочку:
Установка GUI на Debian/Ubuntu/Mint

PS: не забываем прописывать нужную строку в конфиг xstartup.

Если вы решите использовать другие графические интерфейсы:

Для Gnome-Desktop Environment

Для KDE-Desktop Environment

Для MATE-Desktop Environment

Для LXDE-Desktop Environment

Для Cinnamon-Desktop Environment

Для Openbox-Desktop Environment

Я собрал это все до кучи и закоментировал не нужные строки, оставил только gnome, т.к я его устанавливал. Вы можете скачать данный конфиг и отредактировать его для настройки своего VNC сервера (для своего графического интерфейса):

Я приведу пример со своим использованием, я юзаю windows 8, по этому я скачал vnc- viewer.

Использование VNC Viewer для просмотра и управления VNC-сервера с удаленного хоста.

Перед тем как использовать vnc-viewer, нужно его скачать. После чего запускаем его и вводим в поле IP адрес хоста (у меня это сделать не получилось и не знаю по чему), я использую виртуальную машину, по этому я ввел следующее:
ubuntu:1

Открылось окно и я ввел свой пароль, который я вводил (создал) немного выше. Вот и все, работает все)

Для начала создадим следующее:

Затем создайте пустой сценарий инициализации и сделайте его исполняемым:

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

Обновим все это:

Сейчас перезапустим наш сервер:

Если вы не можете получить доступ к VNC-сервера, то убедитесь, что вы открыли порты VNC в IPTables:

если не открыли, то открываем их:

и сохраняем все изменения:

Делаем возможность подключения для нескольких пользователей.

Создание локального пользователя, с помощью следующей команды:

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

vncserver для дополнительного сервера

vncserver для дополнительного сервера

Перейдем в домашнюю директорию и отредактируем файл XStartup:

и вставляем в этот файл тоже самое что и для моего первого юзера, берем его от сюда.

Теперь откройте файл /etc/vncserver/vncservers.conf как рут пользователь:

Добавим в уже имеющийся конфиг:

Ребутим наш сервер:

Предотвращение запуск Gnome при загрузке на сервере.

Гном автоматически запускается при загрузке в Ubuntu 12.04 LTS, если мы подключить монитор к нашему серверу мы увидим, что GUI запустился и ждет чтобы мы вошли, это не очень удобно. Сейчас мы это исправим. Чтобы это предотвратить нужно отредактировать файл gdm.conf:

Нужно в этом файле конфигурации закомментировать 6 строчек:

VNC шифрование через ssh туннель

По умолчанию, VNC не является безопасным протоколом, по этому (так безопаснее) мы запустим сервер VNC только на 127.0.0.1 (локальный) и пробросим его через туннель SSH (для этого, есть варианты в Putty).

В Ubuntu нужно отредактировать:

проксирование vnc-server на localhost

проксирование vnc-server на localhost

Запустите PuTTY/ Kitty, введите IP-адрес или имя хоста сервера VNC:

использование vnc через kitty

использование vnc через kitty

Переходим на другую вкладку, Session->Connection->SSH.

использование vnc через kitty, настройка

использование vnc через kitty, настройка

Через команду можно посмотреть что все работает:

После чего уже запускаем непосредственно, vnc viewer и прописываем заместо нашего реального ИП, localhost:1 (или 2). Вводим пароль и можно использовать.

4 thoughts on “ Установка и настройка VNC Server на Debian/Ubuntu/Linux Mint ”

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

Я думаю что Вы не прописали (добавили) автозапуск vncserver-а.

VNC (или Virtual Network Computing) – это система, позволяющая пользоваться графическим интерфейсом удалённого сервера. Она может передавать обновления экрана и события клавиатуры и мыши по сети.

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

XFCE – это легковесное графическое окружение рабочего стола. В данном руководстве будет использоваться XFCE, поскольку у него низкие требования к ресурсам системы, и многие пользователи знакомы с этим инструментом.

Примечание: При желании можно пользоваться и другим окружением рабочего стола (Gnome или KDE, к примеру).

Данное руководство поможет подготовить Debian 8, установить окружение рабочего стола XFCE и настроить VNC. Кроме того, в руководстве показано, как создать скрипт запуска сервера VNC и защитить его по SSH.

Предварительно настроенный Debian 8 (или 8.1) с root-доступом. 512 MB памяти будет достаточно для запуска VNC и XFCE. Однако в зависимости от ваших планов вам может понадобиться и больший объём памяти.

Клиент VNC на компьютере, чтобы иметь возможность подключиться к серверу. В руководстве используется UltraVNC в системе Windows, но, конечно, можно использовать любой другой клиент VNC. Загрузить UltraVNC можно по этой ссылке. Система OS X поставляется с собственным клиентом VNC, Screen Sharing.

SSH-клиент для безопасного подключения. В системе Windows будет использоваться PuTTY (загрузить можно здесь). В OS X используйте встроенное приложение терминала.

1: Установка VNC и XFCE

Сначала нужно установить сервер VNC и окружение рабочего стола XFCE, а также несколько дополнительных программ.

Обновите список пакетов сервера:

Теперь обновите список пакетов

apt-get -y upgrade

Установите пакеты tightvncserver, XFCE4, несколько полезных пакетов и icon-theme:

apt-get install xfce4 xfce4-goodies gnome-icon-theme tightvncserver

По умолчанию браузер не установлен. Вы можете установить iceweasel (версия Mozilla Firefox для Debian), чтобы иметь возможность просматривать сайты:

apt-get install iceweasel

2: Создание пользователя для VNC

Создайте отдельного пользователя для подключений VNC. Рекомендуется использовать sudo вместо пользователя root.

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

Создайте пароль для нового пользователя. На остальные вопросы можно просто нажать Enter, чтобы принять стандартные данные.

Чтобы установить sudo, используйте команду:

apt-get install sudo

Добавьте нового пользователя vnc в группу sudo, что передаст ему привилегии root.

gpasswd -a vnc sudo

Переключитесь в сессию пользователя vnc:

3: Запуск сервера VNC

В сессии пользователя vnc запустите сервер VNC и проверьте соединение.

При первом запуске программа предложит установить пароль для соединения с клиентами. Установите пароль и запомните/запишите его, он понадобится в дальнейшем. Кроме того, можно установить пароль только для просмотра, который позволит пользователям видеть экран, но заблокирует взаимодействие с ним. Примечание: Пароль должен состоять из 6-8 символов.

На экране появится номер текущего дисплея:

xauth: file /home/vnc/.Xauthority does not exist
New 'X' desktop is vnc:1
Creating default startup script /home/vnc/.vnc/xstartup
Starting applications specified in /home/vnc/.vnc/xstartup
Log file is /home/vnc/.vnc/vnc:1.log

По умолчанию первое соединение VNC обслуживается на порте 5901, второе – на 5902, и т.д.

Примечание: На данном этапе останавливать сервер не нужно. Команда для остановки сервера приведена ниже для справки.

Чтобы остановить сервер VNC, запустите на Display 1 (порт 5901) следующую команду:

vncserver -kill :1

где :1 – номер дисплея, который нужно остановить.

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

4: Подключение с клиента

Теперь можно подключиться к VNC. Для этого используйте локальный VNC-клиент, который зависит от операционной системы.

На Windows можно использовать UltraVNC.

OS X предоставляет для этого встроенное приложение Screen Sharing. Можно также использовать Safari. Для этого введите:

В качестве адреса сервера VNC введите:

и укажите только что выбранный пароль для VNC-подключений.

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

5: Создание сервиса для VNC

Теперь можно создать сервис, добавив VNC в system. Сервисы позволяют запускать и останавливать VNC-сервер, а также запускать его автоматически при перезагрузке виртуального сервера.

Остановите текущий интерфейс:

vncserver -kill :1

Создайте простой скрипт для управления сервером VNC.

В сессии пользователя vnc (или любого другого пользователя с правами sudo) создайте скрипт-файл.

sudo nano /usr/local/bin/myvncserver

Вставьте в него следующий код без изменений. Этот скрипт содержит несколько параметров для запуска VNC.

Можно немного изменить скрипт, чтобы отрегулировать глубину цвета VNC.

В текстовом редакторе nano нажмите CTRL+O, чтобы сохранить, и CTRL+X, чтобы закрыть файл.

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

sudo chmod +x /usr/local/bin/myvncserver

Этот скрипт позволяет редактировать настройки и быстро запускать и останавливать сервер.

Примечание: При необходимости скрипт можно запустить/остановить вручную.

sudo /usr/local/bin/myvncserver start
sudo /usr/local/bin/myvncserver stop
sudo /usr/local/bin/myvncserver restart

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

sudo nano /lib/systemd/system/myvncserver.service

Скопируйте следующий код в файл. Данный сервис будет просто вызывать ранее созданный скрипт запуска.

[Unit] Description=Manage VNC Server on this droplet
[Service] Type=forking
ExecStart=/usr/local/bin/myvncserver start
ExecStop=/usr/local/bin/myvncserver stop
ExecReload=/usr/local/bin/myvncserver restart
User=vnc
[Install] WantedBy=multi-user.target

Перезапустите systemctl и включите сервис:

sudo systemctl daemon-reload
sudo systemctl enable myvncserver.service

Итак, теперь сервис включен. Используйте следующие команды для управления сервисом при помощи systemctl:

sudo systemctl start myvncserver.service
sudo systemctl stop myvncserver.service
sudo systemctl restart myvncserver.service

Запустите сервер VNC как сервис.

6: Защита VNC при помощи SSH-туннелирования

По умолчанию соединения VNC не шифруются. Потому для защиты данных рекомендуется использовать SSH-туннель.

Для этого нужно разрешить запуск VNC только на локальном хосте. Добавьте флаг -localhost в строку OPTIONS в ранее созданном скрипте.

Остановите сервер VNC:

sudo systemctl stop myvncserver.service

sudo nano /usr/local/bin/myvncserver

Найдите эту строку:

Затем запустите VNC:

sudo systemctl start myvncserver.service

Теперь можно подключаться к серверу VNC с удалённого компьютера.

Для пользователей Windows

Для создания SSH-туннеля используйте PuTTY.

В левом меню перейдите в раздел Connection->SSH->Tunnels.

В разделе Add New Forwarded Port укажите порт 5901 как Source port, а в поле Destination укажите localhost:5901. Нажмите Add.

Затем откройте раздел Session и в поле Host Name (or IP address) введите свой IP-адрес. Чтобы подключиться, нажмите Open.

Откройте сессию vnc. Не закрывайте окно PuTTY, пока соединение VNC не установится.

Затем используйте клиент VNC. Просто введите localhost::5901 и переведите соединение SSH в фоновый режим.

Для пользователей OS X

Чтобы создать SSH-туннель, введите в терминал:

ssh vnc@your_server_ip -L 5901:localhost:5901

Пройдите аутентификацию. Затем укажите localhost:5901 для Screen Sharing.

Заключение

Теперь у вас есть доступ к расшаренному удалённому рабочему столу на сервере Debian 8, который можно использовать для настройки сервера или совместного работы.


Серверы VNC, как известно, сложно настроить, особенно если вы новый пользователь Linux, пытаясь понять, как управлять одним ПК с другого. К счастью, RealVNC существует. Это кроссплатформенное решение VNC, которое очень просто настроить. RealVNC имеет превосходную поддержку многих различных дистрибутивов Linux, включая Ubuntu, Debian, Fedora, Arch Linux, OpenSUSE и многие другие. Чтобы использовать RealVNC в Linux, выберите ниже свою операционную систему и введите соответствующие команды!

Примечание. Если ваш дистрибутив Linux не поддерживает DEB, RPM или Arch AUR, вам необходимо следовать инструкциям «Generic Linux».

Ubuntu

RealVNC имеет как серверный компонент, так и программу просмотра. Загрузите VNC Connect на ПК с Linux (или сервер), который будет хостом VNC, и загрузите клиентское приложение на удаленный ПК, подключенный к нему. Чтобы получить VNC Connect, перейти на официальный сайт , выберите DEB и загрузите пакет на свой компьютер. Скачайте приложение VNC Viewer здесь .

Проверь это - Как управлять группами и пользователями в Linux

Установка VNC Connect

После завершения загрузки пакета VNC Connect DEB откройте файловый менеджер. Щелкните «Загрузки» и дважды щелкните пакет DEB с надписью «VNC-Server-6.3.1-Linux-x64.deb». Двойной щелчок по пакету VNC Server DEB мгновенно откроет Центр программного обеспечения Ubuntu. Нажмите «Установить», чтобы загрузить программное обеспечение на свой компьютер с Ubuntu.

Либо, если у вас нет доступа к Ubuntu Software Center или вы предпочитаете терминал, установите VNC Connect с помощью инструмента dpkg:

Установка VNC Viewer

Выберите папку «Загрузки» в файловом менеджере Ubuntu, найдите «VNC-Viewer-6.18.625-Linux-x64.deb» и дважды щелкните по нему, чтобы запустить Центр программного обеспечения Ubuntu. Нажмите «Установить», чтобы начать установку.

Предпочитаете терминал? Выполните следующие команды в окне терминала:

Debian

Поддержка Debian не описана специально на веб-сайте RealVNC, но, учитывая тот факт, что Ubuntu и Debian имеют схожие архитектуры, заставить программное обеспечение работать не должно быть проблемой. Для начала скачать пакет VNC Connect DEB к машине Linux, на которой размещается VNC.

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

Установка VNC Connect

Откройте файловый менеджер в Debian и выберите папку «Загрузки». Затем найдите «VNC-Server-6.3.1-Linux-x64.deb» и дважды щелкните его, чтобы открыть пакет в инструменте установки пакетов GDebi. Нажмите «Установить» и введите пароль для установки серверного программного обеспечения. Также можно установить через терминал с помощью:

Установка VNC Viewer

Инструкции по терминалу:

Arch Linux

Официального программного обеспечения RealVNC для Arch Linux нет. Однако это в AUR. Чтобы установить сервер, сделайте следующее:

RealVNC Viewer также находится в AUR и устанавливается аналогичным образом. Имейте в виду, что эта версия программы просмотра VNC устарела. Используйте на свой риск!

Чтобы начать установку, клонируйте последнюю версию pkgbuild.

Fedora

Подобно Ubuntu и Debian, Fedora имеет первоклассную поддержку RealVNC. Чтобы установить серверный компонент программного обеспечения, перейдите на страница загрузки , выберите «RPM» и нажмите «Загрузить».

Когда пакет RPM загружен, откройте терминал и используйте инструмент управления пакетами DNF для его установки.

Установите VNC Viewer с помощью:

OpenSUSE

OpenSUSE поддерживает программное обеспечение RealVNC через пакеты RPM. Чтобы установить их, скачать пакет и сделайте следующее:

Общие инструкции Linux

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

Проверь это - Как получить защиту конфиденциальности DNS в Linux с помощью DNS через TLS

Настроить RealVNC Server

Поскольку RealVNC призван упростить настройку VNC для обычного пользователя, и здесь не так много вещей, которые нужно настраивать. Единственное, что нужно сделать, это включить службу systemd на сервере. В терминале запустите службу с помощью systemctl.

При запуске службы RealVNC systemd на рабочем столе Linux на панели задач отображается значок VNC. Щелкните по нему, чтобы запустить инструмент графического интерфейса сервера.

В инструменте с графическим интерфейсом вы можете изменять способ работы серверного приложения RealVNC.

Подключение

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


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

Читайте также: