Установка VNC Server на Ubuntu и Debian — Пошаговая инструкция 2024 | AdminWiki

Установка VNC на Ubuntu: Полное руководство для удаленного доступа

18 декабря 2025 6 мин. чтения #debian #linux #ubuntu #vnc #vnc server #настройка vnc #удаленный доступ #установка vnc

Что такое VNC и зачем он нужен?

Представь, что тебе нужно управлять сервером Ubuntu, но физически находиться рядом с ним нет возможности. VNC (Virtual Network Computing) — это протокол, который позволяет получить доступ к графическому интерфейсу удаленного компьютера. Это особенно полезно для системных администраторов, разработчиков и всех, кто работает с Linux-серверами.

Важно: Процесс установки VNC на Debian практически идентичен установке на Ubuntu, так как Debian является базовым дистрибутивом для Ubuntu.

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

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

1. Обновление системы

bash
sudo apt update
sudo apt upgrade -y

2. Установка графической среды (если нет)

Для работы VNC нужен X Window System. Установим легковесный дисплейный менеджер:

bash
sudo apt install xfce4 xfce4-goodies -y
Внимание: Если у тебя уже установлена другая графическая среда (GNOME, KDE), этот шаг можно пропустить.

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

Теперь перейдем к основной части — установке VNC сервера. Мы будем использовать TigerVNC — один из самых популярных и стабильных вариантов.

3. Установка TigerVNC Server

bash
sudo apt install tigervnc-standalone-server tigervnc-common -y

4. Настройка пароля VNC

Создадим пароль для подключения к VNC серверу:

bash
vncpasswd

Система запросит ввести пароль (минимум 6 символов) и подтверждение. Этот пароль будет использоваться для подключения клиентов.

Конфигурация VNC сервера

5. Создание конфигурационного файла

Создадим файл конфигурации для нашего VNC сервера:

bash
mkdir -p ~/.vnc
nano ~/.vnc/xstartup

Добавим следующий контент в файл xstartup:

config
#!/bin/bash
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
startxfce4 &
bash
chmod +x ~/.vnc/xstartup

6. Запуск VNC сервера

Запустим VNC сервер на порту 5901:

bash
vncserver -geometry 1920x1080 -depth 24 :1

Где:

  • -geometry — разрешение экрана
  • -depth — глубина цвета
  • :1 — номер дисплея (порт будет 5901)

Настройка автозапуска VNC

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

bash
sudo nano /etc/systemd/system/vncserver@.service
config
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=forking
User=YOUR_USERNAME
WorkingDirectory=/home/YOUR_USERNAME

PIDFile=/home/YOUR_USERNAME/.vnc/%H:%i.pid
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill :%i > /dev/null 2>&1 || :'
ExecStart=/usr/bin/vncserver -depth 24 -geometry 1920x1080 :%i
ExecStop=/usr/bin/vncserver -kill :%i

[Install]
WantedBy=multi-user.target

Замени YOUR_USERNAME на имя своего пользователя. Затем активируем сервис:

bash
sudo systemctl daemon-reload
sudo systemctl enable vncserver@1.service
sudo systemctl start vncserver@1.service

Настройка брандмауэра

Если у тебя включен UFW (брандмауэр Ubuntu), нужно открыть порт для VNC:

bash
sudo ufw allow 5901/tcp
sudo ufw reload

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

Для подключения к установленному VNC на Ubuntu тебе понадобится VNC клиент. Вот популярные варианты:

Клиент Платформа Особенности
TigerVNC Viewer Windows/Linux/macOS Официальный клиент, быстрый
RealVNC Viewer Windows/Linux/macOS Простой интерфейс
Remmina Linux Множество протоколов

Для подключения введи в клиенте: IP_АДРЕС_СЕРВЕРА:5901

Безопасность VNC подключения

По умолчанию VNC передает данные в открытом виде. Вот как это исправить:

Настройка SSH туннеля

bash
ssh -L 5901:localhost:5901 user@server_ip -N

Затем подключайся к localhost:5901 вместо прямого подключения к серверу.

Использование x11vnc как альтернативы

x11vnc — еще один популярный VNC сервер для Linux:

bash
sudo apt install x11vnc -y
x11vnc -storepasswd
sudo x11vnc -forever -bg -usepw -display :0

Часто задаваемые вопросы (FAQ)

Как проверить, работает ли VNC сервер?

Используй команду: ss -tulpn | grep 5901. Если видишь процесс, значит сервер работает.

Как изменить разрешение VNC после запуска?

Останови сервер: vncserver -kill :1 и запусти с новыми параметрами: vncserver -geometry 1280x720 :1

VNC не запускается, что делать?

Проверь логи: journalctl -u vncserver@1.service -f. Частая проблема — отсутствие прав на файл xstartup.

Как настроить несколько VNC сессий?

Запускай с разными номерами дисплеев: :1, :2 и т.д. Каждый будет на своем порту (5901, 5902).

Чем отличается установка VNC на Debian от Ubuntu?

Процесс практически идентичен, так как Ubuntu основан на Debian. Единственное отличие — названия некоторых пакетов могут незначительно отличаться.

Полезные команды для управления VNC

bash
# Просмотр запущенных VNC сессий
vncserver -list

# Остановка конкретной сессии
vncserver -kill :1

# Перезапуск VNC сервиса
sudo systemctl restart vncserver@1.service

# Просмотр статуса
sudo systemctl status vncserver@1.service

# Изменение пароля VNC
vncpasswd
Совет: Для повышения производительности можно использовать опцию -localhost при запуске VNC, чтобы разрешить подключения только с локальной машины, а затем использовать SSH туннель.

Заключение

Установка VNC на Ubuntu или Debian — это мощный инструмент для удаленного управления сервером с графическим интерфейсом. Мы рассмотрели полный процесс: от установки пакетов до настройки безопасности и автозапуска. Помни о важности безопасной настройки, особенно при доступе через интернет — всегда используй SSH туннелирование или VPN.

Теперь у тебя есть полнофункциональный VNC сервер, готовый к работе. Этот навык особенно полезен для DevOps инженеров и системных администраторов, которым нужно управлять удаленными Linux-серверами.

Поделиться:
Сохранить гайд? В закладки браузера