VNC (Virtual Network Computing) vám umožňuje používat váš server stejně jako váš počítač – s grafickým uživatelským rozhraním (GUI), pracovní plochou, myší a klávesnicí. Usnadňuje práci uživatelům, kteří s prací na serveru teprve začínají.
CloudSigma vám umožňuje přístup k VNC ihned po vytvoření serveru. Spolu s tím si v tomto návodu nastavíte VNC server na Ubuntu 18.04 a připojíte se k němu pomocí zabezpečeného tunelu. V tomto návodu použijete TigerVNC, což je lehký a rychlý balíček VNC serveru. Zajistí plynulý chod i na pomalých sítích.
Požadavky
Nejprve musíte vytvořit stroj. To můžete snadno provést v sekci výpočtů (compute) ve webové aplikaci CloudSigma:

Pro tento návod můžete použít následující prostředky:
CPU: 8 GHz
RAM: 8 GB
SSD: 50 GB
Disk můžete připojit s Ubuntu 18.04 LTS obrazem dostupným v knihovně CloudSigma:
Ubuntu 18.04: Předinstalovaná 64bitová verze s ovladači VirtIO, superuživatelem, Pythonem 2.7.17, Pipem 20.0.2, OpenSSL 1.1.1d, Cloud-init a nejnovějšími aktualizacemi do 2019-03-03.
Po spuštění stroje můžete aktualizovat všechny stávající repozitáře a balíčky v systému spuštěním následujících příkazů:
|
1 2 |
sudo apt update sudo apt upgrade |
Funkce CloudSigma VNC
CloudSigma vám poskytuje snadný způsob přístupu k vašim strojům přes VNC.

Kliknutím na přepínač VNC Tunnel’s jej povolíte. Jakmile tak učiníte, uvidíte tuto obrazovku.

Pokud máte připojený SSH klíč, budete muset k serveru přistoupit a změnit heslo pomocí následujícího příkazu:
|
1 2 3 |
ssh -i key.pem cloudsigma@IP sudo passwd cloudsigma |
Pokud nemáte připojený SSH klíč, můžete výše uvedený krok přeskočit. Heslo najdete v Install Notes.
Můžete buď kliknout na ‘Display VNC’ pro otevření okna VNC v prohlížeči, nebo na ‘Display VNC URL’ pro zobrazení podrobností potřebných k připojení k VNC klientovi. Když kliknete na ‘Display VNC’, otevře se nová karta a požádá vás o přihlašovací údaje. Můžete jej používat stejným způsobem, jako byste používali VM s VNC klientem.

Nyní se podíváme na druhý způsob instalace VNC na server.
Instalace VNC serveru
Obraz Ubuntu standardně neobsahuje balíčky s grafickým rozhraním (GUI). Nainstalujeme balíčky pro nejnovější desktopové prostředí XFCE a balíček TigerVNC dostupný v repozitáři Ubuntu.
Balíček XFCE můžete nainstalovat pomocí následujícího příkazu:
sudo apt install xfce4 xfce4-goodies
Po instalaci balíčků XFCE můžete nainstalovat server TigerVNC pomocí následujícího příkazu:
|
1 |
sudo apt install tightvncserver |
Pro dokončení konfigurace spusťte následující příkaz a nastavte heslo pro připojení VNC:
|
1 |
vncserver |
Při spuštění výše uvedeného příkazu budete dotázáni, zda se chcete přihlásit s heslem pouze pro prohlížení (view-only). S heslem pouze pro prohlížení můžete obrazovku pouze vidět, ale nemůžete systém ovládat. Tato možnost je užitečná, pokud chcete, aby někdo jiný mohl obrazovku sledovat, ale ne ji ovládat.
Dále příkaz vytvoří všechny požadované konfigurace. V této fázi již můžete VNC server používat ze vzdáleného systému nebo ze svého počítače. V rámci tohoto návodu však náš server před použitím ještě dále nakonfigurujeme.
Konfigurace VNC serveru
V této části si ukážeme, jak nakonfigurovat preferované desktopové prostředí, které se má použít.
Tyto příkazy musíte nakonfigurovat v souboru s názvem ‘xstartup’ ve složce .vnc ve vašem domovském adresáři. Když jste poprvé spustili příkaz vncserver, vytvořil se spouštěcí skript. Vytvoříte další, který spustí plochu XFCE.
Kromě toho, když jste poprvé spustili příkaz vncserver, spustil výchozí instanci serveru s portem 5901. Tento port se nazývá display port a VNC jej označuje jako “:1”. Pokud příkaz spustíte znovu, VNC vytvoří další instanci “:2” na jiných portech atd.
Protože se chystáte nakonfigurovat VNC server, zastavte již běžící instance:
|
1 |
vncserver -kill :1 |
Před úpravou spouštěcího souboru si vytvořte zálohu původního souboru:
|
1 |
mv ~/.vnc/xstartup ~/.vnc/xstartup.bak |
Nyní můžete upravit původní soubor pomocí editoru vim a nahradit jeho obsah následujícím:
|
1 2 3 4 5 6 7 |
vim ~/.vnc/xstartup Obsah: #!/bin/bash xrdb $HOME/.Xresources startxfce4 & |
Kdykoli spustíte nebo restartujete vncserver, proces spustí příkazy z tohoto souboru. Tyto příkazy spustí desktopové prostředí, pokud ještě neběží.
První příkaz, “xrdb $HOME/.Xresources” říká GUI frameworku, aby načetl konfiguraci z tohoto umístění. Můžete nakonfigurovat různá nastavení plochy, jako jsou barvy terminálu, motivy kurzoru atd. Druhý příkaz spustí XFCE.
Chcete-li zajistit, aby server VNC mohl soubor spustit, musíte změnit jeho oprávnění:
|
1 |
sudo chmod +x ~/.vnc/xstartup |
Po změně oprávnění. Nyní můžete spustit VNC server:
|
1 |
vncserver |

Nyní, když je server připraven, se k němu můžeme připojit z našeho počítače.
Vytvoření zabezpečeného tunelu pro připojení VNC
Vzhledem k tomu, že VNC při připojování nepoužívá zabezpečené protokoly, použijeme k vytvoření zabezpečeného připojení SSH. K připojení k naší virtuální ploše můžeme použít zabezpečený SSH tunel.
Chcete-li vytvořit SSH tunel, který bezpečně přesměruje připojení na localhost, můžete v terminálu nebo PowerShellu (pro Windows) použít následující příkaz:
|
1 |
ssh -L 5901:127.0.0.1:5901 -C -N -l <UserName> <ServerIP> -i <pemKey> |
Ve výše uvedeném příkazu,
-L: Slouží k určení vazeb portů. V tomto případě přesměrováváme port 5901 serveru na port 5901 našeho systému
-C: Slouží k povolení komprese
-N: Slouží k určení, že není vyžadováno žádné vzdálené spuštění příkazu
-l: Určuje vzdálené přihlašovací jméno
-i: Určuje umístění klíče

Jakmile tunel běží, použijete VNC klienta pro připojení k localhost:5901. Požádá vás o zadání hesla, které jste si nastavili dříve.
Po připojení uvidíte obrazovku podobnou této.

SSH tunel můžete zastavit stisknutím Ctrl + C.
Spuštění VNC jako systémové služby
Nyní můžete nastavit VNC jako systémovou službu pro spouštění, restartování nebo kontrolu jejího stavu pomocí příkazů systemd. Zajistí také, že se VNC server spustí při restartu serveru.
Chcete-li tak učinit, vytvořte nový unit soubor – /etc/systemd/system/vncserver@.service.
|
1 |
touch /etc/systemd/system/vncserver@.service |
Všimněte si, že ve výše uvedeném názvu souboru je symbol ‘@’. Umožňuje předat argument, který můžete použít v konfiguraci serveru.
Do souboru přidejte následující obsah:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
[Unit] Description=Spustit TightVNC server při spuštění After=syslog.target network.target [Service] Type=forking User=<User> Group=<UserGroup> WorkingDirectory=/home/<User> PIDFile=/home/<User>/.vnc/%H:%i.pid ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1 ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x800 :%i ExecStop=/usr/bin/vncserver -kill :%i [Install] WantedBy=multi-user.target |
Příkaz ‘ExecStartPre’ zastaví VNC, pokud již běží, zatímco příkaz ExecStart spustí VNC s barevnou hloubkou 24 bitů a rozlišením 1280×800. Tento soubor si můžete upravit podle svých potřeb.
Nyní můžete znovu načíst jednotky pro systemd pomocí následujícího příkazu:
|
1 |
sudo systemctl daemon-reload |
Nyní, když systemctl ví o nové jednotce, můžete ji povolit pomocí příkazu:
|
1 |
sudo systemctl enable vncserver@1.service |
Číslo 1 za @ označuje, na kterém čísle displeje se má služba zobrazit. Příklad :1, :2 atd.
Chcete-li zastavit aktuální instanci, spusťte příkaz:
|
1 |
vncserver -kill :1 |

Nyní můžete spustit VNC server stejně, jako byste spustili jakoukoli jinou službu.
|
1 |
sudo systemctl start vncserver@1 |
Chcete-li zkontrolovat, zda je služba spuštěna, spusťte příkaz:
|
1 |
sudo systemctl status vncserver@1 |
VNC server bude nyní k dispozici po restartu vašeho serveru.
Nyní, když víte, jak nastavit VNC server, můžete svůj server snadno spravovat, stejně jako spravujete svůj počítač.
Komentáře
Zatím žádné komentáře. Buďte první.