Linux

Как установить и настроить VNC в Ubuntu 20.04

Как установить и настроить VNC в Ubuntu 20.04

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

В этой статье объясняется, как установить и настроить сервер VNC в Ubuntu 20.04. Мы также покажем вам, как безопасно подключиться к серверу VNC через туннель SSH.

Установка среды рабочего стола #

Серверы Ubuntu управляются из командной строки, и по умолчанию для них не установлена ​​среда рабочего стола. Если вы используете настольную версию Ubuntu, пропустите этот шаг.

В репозиториях Ubuntu доступны различные среды рабочего стола. Один из вариантов - установить Gnome, который является средой рабочего стола по умолчанию в Ubuntu 20.04. Другой вариант - установить Xfce . Это быстрая, стабильная и легкая среда рабочего стола, что делает ее идеальной для использования на удаленном сервере.

В этом руководстве мы установим Xfce. Введите следующие команды как пользователь с привилегиями sudo:

sudo apt updatesudo apt установить xfce4 xfce4-goodies

В зависимости от вашей системы загрузка и установка пакетов Xfce может занять некоторое время.

Установка сервера VNC #

В репозиториях Ubuntu доступно несколько различных серверов VNC, таких как TightVNC, TigerVNC и x11vnc . Каждый сервер VNC имеет свои сильные и слабые стороны с точки зрения скорости и безопасности.

Будем устанавливать TigerVNC. Это активно обслуживаемый высокопроизводительный VNC-сервер. Введите следующую команду, чтобы установить пакет:

sudo apt установить tigervnc-standalone-server

Настройка доступа VNC #

После установки сервера VNC следующим шагом будет создание начальной конфигурации пользователя и установка пароля.

Установите пароль пользователя с помощью vncpasswd команда. Не используйте sudo при выполнении следующей команды:

vncpasswd

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

Пароль: Подтвердить: Вы хотите ввести пароль только для просмотра (да / нет)? п 

Файл паролей хранится в ~ /.vnc каталог, который создается, если его нет.

Далее нам нужно настроить TigerVNC для использования Xfce. Для этого создайте следующий файл:

~ /.vnc / xstartup
нано ~ /.vnc / xstartup
#!/ bin / sh unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS exec startxfce4 

Сохраните и закройте файл. Приведенные выше команды автоматически выполняются всякий раз, когда вы запускаете или перезапускаете сервер TigerVNC.

В ~ /.vnc / xstartup файл также должен иметь права на выполнение. Использовать chmod команда для установки прав доступа к файлу:

chmod u + x ~ /.vnc / xstartup

Если вам нужно передать дополнительные параметры серверу VNC, создайте файл с именем config и добавьте по одному варианту в каждой строке. Вот пример:

~ /.vnc / config
геометрия = 1920x1080 dpi = 96 

Теперь вы можете запустить VNC-сервер с помощью vncserver команда:

vncserver
Новый 'server2.linuxize.com: 1 (linuxize) 'рабочий стол по адресу: 1 на компьютере server2.linuxize.com Запуск приложений, указанных в / home / linuxize /.vnc / xstartup Файл журнала: / home / linuxize /.vnc / server2.linuxize.com: 1.log Используйте xtigervncviewer -SecurityTypes VncAuth -passwd / home / linuxize /.vnc / passwd: 1 для подключения к серверу VNC. 

Обратите внимание : 1 после имени хоста в выводе выше. Это указывает номер порта дисплея, на котором работает сервер vnc. В этом примере сервер работает на TCP-порту 5901 (5900 + 1). Если вы создадите второй экземпляр с vncserver он будет работать на следующем свободном порте i.е : 2, это означает, что сервер работает на порту 5902 (5900 + 2).

Важно помнить, что при работе с серверами VNC, :ИКС порт дисплея, который относится к 5900 + X.

Вы можете получить список всех текущих сеансов VNC, набрав:

vncserver -list
Сеансы сервера TigerVNC: X DISPLAY # RFB PORT # PROCESS ID: 1 5901 5710 

Прежде чем перейти к следующему шагу, остановите экземпляр VNC, используя vncserver команда с -убийство опция и номер сервера в качестве аргумента. В этом примере сервер работает через порт 5901 (: 1), поэтому мы остановимся на следующем:

vncserver -kill: 1
Завершение работы Xtigervnc с идентификатором 5710… успех! 

Создание файла модуля Systemd #

Вместо того, чтобы вручную запускать сеанс VNC, давайте создадим файл модуля systemd, чтобы вы запускали, останавливали и перезапускали службу VNC по мере необходимости.

Откройте текстовый редактор, скопируйте и вставьте в него следующую конфигурацию. Не забудьте изменить имя пользователя в строке 7, чтобы оно соответствовало вашему имени пользователя.

Судо нано / и т. д. / systemd / system / vncserver @.услуга
/ и т.д. / systemd / system / vncserver @.услуга
[Объект] Описание = Служба удаленного рабочего стола (VNC) После = системный журнал.целевая сеть.target [Service] Тип = простой Пользователь = linuxize PAMName = логин PIDFile = / home /% u /.vnc /% H% i.pid ExecStartPre = / bin / sh -c '/ usr / bin / vncserver -kill:% i> / dev / null 2> & 1 || : 'ExecStart = / usr / bin / vncserver:% i -geometry 1440x900 -alwaysshared -fg ExecStop = / usr / bin / vncserver -kill:% i [Install] WantedBy = многопользовательский.цель

Сохраните и закройте файл.

Сообщите systemd о создании нового файла модуля:

sudo systemctl демон-перезагрузка

Включите запуск службы при загрузке:

sudo systemctl включить vncserver @ 1.услуга

Номер 1 после @ знак определяет порт дисплея, на котором будет работать служба VNC. Это означает, что сервер VNC будет прослушивать порт 5901, как мы обсуждали в предыдущем разделе.

Запустите службу VNC, выполнив:

sudo systemctl start vncserver @ 1.услуга

Убедитесь, что служба успешно запущена:

sudo systemctl статус vncserver @ 1.услуга
● vncserver @ 1.service - Служба удаленного рабочего стола (VNC) Загружено: загружено (/ etc / systemd / system / vncserver @.услуга; включено; предустановка поставщика: включена) Активно: активна (работает) с пт 2021-03-26 20:00:59 UTC; 3 сек назад… 

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

VNC не является зашифрованным протоколом и может подвергаться перехвату пакетов. Рекомендуемый подход - создать туннель SSH и безопасно перенаправить трафик с вашего локального компьютера на порт 5901 на сервер на том же порту.

Настроить SSH-туннелирование в Linux и macOS #

Если вы используете Linux, macOS или любую другую операционную систему на основе Unix на своем компьютере, вы можете легко создать туннель SSH с помощью следующей команды:

ssh -L 5901: 127.0.0.1: 5901 -N -f -l бродяга 192.168.33.10

Вам будет предложено ввести пароль пользователя.

Обязательно замените имя пользователя а также IP-адрес сервера с вашим именем пользователя и IP-адресом вашего сервера.

Настроить SSH-туннелирование в Windows #

Если вы используете Windows, вы можете настроить SSH-туннелирование с помощью SSH-клиента PuTTY .

Откройте Putty и введите IP-адрес вашего сервера в поле Имя хоста или IP-адрес поле.

Под Связь меню, поле, развернуть SSH, и выберите Туннели. Введите порт сервера VNC (5901) в Исходный порт поле и введите server_ip_address: 5901 в Назначения поле и нажмите на Добавлять кнопку, как показано на изображении ниже:

Вернитесь к Сессия страницу для сохранения настроек, поэтому вам не нужно вводить их каждый раз. На удаленный сервер выберите сохраненный сеанс и нажмите на Открыть кнопка.

Подключение с помощью Vncviewer #

Теперь, когда туннель SSH создан, пришло время открыть ваш Vncviewer и подключиться к VNC Server в локальный: 5901.

Вы можете использовать любую программу просмотра VNC, такую ​​как TigerVNC, TightVNC, RealVNC, UltraVNC, Vinagre и VNC Viewer для Google Chrome .

Мы будем использовать TigerVNC. Откройте программу просмотра, введите локальный: 5901, и нажмите на Соединять кнопка.

При появлении запроса введите пароль пользователя, и вы должны увидеть рабочий стол Xfce по умолчанию. Это будет выглядеть примерно так:

Вы можете начать взаимодействие с удаленным рабочим столом XFCE со своего локального компьютера, используя клавиатуру и мышь.

Заключение #

Мы показали вам, как установить и настроить сервер VNC и запустить его на Ubuntu 20.04.

Чтобы настроить сервер VNC для запуска отображения для более чем одного пользователя, создайте начальную конфигурацию и установите пароль с помощью vncpasswd команда. Вам также потребуется создать новый служебный файл, используя другой порт.

Не стесняйтесь оставлять комментарии, если у вас есть вопросы.

Как установить Doom и играть в него в Linux
Введение в Doom Серия Doom возникла в 90-х годах после выхода оригинальной Doom. Это мгновенно стал хитом, и с тех пор серия игр получила множество на...
Vulkan для пользователей Linux
С каждым новым поколением видеокарт мы видим, как разработчики игр расширяют границы графической точности и приближаются на шаг ближе к фотореализму. ...
OpenTTD против Simutrans
Создание собственного транспортного симулятора может быть увлекательным, расслабляющим и чрезвычайно увлекательным занятием. Вот почему вам нужно попр...