linux-notes.org
Установка и настройка VNC Server на Debian/Ubuntu/Linux Mint
Virtual Network Computing (VNC) — система для подключения к рабочему столу удаленно используя протокол RFB (англ. Remote FrameBuffer, удалённый кадровый буфер).
VNC состоит из VNC-клиента, который называется VNC viewer, он только запущен на одной ОС и можно подключаться к VNC-серверу который работает на другой операционной системе. Реализация клиентской и серверной части есть почти для всех ОС, даже для Java (которая включает J2ME). На один VNC-сервер одновременно могут быть подключены большое множество клиентов. Наиболее популярный способ использования VNC — это удалённое подключение к рабочему компьютеру из дома для технической поддержки вашего сервера. В своей статье «Установка и настройка VNC Server на Debian/Ubuntu/Linux Mint» я расскажу как это можно сделать.
Чтобы установить VNC, достаточно выполнить команду:
Вы можете использовать любого пользователя для входа в свой VNC Server, но по соображениям безопасности, я собираюсь создать VNC пользователя для моего VNC Server-а:
Устанавливаем для него пароль:
Теперь переключимся на этого пользователя (vncuser) для создания некоторых конфигурационных файлов для VNC:
После этого, запускаем VNC сервер:
После запуска VNC-сервера, вам будет предложено создать VNC пароль. Устанавливаем любой удобный для вас пароль, но не более 9 символов ( если больше, то он обрежит его).
На рисунке ниже видно как стартанул наш vnc сервер, но нам его нужно немного подредактировать:
Чтобы сделать настройку в сценарие запуска, мы должны убить сессию, что мы только что создали:
После чего нужно открыть и поправить файл конфигурации:
Измените немного конфигурацию по вашему усмотрению ( у меся я поправил разрешение экрана), мой готовый конфигурационный файл я выложил и прочитать его можно тут, чтобы скачать используйте команду:
После чего запускаем нашу сессию с разрешением экрана 1024×600:
Установка Gnome X Window для Ubuntu (на стороне клиента, можно установить и другую среду):
Вот еще моя статья как установить другую графическую оболочку:
Установка GUI на Debian/Ubuntu/Mint
PS: не забываем прописывать нужную строку в конфиг xstartup.
Если вы решите использовать другие графические интерфейсы:
Для Gnome-Desktop Environment
Для KDE-Desktop Environment
Для MATE-Desktop Environment
Для LXDE-Desktop Environment
Для Cinnamon-Desktop Environment
Для Openbox-Desktop Environment
Я собрал это все до кучи и закоментировал не нужные строки, оставил только gnome, т.к я его устанавливал. Вы можете скачать данный конфиг и отредактировать его для настройки своего VNC сервера (для своего графического интерфейса):
Я приведу пример со своим использованием, я юзаю windows 8, по этому я скачал vnc- viewer.
Использование VNC Viewer для просмотра и управления VNC-сервера с удаленного хоста.
Перед тем как использовать vnc-viewer, нужно его скачать. После чего запускаем его и вводим в поле IP адрес хоста (у меня это сделать не получилось и не знаю по чему), я использую виртуальную машину, по этому я ввел следующее:
ubuntu:1
Открылось окно и я ввел свой пароль, который я вводил (создал) немного выше. Вот и все, работает все)
После перезагрузки сервера, мы не будем иметь возможность подключиться к серверу с VNC, это потому, что команда «vncserver -geometry 1024×600» , что мы набрали выше не является постоянным. Чтобы решить эту проблему, я будем использовать отличный сценарий Джастин Buser.
Для начала создадим следующее:
Затем создайте пустой сценарий инициализации и сделайте его исполняемым:
И добавьте текст который можно найти и прочитать тут, так же можете просто его скачать и разместить у себя ( только не забудьте сделать его исполняемым):
Сейчас перезапустим наш сервер:
Если вы не можете получить доступ к VNC-сервера, то убедитесь, что вы открыли порты VNC в IPTables:
если не открыли, то открываем их:
и сохраняем все изменения:
Делаем возможность подключения для нескольких пользователей.
Создание локального пользователя, с помощью следующей команды:
Переключитесь на вновь созданного пользователя и запустить этого vncserver командой:
vncserver для дополнительного сервера
Перейдем в домашнюю директорию и отредактируем файл XStartup:
и вставляем в этот файл тоже самое что и для моего первого юзера, берем его от сюда.
Теперь откройте файл /etc/vncserver/vncservers.conf как рут пользователь:
Добавим в уже имеющийся конфиг:
Ребутим наш сервер:
Предотвращение запуск Gnome при загрузке на сервере.
Гном автоматически запускается при загрузке в Ubuntu 12.04 LTS, если мы подключить монитор к нашему серверу мы увидим, что GUI запустился и ждет чтобы мы вошли, это не очень удобно. Сейчас мы это исправим. Чтобы это предотвратить нужно отредактировать файл gdm.conf:
Нужно в этом файле конфигурации закомментировать 6 строчек:
VNC шифрование через ssh туннель
По умолчанию, VNC не является безопасным протоколом, по этому (так безопаснее) мы запустим сервер VNC только на 127.0.0.1 (локальный) и пробросим его через туннель SSH (для этого, есть варианты в Putty).
В Ubuntu нужно отредактировать:
Нужно добавить опцию «-localhost»
проксирование vnc-server на localhost
Запустите PuTTY/ Kitty, введите IP-адрес или имя хоста сервера VNC:
использование vnc через kitty
Переходим на другую вкладку, Session->Connection->SSH.
использование vnc через kitty, настройка
Через команду можно посмотреть что все работает:
После чего уже запускаем непосредственно, vnc viewer и прописываем заместо нашего реального ИП, localhost:1 (или 2). Вводим пароль и можно использовать.
Надеюсь что эта статья «Установка и настройка VNC Server на Debian/Ubuntu/Linux Mint» помогла вам и на этом я закончу ее.
4 thoughts on “ Установка и настройка VNC Server на Debian/Ubuntu/Linux Mint ”
Все настроил как тут описано, но в итоге после отключения завершается сеанс, это очень не удобно.
Как сделать что бы он не завершался
Я думаю что Вы не прописали (добавили) автозапуск vncserver-а.
# update-rc.d vncserver defaults 99
# service vncserver restart
А не подскажете, как лучше настроить сервер, для того что бы клиент мог работать на двух мониторах? Находил решение удвоить значение width в geometry (например, два монитора по 1024×800, то значение -geometry 2048×800, в фулскрин-моде ложится на два монитора). А вот если мониторы разные?
Удвоить длину наименьшего монитора.
Добавить комментарий Отменить ответ
Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.
Справочная информация
про свой опыт решения некоторых проблем и использования ряда возможностей ОС и приложений
среда, 19 сентября 2018 г.
Доступ по VNC (удалённому рабочему столу) в Linux Mint 19
При попытке доступа по VNC к удалённому рабочему столу Linux Mint 19 пришлось столкнуться с тем, что, по сравнению с предыдущими версиями (17, 18), по умолчанию такой возможности не предоставляется. При дальнейших действиях по организации возможности подключения по VNC к узлу под управлением Linux Mint 19 необходимость приложить ряд дополнительных усилий стала напоминать эпизод из фильма:
– Тебя как, сразу прикончить или желаешь помучиться?
– Лучше, конечно, помучиться.
(из к/ф «Белое солнце пустыни»)
Началось всё с того, что в настройках (далее имеется в виду графическое окружение XFCE) раздела «Сеансы и запуск» и вкладке «Автозапуск» никакого упоминания о подключении к удалённому рабочему столу не имеется, хотя в предыдущей Linux Mint 18 пункт включения был расположен между обновлением папок пользователя и сетью.
За реализацию сервера VNC в Linux Mint отвечает пакет vino, который в Linux Mint 19 по умолчанию не устанавливается. Данный пакет необходимо установить и, в принципе, его можно легко найти через Synaptic.
Однако этого будет недостаточно. Как показало изучение вопроса, разработчики vino удалили из своего продукта утилиту графической настройки, поэтому настройку vino необходимо будет произвести через конфигуратор dconf-editor.
Выполните в терминале команду, которая установит необходимые компоненты и запустит dconf-editor
sudo apt install -y vino dconf-editor && sudo dconf-editor
При запуске dconf-editor будет показано предупреждение, что вносимые изменения осуществляются вами на свой страх и риск и для продолжения необходимо нажать на кнопку «I’ll be careful» (я буду осторожен). Для выключения этого показа при последующих запусках dconf-editor снимите галочку в поле «Show this dialog next time».
После запуска графического конфигуратора системы путём последовательного перемещения «gnome – desktop» перейдите в секцию «remote-access»
Если планируется подключаться по клиенту VNC из Windows, то, как пишут, желательно выключить шифрование (двигать движок в соответствующей строке).
Несмотря на то, что это, как говорится, не есть «гуд», но в локальной сети, которой доверяете, данное действие допустимо.
Аналогичным образом поступите с prompt-enabled, иначе на другом компьютере придётся каждый раз «одобрять» удалённое к нему подключение.
В целях какой-никакой защиты установите пароль на подключение, выключив настройку по умолчанию и введя придуманный Вами пароль, например:
Чтобы закрепить данное изменение нажмите на кнопку зелёного цвета.
Закройте конфигуратор и перейдите к настройкам автозапуска. Добавьте в список автоматически запускаемых при старте системы программ ПО vino
Рисунок относится к оболочке XFCE. В Cinnamon и MATE используйте существующие в них настройки автозапуска программ.
На компьютере, с которого будете подключаться, создайте соответствующее соединение. На рисунке ниже подключение будет осуществляться с узла Linux, поэтому оно добавляется в программе Remmina.
Обратите внимание, что имя пользователя вводить не надо, вводится только пароль, который был задан при настройке vino через графический конфигуратор dconf-editor.
На рисунке указан узел H-4.vot, что соответствует полному доменному имени узла. В этом случае подразумевается, что DNS сервер Вашей локальной сети умеет сопоставлять выданные DHCP адреса IP именам узлов сети. MikroTik, например, умеет это делать через специальный скрипт. Если сервера DNS не имеется или он не умеет этого делать, то назначьте узлу, к которому будете удалённо подключаться, статический адрес (или настройте сервер DHCP на выдачу ему одного и того же адреса) и подключайтесь по IP.
Если всё сделано правильно, то будете иметь удовольствие наблюдать удалённый рабочий стол узла Linux, к которому подключились, а также управлять этим компьютером.
При этом на панели (как правило, внизу) будет отображаться значок (при теме оформления Mint-Y – голубого цвета), отображающий факт удалённого подключения к рабочему столу.
Быстрота реагирования удалённого компьютера на Ваши команды зависит от его аппаратных возможностей, степени загруженности системы, а также количества передаваемых данных по VNC. При рассмотрении вопроса об «отзывчивости» удалённой системы во многих публикациях пишут о проигрыше VNC перед RDP, но ничего лучшего для удалённого подключения к Linux с GUI лично мне встретить не удалось. С целью повышения скорости реагирования конечной системы можно попробовать «поиграться» с настройками качества отображения экрана целевого компьютера в параметрах соединения (см. окно настроек подключения Remmina):
Альтернативное решение – x11vnc (подробности).