Virtual Network Computing (VNC) е графична система за споделяне на работния плот, която ви позволява да използвате клавиатурата и мишката си за дистанционно управление на друг компютър. Това е алтернатива с отворен код на протокола за отдалечен работен плот на Microsoft (RDP).
Тази статия обяснява как да инсталирате и конфигурирате VNC сървър на Ubuntu 20.04. Ще ви покажем и как да се свържете сигурно с VNC сървъра чрез SSH тунел.
Инсталиране на работна среда #
Сървърите на Ubuntu се управляват от командния ред и по подразбиране нямат инсталирана работна среда. Ако стартирате настолната версия на Ubuntu, пропуснете тази стъпка.
Налични са различни десктоп среди в хранилищата на Ubuntu. Единият вариант е да инсталирате Gnome, който е работната среда по подразбиране в Ubuntu 20.04. Друга възможност е да инсталирате Xfce . Това е бърза, стабилна и лека работна среда, което я прави идеална за използване на отдалечен сървър.
В това ръководство ще инсталираме Xfce. Въведете следните команди като потребител с права на sudo:
sudo apt актуализация
sudo apt инсталирайте xfce4 xfce4-екстри
В зависимост от вашата система, изтеглянето и инсталирането на пакети 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 премахнете SESSION_MANAGER премахнете DBUS_SESSION_BUS_ADDRESS exec startxfce4
Запазете и затворете файла. Командите по-горе се изпълняват автоматично, когато стартирате или рестартирате сървъра TigerVNC.
The ~ /.vnc / xstartup
файлът също трябва да има разрешения за изпълнение. Използвай chmod
команда за задаване на разрешенията за файла:
chmod u + x ~ /.vnc / xstartup
Ако трябва да предадете допълнителни опции на VNC сървъра, създайте файл с име конфиг
и добавете по една опция на ред. Ето пример:
геометрия = 1920x1080 dpi = 96
Вече можете да стартирате VNC сървъра с помощта на vncserver
команда:
vncserver
Нов сървър2.линуксирайте.com: 1 (linuxize) 'работен плот на: 1 на машинен сървър2.линуксирайте.com Стартиране на приложения, посочени в / home / linuxize /.vnc / xstartup Регистрационният файл е / home / linuxize /.vnc / сървър2.линуксирайте.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
команда с a -убий
опция и номера на сървъра като аргумент. В този пример сървърът работи в порт 5901 (: 1
), така че ще го спрем с:
vncserver -kill: 1
Убиване на Xtigervnc процес ID 5710 ... успех!
Създаване на Systemd единичен файл #
Вместо да стартираме ръчно VNC сесията, нека създадем файл на systemd unit, така че да стартирате, спрете и рестартирате VNC услугата, ако е необходимо.
Отворете вашия текстов редактор и копирайте и поставете следната конфигурация в него. Не забравяйте да промените потребителското име на ред 7, за да съответства на вашето потребителско име.
sudo nano / etc / systemd / system / vncserver @.обслужване
/ etc / systemd / system / vncserver @.обслужване[Единица] Описание = Услуга за отдалечен работен плот (VNC) After = syslog.целевата мрежа.target [услуга] Тип = прост потребител = linuxize PAMName = вход PIDFile = / начало /% 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 = multi-user.мишена
Запазете и затворете файла.
Уведомете systemd, че е създаден нов единичен файл:
sudo systemctl daemon-reload
Активирайте услугата да стартира при зареждане:
sudo systemctl разреши vncserver @ 1.обслужване
Броя 1
След @
знак дефинира порта за показване, на който ще работи услугата VNC. Това означава, че VNC сървърът ще слуша на порт 5901
, както обсъждахме в предишния раздел.
Стартирайте услугата VNC, като изпълните:
sudo systemctl start vncserver @ 1.обслужване
Проверете дали услугата е стартирана успешно със:
sudo systemctl статус vncserver @ 1.обслужване
● vncserver @ 1.услуга - Услуга за отдалечен работен плот (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
Ще бъдете подканени да въведете потребителската парола.
Не забравяйте да замените потребителско име
и server_ip_address
с вашето потребителско име и IP адреса на вашия сървър.
Настройте SSH тунелиране на Windows #
Ако стартирате Windows, можете да настроите SSH тунелиране с помощта на PuTTY SSH клиент .
Отворете Putty и въведете IP адреса на вашия сървър в Име на хост или IP адрес
поле.
Под Връзка
меню, поле, разгъване SSH
, и изберете Тунели
. Въведете VNC сървърния порт (5901
) в Изходен порт
поле и въведете server_ip_address: 5901
в Дестинация
и кликнете върху Добавяне
бутон, както е показано на изображението по-долу:
Върнете се в Сесия
страница, за да запазите настройките, така че не е нужно да ги въвеждате всеки път. На отдалечения сървър изберете запазената сесия и кликнете върху Отворете
бутон.
Свързване чрез Vncviewer #
Сега, когато е създаден SSH тунелът, е време да отворите своя Vncviewer и да се свържете с VNC сървъра на localhost: 5901
.
Можете да използвате всеки VNC преглед, като TigerVNC, TightVNC, RealVNC, UltraVNC, Vinagre и VNC Viewer за Google Chrome .
Ще използваме TigerVNC. Отворете инструмента за преглед, въведете localhost: 5901
, и кликнете върху Свържете
бутон.
Въведете вашата потребителска парола, когато бъдете подканени, и ще видите работния плот по подразбиране Xfce. Ще изглежда по следния начин:
Можете да започнете да взаимодействате с отдалечения работен плот на XFCE от вашата локална машина, като използвате клавиатурата и мишката.
Заключение №
Показахме ви как да инсталирате и конфигурирате VNC сървър, работещ и работещ, на Ubuntu 20.04.
За да конфигурирате вашия VNC сървър за стартиране на дисплей за повече от един потребител, създайте първоначалната конфигурация и задайте паролата, като използвате vncpasswd
команда. Също така ще трябва да създадете нов сервизен файл, използвайки различен порт.
Чувствайте се свободни да оставите коментар, ако имате въпроси.