Ubuntu. Установка VNC и удаленный доступ к нему
Иногда возникает необходимость работы на удаленном сервере не через консоль, а через удаленный рабочий стол. На помощь приходит система удаленного доступа VNC (Virtual Network Computing). Рассмотрим как установить, настроить и подключиться к серверу.
Установка
Обновляем информацию о репозиториях:
sudo apt-get update
Обновляем компоненты системы и перезагружаем сервер:
sudo apt-get upgrade
reboot
Приступаем к установке.
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
<img width="799" height="447" src="https://lincore.kz/wp-content/uploads/2020/06/33_3.png" alt="" />
Видно, что сервер запустился на 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.