Virtual Network Computing (VNC) je grafický systém zdieľania pracovnej plochy, ktorý vám umožňuje vzdialene ovládať iný počítač pomocou klávesnice a myši. Je to open-source alternatíva k protokolu Microsoft Remote Desktop Protocol (RDP).
Tento článok vysvetľuje, ako nainštalovať a nakonfigurovať server VNC na systéme Ubuntu 20.04. Ukážeme vám tiež, ako sa bezpečne pripojiť k serveru VNC cez tunel SSH.
Inštalácia desktopového prostredia #
Servery Ubuntu sa spravujú z príkazového riadku a predvolene nemajú nainštalované desktopové prostredie. Ak používate desktopovú verziu Ubuntu, tento krok preskočte.
V úložiskách Ubuntu sú k dispozícii rôzne prostredia počítačov. Jednou z možností je inštalácia Gnome, čo je predvolené desktopové prostredie v Ubuntu 20.04. Ďalšou možnosťou je inštalácia Xfce . Je to rýchle, stabilné a ľahké desktopové prostredie, vďaka čomu je ideálne na použitie na vzdialenom serveri.
V tejto príručke nainštalujeme Xfce. Zadajte nasledujúce príkazy ako používateľ s oprávneniami sudo:
sudo apt aktualizácia
sudo apt nainštalovať xfce4 xfce4-goodies
V závislosti od vášho systému môže sťahovanie a inštalácia balíkov Xfce chvíľu trvať.
Inštalácia servera VNC #
V úložiskách Ubuntu je k dispozícii niekoľko rôznych serverov VNC, napríklad TightVNC, TigerVNC a x11vnc . Každý server VNC má rôzne silné a slabé stránky, pokiaľ ide o rýchlosť a bezpečnosť.
Inštalujeme TigerVNC. Je to aktívne udržiavaný vysoko výkonný server VNC. Zadajte nasledujúci príkaz na inštaláciu balíka:
sudo apt nainštalovať tigervnc-standalone-server
Konfigurácia prístupu VNC #
Po nainštalovaní servera VNC je ďalším krokom vytvorenie počiatočnej konfigurácie používateľa a nastavenie hesla.
Nastavte užívateľské heslo pomocou vncpasswd
príkaz. Nepoužívajte sudo pri spustení príkazu uvedeného nižšie:
vncpasswd
Zobrazí sa výzva na zadanie a potvrdenie hesla a toho, či ho nastavíte ako heslo iba na zobrazenie. Ak sa rozhodnete nastaviť heslo iba na zobrazenie, používateľ nebude môcť interagovať s inštanciou VNC pomocou myši a klávesnice.
Heslo: Overiť: Chcete zadať heslo iba na zobrazenie (áno / nie)? n
Súbor s heslom je uložený v priečinku ~ /.vnc
adresár, ktorý sa vytvorí, ak nie je k dispozícii.
Ďalej musíme nakonfigurovať TigerVNC na používanie Xfce. Ak to chcete urobiť, vytvorte nasledujúci súbor:
~ /.vnc / xstartupnano ~ /.vnc / xstartup
#!/ bin / sh zrušiť nastavenie SESSION_MANAGER zrušiť nastavenie DBUS_SESSION_BUS_ADDRESS spustiť startxfce4
Uložte a zatvorte súbor. Vyššie uvedené príkazy sa vykonajú automaticky pri každom spustení alebo reštartovaní servera TigerVNC.
The ~ /.vnc / xstartup
súbor tiež musí mať povolenie na vykonávanie. Použi chmod
príkaz na nastavenie oprávnení súboru:
chmod u + x ~ /.vnc / xstartup
Ak potrebujete preniesť ďalšie možnosti na server VNC, vytvorte súbor s názvom konfigur
a pridať jednu možnosť na každý riadok. Tu je príklad:
geometria = 1920x1080 dpi = 96
Teraz môžete server VNC spustiť pomocou vncserver
príkaz:
vncserver
Nový server2.linuxizovať.com: 1 (linuxize) 'desktop na: 1 na strojovom serveri2.linuxizovať.com Spustenie aplikácií uvedených v / home / linuxize /.vnc / xstartup Súbor protokolu je / home / linuxize /.vnc / server2.linuxizovať.sk: 1.log Použite xtigervncviewer -SecurityTypes VncAuth -passwd / home / linuxize /.vnc / passwd: 1 na pripojenie k serveru VNC.
Všimnite si : 1
za názvom hostiteľa vo výstupe vyššie. Toto označuje číslo zobrazovacieho portu, na ktorom je spustený server vnc. V tomto príklade je server spustený na porte TCP 5901
(5900 + 1). Ak vytvoríte druhú inštanciu pomocou vncserver
pobeží na nasledujúcom voľnom porte i.e : 2
, čo znamená, že server beží na porte 5902
(5900 + 2).
Je dôležité pamätať na to, že pri práci so servermi VNC, :X
je zobrazovací port, na ktorý sa odkazuje 5900 + X
.
Zoznam všetkých momentálne prebiehajúcich relácií VNC môžete získať zadaním:
vncserver -list
Relácie servera TigerVNC: X DISPLAY # RFB PORT # ID PROCESU: 1 5901 5710
Pred pokračovaním v ďalšom kroku zastavte inštanciu VNC pomocou vncserver
velenie s a -zabiť
možnosť a číslo servera ako argument. V tomto príklade je server spustený na porte 5901 (: 1
), takže to zastavíme:
vncserver -kill: 1
Zabíjanie procesu Xtigervnc ID 5710 ... úspech!
Vytvorenie súboru jednotky Systemd #
Namiesto manuálneho spustenia relácie VNC vytvorme súbor systémovej jednotky, aby ste podľa potreby spustili, zastavili a reštartovali službu VNC.
Otvorte textový editor a skopírujte do neho nasledujúcu konfiguráciu. Nezabudnite zmeniť používateľské meno na riadku 7 tak, aby sa zhodovalo s vašim používateľským menom.
sudo nano / etc / systemd / system / vncserver @.služby
/ etc / systemd / system / vncserver @.služby[Jednotka] Popis = Služba vzdialenej pracovnej plochy (VNC) After = syslog.cieľová sieť.target [Service] Type = simple User = linuxize PAMName = login 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 -vždy zdieľané -fg ExecStop = / usr / bin / vncserver -kill:% i [inštalácia] WantedBy = viacužívateľ.cieľ
Uložte a zatvorte súbor.
Oznámte systému, že je vytvorený nový súbor jednotky:
sudo systemctl daemon-reload
Povoliť spustenie služby pri štarte:
sudo systemctl povoliť vncserver @ 1.služby
Číslo 1
po @
znamienko definuje port displeja, na ktorom bude bežať služba VNC. To znamená, že server VNC bude počúvať na porte 5901
, ako sme diskutovali v predchádzajúcej časti.
Spustite službu VNC vykonaním:
sudo systemctl start vncserver @ 1.služby
Overte, či je služba úspešne spustená pomocou:
sudo systemctl status vncserver @ 1.služby
● vncserver @ 1.služba - služba vzdialenej pracovnej plochy (VNC) Načítaná: načítaná (/ etc / systemd / system / vncserver @.služba; povolené; prednastavenie dodávateľa: povolené) Aktívne: aktívne (beží) od pia 2021-03-26 20:00:59 UTC; Pred 3 s ..
Pripojenie k serveru VNC #
VNC nie je šifrovaný protokol a môže byť predmetom sniffingu paketov. Odporúčaným prístupom je vytvorenie tunela SSH a bezpečné preposielanie prenosov z miestneho počítača na porte 5901 na server na rovnakom porte.
Nastaviť tunelové prepojenie SSH v systémoch Linux a macOS #
Ak na svojom počítači používate systém Linux, macOS alebo akýkoľvek iný operačný systém založený na systéme Unix, tunel SSH môžete ľahko vytvoriť pomocou nasledujúceho príkazu:
ssh -L 5901: 127.0.0.1: 5901 -N -f -l tulák 192.168.33.10
Zobrazí sa výzva na zadanie hesla používateľa.
Uistite sa, že ste vymenili používateľské meno
a server_ip_address
s vašim používateľským menom a IP adresou vášho servera.
Nastaviť tunelové prepojenie SSH v systéme Windows #
Ak používate Windows, môžete tunelové prepojenie SSH nastaviť pomocou klienta PuTTY SSH .
Otvorte tmel a zadajte adresu IP servera do priečinka Názov hostiteľa alebo adresa IP
lúka.
Pod Pripojenie
ponuka, box, rozbaliť SSH
, a vyberte Tunely
. Zadajte port servera VNC (5901
) v Zdrojový port
pole a zadajte server_ip_address: 5901
v Destinácia
pole a kliknite na Pridať
tlačidlo zobrazené na obrázku nižšie:
Vráťte sa do Session
uložte nastavenia, takže ich nemusíte zadávať zakaždým. Na vzdialený server vyberte uloženú reláciu a kliknite na ikonu Otvorené
tlačidlo.
Pripojenie pomocou Vncviewer #
Teraz, keď je tunel SSH vytvorený, je čas otvoriť Vncviewer a pripojiť sa k serveru VNC na localhost: 5901
.
Pre prehliadač Google Chrome môžete použiť ľubovoľný prehliadač VNC, napríklad TigerVNC, TightVNC, RealVNC, UltraVNC, Vinagre a VNC Viewer .
Budeme používať TigerVNC. Otvorte prehliadač a vstúpte localhost: 5901
, a kliknite na ikonu Pripojte sa
tlačidlo.
Po výzve zadajte svoje užívateľské heslo a mala by sa vám zobraziť predvolená pracovná plocha Xfce. Bude to vyzerať asi takto:
So vzdialenou pracovnou plochou XFCE môžete začať komunikovať z miestneho počítača pomocou klávesnice a myši.
Záver #
Ukázali sme vám, ako nainštalovať a nakonfigurovať funkčný server VNC v systéme Ubuntu 20.04.
Ak chcete nakonfigurovať svoj server VNC tak, aby zobrazoval viac ako jedného používateľa, vytvorte počiatočnú konfiguráciu a nastavte heslo pomocou vncpasswd
príkaz. Budete tiež musieť vytvoriť nový súbor služieb pomocou iného portu.
Ak máte akékoľvek otázky, neváhajte zanechať komentár.