23.06.2025

Установка VNC и удаленный доступ к рабочему столу на Ubuntu 22.04

Иногда возникает необходимость работы на удаленном сервере не через консоль, а через удаленный рабочий стол. На помощь приходит система удаленного доступа VNC (Virtual Network Computing). Рассмотрим как установить, настроить и подключиться к серверу.

Установка

Обновляем информацию о репозиториях:

sudo apt-get update

Обновляем компоненты системы и перезагружаем сервер:

sudo apt-get upgrade

Добавим репозиторий в список:

nano /etc/apt/sources.list

Для этого добавим в конец файла строку:

deb http://cn.archive.ubuntu.com/ubuntu/ bionic universe

При повторном обновлении пакетов, может возникнуть ошибка:

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

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32

Вновь обновим пакеты:

apt update

Приступаем к установке.

sudo apt-get install --no-install-recommends ubuntu-desktop gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal vnc4server

Этот процесс не очень быстрый, так как будет скачано более 200 мегабайт.

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

vncserver

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

Настройка

Под настройкой следует понимать, что будут указаны команды и скрипты, которые следует выполнять при запуске сервера. Для этого необходимо отредактировать файл ~/.vnc/xstartup. VNC-сервер, по умолчанию, инициализируется на tcp-порту 5901, который называют “Display port”, в документации VNC он упоминается как “:1”. Сам же VNC позволяет запускать несколько экземпляров :2 – 5902, :3 – 5903 и так далее.

Останавливаем службу на порту 5901:

vncserver -kill :1

Редактируем файл настроек, для этого откроем его в любом текстовом редакторе, например nano:

nano ~/.vnc/xstartup

В конец файла добавляем 4 строки:

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

Общий вид файла должен стать таким:

Запускаем командой:

vncserver

Видно, что сервер запустился на tcp-порту 5901.

Подключаемся к серверу с помощью любого VNC-клиента, например Remmina.

Выбираем протокол – VNC. Указываем адрес сервера и через двоеточие порт, в конкретном случае 10.10.2.7:5901. И кликаем по кнопке «Подключиться».

Программа запросит ввод пароля.

Вот и результат.

Важно! Если используется защита межсетевым экраном, тогда следует добавить разрешающее правило для подключения:

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

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

iptables -A INPUT -p tcp --dport 59XX -j ACCEPT
iptables-save

XX – номер порта :2 – 02, :3 – 03, :10 – 10.