Настройка сервера Ubuntu TightVNC

Обновлено: 04.07.2024

Виртуальные сетевые вычисления (VNC) – это своего рода система удаленного доступа, позволяющая получить контроль над любым другим компьютером, подключенным к Интернету. Щелчки клавиатуры и мыши могут легко передаваться с одного компьютера на другой. Это помогает администраторам и техническому персоналу управлять своими серверами и рабочими столами, не находясь физически в одном и том же месте.

VNC – это приложение с открытым исходным кодом, созданное в конце 1990-х годов. Он независим и совместим с Windows и Unix/Linux. Это означает, что обычный пользователь Windows может без проблем взаимодействовать с системой Linux.

Для использования VNC у вас должно быть соединение TCP/IP и клиент программы просмотра VNC для подключения к компьютеру, на котором запущен серверный компонент VNC. Сервер передает в программу просмотра дубликат отображения удаленного компьютера.

В этой статье показано, как установить VNC Server с помощью TightVNC — значительно улучшенной версии старой программы VNC с удаленным доступом к рабочему столу в дистрибутивах Linux на основе RHEL и дистрибутивах на основе Debian.

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

Если вы установили минимальную версию операционной системы, которая предоставляет только интерфейс командной строки, а не графический интерфейс. Поэтому вам необходимо установить GUI (графический интерфейс пользователя) под названием рабочий стол GNOME или XFCE, который очень хорошо работает при удаленном доступе через VNC.

Шаг 2. Установка сервера TightVNC

TightVNC – это программное обеспечение для управления удаленным рабочим столом, которое позволяет нам подключаться к удаленным рабочим столам. Для установки используйте следующую команду yum, как показано ниже.

Шаг 3. Создайте обычного пользователя VNC

Создайте обычного пользователя, который будет использоваться для подключения к удаленному рабочему столу. Например, я использовал «tecmint» в качестве пользователя, вы можете выбрать свое собственное имя пользователя.

Шаг 4. Установите пароль VNC для пользователя

Сначала переключитесь на пользователя с помощью (su – tecmint) и запустите ‘vncpasswd‘, чтобы установить пароль VNC для пользователя.

Примечание. Этот пароль предназначен для доступа к удаленному рабочему столу VNC, а пароль, который мы создали на шаге 3, — для доступа к сеансу SSH.

Приведенная выше команда дважды запрашивает пароль и создает каталог «.vnc» в домашнем каталоге пользователя с файлом passwd внутри него. Вы можете проверить, создан ли файл паролей, используя следующую команду.

Если вы добавляете другого пользователя, просто переключитесь на пользователя и добавьте пароль vnc с помощью команды vncpasswd.

Шаг 5. Настройте VNC для Gnome

Здесь мы настроим TigerVNC для доступа к Gnome, используя настройки конфигурации пользователя из файла ~/.vnc/config.

Добавьте к нему следующую конфигурацию.

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

Теперь выйдите из входа пользователя и вернитесь к входу пользователя root.

В файле конфигурации используются параметры =. В следующем примере мы назначаем порт отображения :1 пользователю tecmint.

Если вы добавляете другого пользователя, просто установите для порта дисплея значение :2, а затем имя пользователя.

Шаг 6: Запуск сервера Tigervnc

После внесения всех изменений выполните следующую команду, чтобы запустить сервер VNC. Прежде чем начать сеанс VNC с пользователем «tecmint», позвольте мне дать вам небольшое введение о номерах портов и идентификаторах.

По умолчанию VNC работает на порту 5900 и ID:0 (для пользователя root). В нашем сценарии я создал текминт, рави, навин и авишек. Итак, порты и идентификаторы используются этими пользователями следующим образом

Итак, здесь пользователь «tecmint» получит порт 5901 и идентификатор как: 1 и так далее. Если вы создали другого пользователя говорит (user5), то он получит порт 5905 и идентификатор: 5 и так далее для каждого пользователя, которого вы создаете.

Чтобы запустить и включить службу VNC для пользователя, которому назначен порт дисплея :1 , введите:

Подтвердить, что служба VNC успешно запущена, можно следующим образом:

Чтобы разрешить доступ к VNC другим пользователям, просто замените 1 на номер порта дисплея.

Шаг 7. Откройте порты VNC в брандмауэре

Откройте порт на iptables, firewalld или ufw, скажем, для пользователя (tecmint) по адресу 5901.

Для нескольких пользователей: рави, навин и авишек. Я открываю порты 5902, 5903 и 5904 соответственно.

Перезапустите службу Iptables.

Шаг 8. Загрузите VNC-клиент

Теперь перейдите на свой компьютер с Windows или Linux, загрузите клиент VNC Viewer и установите его в своей системе, чтобы получить доступ к рабочему столу.

Шаг 9. Подключитесь к удаленному рабочему столу с помощью клиента

После того как вы установили клиент VNC Viewer, откройте его, и вы увидите что-то похожее на показанный ниже экран. Введите IP-адрес сервера VNC вместе с идентификатором VNC (например, 1) для пользователя tecmint.

Данные для входа в сервер VNC

Введите пароль, созданный с помощью команды «vncpasswd».

Введите пароль пользователя VNC

Все, вы подключились к удаленному рабочему столу.

VNC Remote Desktop

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

Если вы цените то, что мы делаем здесь, в TecMint, вам следует подумать о следующем:

TecMint – это самый быстрорастущий и пользующийся наибольшим доверием сайт сообщества, где можно найти любые статьи, руководства и книги по Linux в Интернете. Миллионы людей посещают TecMint! для поиска или просмотра тысяч опубликованных статей, доступных всем БЕСПЛАТНО.

Если вам нравится то, что вы читаете, купите нам кофе (или 2) в знак признательности.

Поддержите нас

Мы благодарны за вашу бесконечную поддержку.

Похожие записи

Speed ​​Firefox в Linux

Установите Java в CentOS, Fedora и RHEL

 Установите Firefox Quantum в Linux

Установить гуакамоле для удаленного рабочего стола и доступа по SSH

Доступ к рабочему столу Linux с помощью VNC

 Альтернативы Windows для Linux

43 мысли о «Как установить TightVNC для доступа к удаленным рабочим столам в Linux»

Почему бы вам не создать значок на рабочем столе и/или запись в списке программ, чтобы можно было щелкнуть по ним, и клиент vnc запустится и запросит адрес машины, которой вы хотите управлять?

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

Я использую Fedora 27. В этой версии /etc/sysconfig/vncservers заменен на /lib/systemd/system/[email protected].

В чем может быть причина? есть идеи?

Спасибо, что сообщили нам об этих изменениях, позвольте мне попробовать этот TightVNC на моей Fedora 28, и я свяжусь с вами с решением.

есть новости по этому поводу?

Извините за задержку, вы обязательно увидите обновленную статью с инструкциями завтра утром..

Привет, спасибо за хороший урок!

К сожалению, у меня возникли проблемы.

После выполнения этих действий не удается войти в систему из средства просмотра VNC с сообщением об ошибке «соединение было неожиданно закрыто».
Изучая журнал в /home/my_username/.vnc, я заметил строки

gnome-session[11753]: ВНИМАНИЕ: Не удалось подключиться к ConsoleKit: Не удалось подключить
t к сокету /var/run/dbus/system_bus_socket: Нет такого файла или каталога
GNOME_KEYRING_SOCKET=/tmp /keyring-44DgDf/socket
SSH_AUTH_SOCK=/tmp/keyring-44DgDf/socket.ssh
GNOME_KEYRING_PID=11782

** (gnome-settings-daemon:11785): ПРЕДУПРЕЖДЕНИЕ **: Ошибка подключения, повторное подключение…
….

Любая помощь приветствуется.

Я получаю следующую ошибку, когда пытаюсь запустить службу vncserver с помощью /etc/init.d/vncserver start.

Пожалуйста, покажите мне, как настроить ssh-туннель с VNC с помощью шагов

Привет, Рави!
Я следовал вашим указаниям.
все работало нормально....
Но мое требование состояло в том, чтобы настроить несколько клиентов vnc для одного и того же пользователя. Например, скажем, пользователь techmint.
Поэтому я добавил запись для того же в файл /etc/sysconfig/vncservers как:
VNCSERVERS="1:techmint 2:techmint"
VNCSERVERARGS[1]="-geometry 1280×1024 ″
VNCSERVERARGS[2]="-геометрия 1280×1024"

После перезапуска службы я получаю черный и X в качестве курсора.
Не могли бы вы мне помочь?

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

Теперь моя проблема заключается в том, что я могу вызвать только два сеанса для третьего сеанса, который помечается ниже как ошибка:
Сервер VNC уже работает как: 3

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

Большое спасибо, мне очень нравится ваш учебник, он действительно упрощает установку…
Вы заслуживаете 100 звезд

Есть что сказать? Присоединяйтесь к обсуждению. Отменить ответ

Этот сайт использует Akismet для уменьшения количества спама. Узнайте, как обрабатываются данные ваших комментариев.

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

В этом руководстве вы настроите сервер VNC с TightVNC на сервере Ubuntu 20.04 и безопасно подключитесь к нему через туннель SSH. Затем вы будете использовать клиентскую программу VNC на локальном компьютере для взаимодействия с сервером через графическую среду рабочего стола.

Предпосылки

Для выполнения этого руководства вам потребуется:

  • Один сервер Ubuntu 20.04 с администратором без полномочий root и брандмауэром, настроенным с помощью UFW. Чтобы настроить это, следуйте нашему руководству по первоначальной настройке сервера для Ubuntu 20.04.
  • Локальный компьютер с установленным клиентом VNC. Используемый вами VNC-клиент должен поддерживать соединения через туннели SSH:
    • В Windows можно использовать TightVNC, RealVNC или UltraVNC.
    • В macOS вы можете использовать встроенную программу совместного доступа к экрану или кроссплатформенное приложение, например RealVNC.
    • В Linux вы можете выбрать один из многих вариантов, включая vinagre , krdc , RealVNC или TightVNC.

    Шаг 1 — Установка среды рабочего стола и VNC-сервера

    По умолчанию сервер Ubuntu 20.04 не поставляется с графической средой рабочего стола или установленным сервером VNC, поэтому вы начнете с их установки.

    У вас есть множество вариантов выбора сервера VNC и среды рабочего стола. В этом руководстве вы установите пакеты для последней версии среды рабочего стола Xfce и пакет TightVNC, доступный в официальном репозитории Ubuntu. Как Xfce, так и TightVNC известны своей легкостью и быстротой, что гарантирует бесперебойную и стабильную работу VNC-подключения даже при медленном подключении к Интернету.

    После подключения к серверу с помощью SSH обновите список пакетов:

    Теперь установите Xfce вместе с пакетом xfce4-goodies, который содержит несколько улучшений для среды рабочего стола:

    Во время установки вам может быть предложено выбрать диспетчер отображения по умолчанию для Xfce. Диспетчер отображения — это программа, которая позволяет вам выбирать среду рабочего стола и входить в нее через графический интерфейс. Вы будете использовать Xfce только при подключении к клиенту VNC, и в этих сеансах Xfce вы уже будете входить в систему как пользователь Ubuntu без полномочий root. Поэтому для целей этого руководства ваш выбор диспетчера отображения не имеет значения. Выберите любой из них и нажмите ENTER .

    После завершения установки установите сервер TightVNC:

    Затем запустите команду vncserver, чтобы установить пароль доступа к VNC, создать файлы начальной конфигурации и запустить экземпляр сервера VNC:

    Вам будет предложено ввести и подтвердить пароль для удаленного доступа к вашему компьютеру:

    Пароль должен содержать от шести до восьми символов. Пароли длиной более 8 символов будут автоматически усечены.

    После того как вы подтвердите пароль, у вас будет возможность создать пароль только для просмотра. Пользователи, которые входят в систему с паролем только для просмотра, не смогут управлять экземпляром VNC с помощью мыши или клавиатуры. Это полезная опция, если вы хотите продемонстрировать что-то другим людям, использующим ваш VNC-сервер, но это не обязательно.

    Затем процесс создает необходимые файлы конфигурации по умолчанию и информацию о соединении для сервера. Кроме того, он запускает экземпляр сервера по умолчанию на порту 5901. Этот порт называется портом отображения и обозначается VNC как :1 . VNC может запускать несколько экземпляров на других портах дисплея, при этом :2 относится к порту 5902 , :3 относится к 5903 и т. д.:

    Обратите внимание: если вы когда-нибудь захотите изменить свой пароль или добавить пароль только для просмотра, вы можете сделать это с помощью команды vncpasswd:

    На этом этапе сервер VNC установлен и запущен. Теперь давайте настроим его для запуска Xfce и предоставления нам доступа к серверу через графический интерфейс.

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

    Команды, запускаемые сервером VNC при запуске, находятся в файле конфигурации с именем xstartup в папке .vnc в вашем домашнем каталоге.Сценарий запуска был создан при выполнении команды vncserver на предыдущем шаге, но вы создадите свой собственный сценарий для запуска рабочего стола Xfce.

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

    Вывод будет выглядеть так, хотя вы увидите другой PID:

    Прежде чем изменять файл xstartup, создайте резервную копию оригинала:

    Теперь создайте новый файл xstartup и откройте его в текстовом редакторе, например nano :

    Затем добавьте в файл следующие строки:

    Первая строка – это шебанг. В исполняемых текстовых файлах на платформах *nix шебанг сообщает системе, какой интерпретатор передать этот файл для выполнения. В этом случае вы передаете файл интерпретатору Bash. Это позволит выполнять каждую последующую строку как команду по порядку.

    Первая команда в файле, xrdb $HOME/.Xresources, указывает графическому пользовательскому интерфейсу VNC прочитать файл .Xresources пользователя сервера. .Xresources — это место, где пользователь может вносить изменения в определенные настройки графического рабочего стола, такие как цвета терминала, темы курсора и рендеринг шрифтов. Вторая команда указывает серверу запустить Xfce. Всякий раз, когда вы запускаете или перезапускаете сервер VNC, эти команды будут выполняться автоматически.

    Сохраните и закройте файл после добавления этих строк. Если вы использовали nano , сделайте это, нажав CTRL + X , Y , затем ENTER .

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

    Затем перезапустите сервер VNC:

    Обратите внимание, что на этот раз команда включает параметр -localhost, который привязывает сервер VNC к петлевому интерфейсу вашего сервера. Это приведет к тому, что VNC будет разрешать подключения только с сервера, на котором он установлен.

    На следующем шаге вы установите туннель SSH между вашим локальным компьютером и вашим сервером, по сути обманув VNC, заставив его думать, что соединение с вашего локального компьютера происходит с вашего сервера. Эта стратегия добавит дополнительный уровень безопасности вокруг VNC, поскольку единственные пользователи, которые смогут получить к нему доступ, — это те, у кого уже есть доступ SSH к вашему серверу.

    Вы увидите вывод, похожий на этот:

    Настроив конфигурацию, вы готовы подключиться к серверу VNC с вашего локального компьютера.

    Шаг 3. Безопасное подключение к рабочему столу VNC

    VNC сам по себе не использует безопасные протоколы при подключении. Чтобы безопасно подключиться к серверу, вы создадите туннель SSH, а затем скажете своему клиенту VNC подключаться с использованием этого туннеля, а не устанавливать прямое соединение.

    Создайте SSH-подключение на локальном компьютере, которое безопасно перенаправляется на локальное подключение для VNC. Вы можете сделать это через терминал в Linux или macOS с помощью следующей команды ssh:

    Вот что означают параметры этой команды ssh:

    • -L 59000 :localhost: 5901 : Переключатель -L указывает, что данный порт на локальном компьютере ( 59000 ) должен быть переадресован на данный хост и порт на целевом сервере ( localhost:5901 , что означает порт 5901 на сервер назначения, определенный как your_server_ip ). Обратите внимание, что указанный вами локальный порт несколько произволен; если порт еще не привязан к другой службе, вы можете использовать его в качестве порта переадресации для своего туннеля.
    • -C : этот флаг включает сжатие, которое помогает минимизировать потребление ресурсов и ускорить работу.
    • -N: эта опция сообщает ssh, что вы не хотите выполнять какие-либо удаленные команды. Этот параметр полезен, когда вы просто хотите перенаправить порты.
    • -l sammy your_server_ip : Переключатель -l позволяет вам указать пользователя, под которым вы хотите войти в систему, как только вы подключитесь к серверу. Обязательно замените sammy и your_server_ip на имя пользователя без полномочий root и IP-адрес вашего сервера.

    Примечание. Эта команда устанавливает туннель SSH, который перенаправляет информацию с порта 5901 на вашем сервере VNC на порт 59000 на вашем локальном компьютере через порт 22 на каждом компьютере, порт по умолчанию для SSH. Предполагая, что вы следовали обязательному руководству по начальной настройке сервера для Ubuntu 20.04, вы добавили правило UFW, разрешающее подключения к вашему серверу через OpenSSH.

    Это более безопасно, чем просто открыть брандмауэр вашего сервера, чтобы разрешить подключения к порту 5901, так как это позволит любому получить доступ к вашему серверу через VNC. Подключаясь через туннель SSH, вы ограничиваете доступ VNC к компьютерам, у которых уже есть доступ SSH к серверу.

    Если вы используете PuTTY для подключения к серверу, вы можете создать туннель SSH, щелкнув правой кнопкой мыши верхнюю панель окна терминала и выбрав параметр «Изменить настройки…»:

    Щелкните правой кнопкой мыши на верхней панели, чтобы открыть параметр

    Найдите ветку Connection в древовидном меню в левой части окна PuTTY Reconfiguration. Разверните ветку SSH и нажмите «Туннели». На экране «Параметры управления переадресацией портов SSH» введите 59000 в качестве исходного порта и localhost:5901 в качестве адресата, например:

    Пример конфигурации туннеля PuTTY SSH

    Затем нажмите кнопку "Добавить", а затем кнопку "Применить", чтобы реализовать туннель.

    После запуска туннеля используйте клиент VNC для подключения к localhost:59000 . Вам будет предложено пройти аутентификацию, используя пароль, который вы установили на шаге 1.

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

    Подключение VNC к серверу Ubuntu 20.04 со средой рабочего стола Xfce

    Диспетчер файлов через подключение VNC к Ubuntu 20.04

    Нажмите CTRL+C в локальном терминале, чтобы остановить туннель SSH и вернуться к подсказке. Это также отключит ваш сеанс VNC.

    Теперь вы можете настроить свой сервер VNC для работы в качестве службы systemd.

    Шаг 4. Запуск VNC как системной службы

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

    Сначала создайте новый юнит-файл с именем /etc/systemd/system/vncserver@.service :

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

    Добавьте в файл следующие строки. Обязательно измените значение User, Group, WorkingDirectory и имя пользователя в значении PIDFILE, чтобы они соответствовали вашему имени пользователя:

    Команда ExecStartPre останавливает VNC, если он уже запущен. Команда ExecStart запускает VNC и устанавливает глубину цвета на 24-битный цвет с разрешением 1280x800. Вы также можете изменить эти параметры запуска в соответствии с вашими потребностями. Также обратите внимание, что команда ExecStart снова включает параметр -localhost.

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

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

    Включить файл модуля:

    Цифра 1 после знака @ означает, поверх какого отображаемого номера должна отображаться служба, в данном случае по умолчанию: 1, как обсуждалось на шаге 2.

    Остановите текущий экземпляр сервера VNC, если он все еще работает:

    Затем запустите его, как любую другую службу systemd:

    Вы можете убедиться, что он запустился с помощью этой команды:

    Если все запустилось правильно, вывод должен выглядеть следующим образом:

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

    Однако на стороне клиента разницы не будет. Чтобы повторно подключиться, снова запустите туннель SSH:

    Затем установите новое подключение с помощью клиентского программного обеспечения VNC к localhost:59000, чтобы подключиться к вашему серверу.

    Заключение

    Теперь у вас есть защищенный сервер VNC, работающий на вашем сервере Ubuntu 20.04. Теперь вы сможете управлять своими файлами, программным обеспечением и настройками с помощью удобного графического интерфейса, а также сможете удаленно запускать графическое программное обеспечение, например веб-браузеры.

    Хотите узнать больше? Присоединяйтесь к сообществу DigitalOcean!

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

    В этом руководстве мы установим TightVNC Server на Ubuntu 20.04, настроим его и будем использовать для подключения к удаленному рабочему столу.

    Как установить сервер TightVNC на Ubuntu 20.04:

    Подготовка

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

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

    ufw разрешить 5901/tcp

    Установка сервера TightVNC

    Графическая среда не устанавливается по умолчанию в серверных версиях Ubuntu. Поэтому, если мы хотим подключиться к удаленному рабочему столу, нам необходимо установить графическую оболочку. Заодно установим сам TightVNC Server.

    apt install xfce4 xfce4-goodies tightvncserver

    Настройка сервера TightVNC

    Давайте запустим сервер TightVNC в первый раз.Он создаст необходимые для работы файлы и попросит создать пароль.

    Установите пароль и подтвердите его. Если вам нужно ограничить управление удаленным рабочим столом, выберите пароль только для чтения.

    Теперь остановите сеанс TightVNC, чтобы настроить другие параметры.

    vncserver -kill :1

    Откройте файл конфигурации TightVNC.

    Добавьте следующую строку в конец.

    И снова запустите сервер.

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

    По умолчанию TightVNC не имеет демона и не включается после перезагрузки системы. Чтобы это исправить, давайте создадим новый юнит в systemd.

    Включите автозапуск сервера TightVNC и запустите его.

    systemctl enable --now vncserver

    Подключение к удаленному рабочему столу

    Запустите любой клиент VNC. Для Windows вы можете использовать RealVNC или TightVNC Viewer. Для линукса - Реммина. Используйте IP-адрес вашего сервера с портом 5901 в качестве сервера VNC.

    Запуск клиента VNC

    Скриншот 1. Запуск клиента VNC.

    Введите пароль, который вы создали ранее, и вы увидите удаленный рабочий стол.

    VNC или Virtual Network Computing — это инструмент для совместного использования рабочего стола с графическим интерфейсом, который позволяет удаленно управлять компьютером (сервером или рабочим столом) с другого компьютера (клиента). Сервер VNC передает все события клавиатуры и мыши с клиентского компьютера на серверный компьютер. Если вы еще не знакомы с командами CLI, такими как терминал и т. д., вы можете использовать VNC для управления файлами, программным обеспечением и системными настройками на удаленных компьютерах.

    В этом руководстве мы шаг за шагом проведем вас через настройку сервера VNC в Ubuntu 20.04. Мы установим XFCE рабочего стола Linux на сервер, а затем установим и настроим сервер VNC с помощью TightVNC.

    Предпосылки

    Что мы будем делать

    1. Обновить систему и создать пользователя
    2. Установите XFCE Desktop и TightVNC
    3. Первоначальная конфигурация VNC
    4. Настроить TightVNC
    5. Запуск TightVNC как услуги
    6. Подключение к серверу VNC через туннель SSH

    Шаг 1. Обновите систему и создайте пользователя

    Обновите репозиторий Ubuntu, а затем обновите систему с помощью приведенных ниже подходящих команд.

    В этом руководстве рабочий стол VNC будет доступен для пользователя без полномочий root. Итак, нам нужно создать нового пользователя и добавить его в группу sudo для root-доступа.

    Создайте нового пользователя с именем «edward» и дайте ему пароль.

    Теперь добавьте пользователя edward в группу sudo для доступа с привилегиями root.

    Новый пользователь с именем «edward» для доступа к VNC был создан, и пользователь сможет получить доступ к привилегиям root.

    Добавить системного пользователя Linux для подключения VNC

    Шаг 2. Установите XFCE Desktop и TightVNC

    В Linux есть несколько сред рабочего стола, таких как Gnome, Unity, KDE, LXDE, XFCE и т. д. В этом руководстве мы будем использовать рабочий стол XFCE в качестве среды рабочего стола VNC.

    Установите рабочий стол XFCE, включая все зависимости, с помощью приведенной ниже команды apt.

    Если установка XFCE для рабочего стола завершена, установите пакеты «tightvncserver».

    Выполните приведенную ниже команду apt.

    Рабочий стол XFCE и жесткий vncserver были установлены на сервере Ubuntu 16.04.

    Шаг 3. Первоначальная настройка VNC

    На этом шаге мы создадим конфигурацию VNC для пользователя edward.

    Войдите как «Эдвард»

    Теперь инициируйте настройку vnc для пользователя edward с помощью приведенной ниже команды.

    Вас попросят ввести пароль сервера VNC — введите пароль. А для пароля «только для просмотра» вы можете включить или отключить его. Пользователь, который входит на сервер с паролем «только для просмотра», не сможет управлять мышью и клавиатурой.

    Start VNC Server

    При первом запуске команды «vncserver» автоматически создается новый каталог конфигурации «.vnc» и запускается первый сеанс VNC.

    Проверьте это с помощью приведенной ниже команды.

    И вы получите результат, как показано ниже.

    VNC-сервер работает правильно

    Шаг 4. Настройка TightVNC

    На этом шаге мы настроим сервер VNC для использования рабочего стола XFCE. Мы отредактируем файл конфигурации VNC «xstartup» в каталоге «.vnc».

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

    Теперь сделайте резервную копию конфигурации по умолчанию и создайте новую с помощью vim.

    Вставьте туда следующую конфигурацию.

    Теперь сделайте скрипт исполняемым с помощью chmod и снова запустите команду vncserver.

    Проверьте список сеансов.

    И вы получите результат, как показано ниже.

    Как проверить и завершить сеанс VNC

    Шаг 5. Запуск TightVNC как службы

    В этом руководстве мы будем запускать сервер VNC как службу. Поэтому нам нужно создать для него новый служебный файл.

    Перейдите в каталог «/etc/systemd/system» и создайте новый служебный файл «[email protected]».

    Вставьте туда следующий скрипт службы vnc.

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

    Теперь перезагрузите службы systemd и запустите службу сервера VNC.

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

    В нашем случае результаты следующие:

    VNC как услуга

    Сервер VNC установлен, и первый сеанс теперь выполняется под пользователем edward.

    Шаг 6. Подключитесь к VNC-серверу через SSH-туннель

    На этом шаге мы подключимся к нашему серверу VNC через ssh-туннель.

    Откройте терминал и введите команду ssh, как показано ниже.

    Введите пароль для входа в SSH.

    Подключение к VNC через туннель SSH

    Команда создаст туннель между вашим локальным хостом и сервером VNC. Порт 5901 на локальном хосте будет перенаправлен на сервер VNC «192.168.33.10» через порт 5901.

    Теперь откройте приложение «vnc viewer», создайте новое подключение и введите адрес сервера VNC с IP-адресом локального хоста 127.0.0.1 и портом 5901, как показано ниже.

    VNC Viewer< бр />

    Подключитесь к серверу VNC, и вам будет предложено ввести пароль сервера VNC. Введите пароль и нажмите «ОК».

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

    Теперь вы получите рабочий стол XFCE со своего сервера.

    Нажмите кнопку «использовать конфигурацию по умолчанию» в первый раз, и вы получите рабочий стол XFCE с конфигурацией по умолчанию.

    Подключение VNC к рабочему столу сервера

    Установка сервера VNC с помощью TightVNC в Ubuntu 20.04 успешно завершена.

    Читайте также: