Настройка VNC-сервера на Xubuntu 24.04

Настройка VNC-сервера на Xubuntu 24.04 — статья Василия Киреева
Установка, настройка и создание службы X11VNC на Xubuntu 24.04 LTS для подключения к текущему сеансу X-сервера и удаленного управления графическим окружением.

Когда мне потребовался удаленный доступ к домашнему серверу на Ubuntu с нетребовательным к ресурсам окружением Xfce, мне пришлось действовать методом проб и ошибок и собирать алгоритм настройки по всему интернету. Все что я нашел, и что сработало, я объединил в этот материал.

Для ввода всех команд нужно открыть терминал на компьютере или подключиться к нему по SSH. Для работы необходимы права суперпользователя — sudo.

Установка и настройка X11VNC в Xubuntu 24.04 LTS

Xubuntu 24.04 LTS использует графическую систему X11 (X Windows System), и до сих пор не перешла на Wayland. Поэтому для настройки VNC-сервера будет использоваться X11VNC.

Команда для установки X11VNC:

sudo apt install x11vnc

Команда для создания пароля VNC-сервера:

x11vnc -storepasswd "пароль" /etc/x11vnc.pass

Команда для изменения прав доступа для чтения пароля:

sudo chmod ugo+r /etc/x11vnc.pass

Запуск VNC-сервера для проверки его работоспособности:

x11vnc -noxdamage -shared -dontdisconnect -many -noxfixes -rfbauth /etc/x11vnc.pass

Если все корректно, можно подключиться через VNC-клиент, например, VNC Viewer. Для подключения нужно использовать IP-адрес или локальное доменное имя .local и порт 5900.

Создание службы с помощью systemd

Для автоматического запуска при старте системы нужно настроить службу для systemd с помощью текстового редактора nano:

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

В текстовый документ вставить:

[Unit]
Description=Start x11vnc at startup.
After=multi-user.target
[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /etc/x11vnc.pass -rfbport 5900 -shared
[Install]
WantedBy=multi-user.target

Перезагрузка systemd для чтения изменения в конфигурационных файлах:

sudo systemctl daemon-reload

Включение службы X11VNC:

sudo systemctl enable x11vnc.service

Проверка включения и активности службы:

systemctl status x11vnc.service

Если служба не стартанула, ее нужно запустить:

sudo systemctl start x11vnc.service