Поиск по сайту:

Как установить и настроить VNC в Ubuntu 14.04


Введение

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

В этом руководстве мы будем настраивать VNC на сервере Ubuntu 14.04 и безопасно подключаться к нему через туннель SSH. Сервер VNC, который мы будем использовать, — это TightVNC, быстрый и легкий пакет удаленного управления. Этот выбор гарантирует, что наше VNC-соединение будет плавным и стабильным даже при более медленном интернет-соединении.

Предпосылки

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

Вам понадобится сервер Ubuntu 14.04, установленный и настроенный пользователем без полномочий root с привилегиями sudo. Если вы еще этого не сделали, вы можете выполнить шаги 1-4 в руководстве по начальной настройке сервера Ubuntu 14.04, чтобы создать эту учетную запись.

После того, как у вас есть пользователь без полномочий root, вы можете использовать его для SSH на вашем сервере Ubuntu и продолжить установку вашего сервера VNC.

Шаг первый — установите среду рабочего стола и VNC-сервер

По умолчанию большинство серверов Linux не имеют графической среды рабочего стола. Если это так, нам нужно начать с установки того, с которым мы можем работать. В этом примере мы установим XFCE4, очень легкий, но знакомый большинству пользователей.

Мы можем получить пакеты XFCE вместе с пакетом для TightVNC непосредственно из репозиториев программного обеспечения Ubuntu, используя apt:

sudo apt-get update
sudo apt-get install xfce4 xfce4-goodies tightvncserver

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

vncserver

(После того как вы настроите свой пароль доступа, вас спросят, хотите ли вы ввести пароль только для просмотра. Пользователи, которые входят в систему с паролем только для просмотра, не смогут управлять экземпляром VNC с помощью мыши или клавиатуры. Это полезная опция, если вы хотите что-то продемонстрировать другим людям, использующим ваш VNC-сервер.)

vncserver завершает установку VNC, создавая файлы конфигурации по умолчанию и информацию о подключении для использования нашим сервером. Установив эти пакеты, вы готовы настроить сервер VNC и графический рабочий стол.

Шаг второй — настройте VNC-сервер

Во-первых, нам нужно сообщить нашему VNC-серверу, какие команды выполнять при его запуске. Эти команды находятся в файле конфигурации с именем xstartup. На нашем VNC-сервере уже предварительно загружен файл xstartup, но нам нужно использовать некоторые другие команды для нашего рабочего стола XFCE.

Когда VNC настраивается впервые, он запускает экземпляр сервера по умолчанию на порту 5901. Этот порт называется портом дисплея и обозначается VNC как :1. VNC может запускать несколько экземпляров на других портах дисплея, например :2, :3 и т. д. При работе с серверами VNC помните, что :X это порт дисплея, который ссылается на 5900+X.

Поскольку мы собираемся изменить настройку наших серверов VNC, нам нужно сначала остановить экземпляр сервера VNC, работающий на порту 5901:

vncserver -kill :1

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

mv ~/.vnc/xstartup ~/.vnc/xstartup.bak

Теперь мы можем открыть новый файл xstartup с помощью nano:

nano ~/.vnc/xstartup

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

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

Первая команда в файле, xrdb $HOME/.Xresources, указывает платформе GUI VNC прочитать файл .Xresources пользователя сервера. .Xresources — это место, где пользователь может вносить изменения в определенные настройки графического рабочего стола, такие как цвета терминала, темы курсора и рендеринг шрифтов.

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

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

sudo chmod +x ~/.vnc/xstartup

Шаг третий — создайте служебный файл VNC

Чтобы легко управлять нашим новым сервером VNC, мы должны настроить его как службу Ubuntu. Это позволит нам запускать, останавливать и перезапускать наш сервер VNC по мере необходимости.

Сначала откройте новый служебный файл в /etc/init.d с помощью nano:

sudo nano /etc/init.d/vncserver

В первом блоке данных мы объявляем некоторые общие настройки, на которые VNC будет ссылаться, например, имя пользователя и разрешение экрана.

#!/bin/bash
PATH="$PATH:/usr/bin/"
export USER="user"
DISPLAY="1"
DEPTH="16"
GEOMETRY="1024x768"
OPTIONS="-depth ${DEPTH} -geometry ${GEOMETRY} :${DISPLAY} -localhost"
. /lib/lsb/init-functions

Обязательно замените user пользователем без полномочий root, которого вы настроили, и измените 1024x768, если вы хотите использовать другое разрешение экрана для вашего виртуального дисплея.

Далее мы можем приступить к вставке командных инструкций, которые позволят нам управлять новой службой. Следующий блок связывает команду, необходимую для запуска сервера VNC, и информацию о том, что он запускается, с ключевым словом команды start.

case "$1" in
start)
log_action_begin_msg "Starting vncserver for user '${USER}' on localhost:${DISPLAY}"
su ${USER} -c "/usr/bin/vncserver ${OPTIONS}"
;;

Следующий блок создает ключевое слово команды stop, которое немедленно уничтожит существующий экземпляр сервера VNC.

stop)
log_action_begin_msg "Stopping vncserver for user '${USER}' on localhost:${DISPLAY}"
su ${USER} -c "/usr/bin/vncserver -kill :${DISPLAY}"
;;

Последний блок предназначен для ключевого слова команды restart, которое представляет собой просто две предыдущие команды (stop и start), объединенные в одну команду.

restart)
$0 stop
$0 start
;;
esac
exit 0

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

sudo chmod +x /etc/init.d/vncserver

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

sudo service vncserver start

Шаг четвертый — подключитесь к рабочему столу VNC

Чтобы протестировать сервер VNC, вам потребуется клиент, который поддерживает соединения VNC через туннели SSH. Если вы используете Windows, вы можете использовать TightVNC, RealVNC или UltraVNC. Пользователи Mac OS X могут использовать встроенную функцию общего доступа к экрану или кроссплатформенное приложение, такое как RealVNC.

Во-первых, нам нужно создать SSH-соединение на вашем локальном компьютере, которое безопасно перенаправляется на соединение localhost для VNC. Вы можете сделать это через терминал в Linux или OS X с помощью следующей команды:

(Не забудьте заменить user и ip-адрес_сервера на имя пользователя и IP-адрес, которые вы использовали для подключения к серверу через SSH. )

ssh -L 5901:127.0.0.1:5901 -N -f -l user server_ip_address

Если вы используете графический SSH-клиент, например PuTTY, используйте server_ip_address в качестве IP-адреса подключения и установите localhost:5901 в качестве нового переадресованного порта. в настройках туннеля SSH программы.

Затем вы можете использовать программу просмотра VNC для подключения к серверу VNC по адресу localhost:5901. Убедитесь, что вы не забыли этот :5901 в конце, так как это единственный порт, из которого доступен экземпляр VNC.

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

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

sudo update-rc.d vncserver defaults

Заключение

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