Современные пользователи привыкли управлять компьютером с помощью клавиатуры и мышки. Вполне логично, что при подключении к серверу такой способ тоже более удобный, чем через командную строку.
В Debian 11 есть возможность использовать устройства ввода, для этого нужно запустить VNC. В этой статье мы расскажем, что это такое и как правильно выполнить настройку.
Virtual Network Computing – это технология, которая позволяет пользователям удаленно управлять и оперировать другими компьютерами через сеть с помощью клавиатуры и мышки. Эта инновационная система была разработана для обеспечения максимальной гибкости в рабочих процессах, облегчая работу с удалённым сервером.
При помощи VNC пользователь может контролировать удаленный компьютер, как будто он находится прямо перед ним. Интерфейс VNC предоставляет возможность просмотра экрана дистанционно, перемещения курсора мыши, а также нажатия на клавиши. Это позволяет проводить различные операции, включая установку программ, настройку системы, обновление или удаление файлов и устранение ошибок, находясь в любой точке мира.
Кроме того, Virtual Network Computing обеспечивает безопасность передачи данных путем шифрования всей информации, передаваемой между компьютерами. Это обеспечивает сохранность конфиденциальных данных и защищает от несанкционированного доступа к системе. Парольная защита и многоуровневая аутентификация становятся дополнительными мерами безопасности.
Прежде чем приступить к работе с сервером VNC, необходимо учесть несколько моментов.
Одним из наиболее важных достоинств этой технологии является ее кросс-платформенность, то есть возможность использования системы на компьютерах с различными операционными системами, это делает VNC универсальным инструментом для удаленного доступа. Так для Windows подходят инструменты TightVNC, RealVNC или UltraVNC. На macOS предусмотрено собственное приложение Screen Sharing, также можно пользоваться RealVNC. Для Linux представлено множество функций, таких как vinagre, krdc, RealVNC, TightVNC.
Для нашего примера мы выбрали Debian 11 и инструмент TightVNC. Это бесплатное программное обеспечение с открытым исходным кодом обеспечивает безопасное соединение за счет поддержки шифрования (в том числе туннелирования SSH). Кроме того, TightVNC имеет интуитивно понятный пользовательский интерфейс с поддержкой трех режимов.
Для системных администраторов возможности этого приложения обусловлены простотой установки и настройки с использованием всего двух программ: сервера на стороне хост-компьютера и программы просмотра на стороне клиента VNC, что означает отсутствие необходимости устанавливать дополнительное программное обеспечение или платить за дополнительные продукты.
Таким образом, TightVNC считается незаменимым инструментом для пользователей, которым часто требуется обеспечить качественный удаленный доступ, сохранность данных и эффективность работы на удаленных компьютерах. Он позволяет ощутимо упростить и оптимизировать удаленную работу, сэкономить время и ресурсы, а также значительно расширить границы работы и коммуникации в рамках информационного пространства.
Оболочка — это интерфейс, позволяющий взаимодействовать с операционной системой. А VNC-сервер — программное обеспечение для удаленного доступа к рабочему столу.
Первым шагом в установке является загрузка необходимых файлов. Нам нужны графический интерфейс Xfce и приложение TightVNC, с помощью которых процесс протекает легко и быстро. Скачать нужные элементы можно из официального репозитория.
Начните с обновления списка пакетов, выполнив в командной строке команду
$ sudo apt update
Теперь поставьте элементы графического интерфейса VNC.
$ sudo apt install xfce4 xfce4-goodies
Переходите к установке сервера TightVNS.
$ sudo apt install tightvncserver
Чтобы обеспечить доступ к VNC-серверу, обеспечьте зависимость dbus-x11.
$ sudo apt install dbus-x11
Завершите настройку.
$ vncserver
Задайте пароль, содержащий 6-8 символов, и подтвердите его. Будьте внимательны – после подтверждения получится задавать пароль исключительно для просмотра, то есть управлять машиной с помощью мышки и клавиатуры не получится. Это нужно для того, чтобы показывать другим пользователям монитор без предоставления им доступа к настройкам.
Далее система автоматически сформирует конфигурационные файлы и выведет сведения на экран.
Важно определить, к какому именно рабочему столу должен подключаться VNC и какие команды необходимо выполнять при запуске. Эти параметры можно задать в конфигурационном файле, который лежит в папке .vnc.
Хотя стандартный сценарий уже был сформирован, когда вы ввели команду «vncserver», его можно изменить. В нашем случае задан порт 5901 и обозначается так: «:1». В системе можно встретить другое его название – порт дисплея.
На VNC могут быть запущены сразу несколько экземпляров на других портах, в их обозначениях будут меняться цифры. Например, :2, :3, :4 и другие.
Для изменения параметров необходимо сначала оставить экземпляр сервера VNC на нашем порту.
$ vncserver -kill :1
Рекомендуем на всякий случай сделать резервную копию исходного файла.
$ mv ~/.vnc/xstartup ~/.vnc/xstartup.bak
Теперь откройте конфигурационный файл в текстовом редакторе.
$ nano ~/.vnc/xstartup
В нём уже прописаны команды, которые выполняют автоматически во время запуска или перезагрузки сервера. Добавьте ещё 3.
#!/bin/bash
xrdb $HOME/.Xresources
startxfce4 &
Теперь разберём, что они означают.
Сохраните изменения и закройте редактор.
Дальше нужно назначить обновлённый файл исполняемым.
$ sudo chmod +x ~/.vnc/xstartup
Перезапускаем сервер.
$ vncserver
Сервер VNC может функционировать как системная служба systemd, но для этого его нужно правильно настроить.
Откроем файл в текстовом редакторе.
$ sudo nano /etc/systemd/system/vncserver@.service
Символ собачки после имени даёт возможность передать аргумент, применяемый в конфигурации. Он нужен, чтобы указать порт отображения VNC.
Добавьте несколько строк, заменив User, Group, WorkingDirectory, PIDFILE на свои значения.
Рассмотрим, что в данном случае делают команды.
ExecStartPre останавливает VNC, если он запущен.
ExecStart выполняет запуск VNC, задаёт глубину цвета, разрешение.
После редактирования сохраняем изменения и закрываем редактор.
Чтобы система начала задействовать новый файл, его нужно ей показать.
$ sudo systemctl daemon-reload
Включите файл модуля.
$ sudo systemctl enable vncserver@1.service
Отключите экземпляр сервера VNC.
$ vncserver -kill :1
Запустите его в качестве службы.
$ sudo systemctl start vncserver@1
Выполните проверку.
$ sudo systemctl status vncserver@1
Запустите SSH-туннель.
$ ssh -L 5901:127.0.0.1:5901 -C -N -l sammy your_server_ip
Для более безопасной и эффективной работы желательно выбрать защищённый сервер VNC, заказать VPS/VDS хостинг на Linux. Аренда сервера с Debian доступна здесь https://www.nic.ru/catalog/hosting/vds-vps/.
После успешного завершения этих шагов VNC-сервер готов к использованию, и администраторы могут спокойно работать с ним, зная, что безопасность их сетей не нарушена, и при этом обеспечивая столь необходимую мобильность из любой точки земного шара с использованием привычных устройств ввода.
Настройка сервера VNC, хоть и может потребовать определенных технических навыков и времени, предоставляет удобный охват функциональности для работы с удаленным компьютером. Теперь у вас есть пошаговая инструкция по настройке VNC на сервере Debian 11 и вы знаете, как изменить настройку сервера VNC.