Virtual Network Computing (VNC) je sustav za dijeljenje zaslona koji se koristi za daljinski pristup grafičkim korisničkim sučeljima. Koristi protokol udaljenog međuspremnika okvira koji omogućuje jednom poslužitelju (korisnička strana) povezivanje s drugom stranom (klijent). VNC je siguran, pouzdan i radi na svim operativnim sustavima.
RealVNC, UltraVNC, Xfce, TightVNC, da spomenemo samo neke, najpopularniji su VNC klijenti koji se danas koriste. Među popisom dostupnih alternativa, slobodni ste odabrati bilo koji VNC prema vlastitoj želji. U ovom vodiču, provest ćemo vas kroz korake instaliranja i konfiguriranja VNC-a na Ubuntu 20.04. Instalirat ćemo Xfce zbog njegove brzine, lakoće i izvrsnih performansi.
Započet ćemo s postavljanjem VNC poslužitelja na Ubuntu poslužitelju i uspostavljanjem sigurne veze putem SSH tunela. Na kraju ćemo koristiti program VNC klijenta na našem lokalnom računalu za interakciju s poslužiteljem putem grafičkog stolnog okruženja.
Preduvjeti
Kako biste pratili ovaj vodič, trebat će vam:
-
Jedan Ubuntu 20.04 poslužitelj s ne-root korisnikom i jednostavnim vatrozidom (UFW).
-
Lokalno računalo s instaliranim VNC klijentom. Također, VNC klijent koji ćemo koristiti povezuje se putem SSH tunela.
Korak 1— Instalirajte stolno okruženje i VNC poslužitelj
Za razliku od prethodnih verzija Ubuntua, Ubuntu 20.04 ne dolazi s unaprijed instaliranim VNC-om. Kao prvi korak, instalirat ćemo potrebne pakete iz službenog Ubuntu repozitorija. Prije nego što nastavimo, ažurirajmo postojeće pakete:
|
1 |
sudo apt update |
Sada ćemo instalirati Xfce i xfce4-goodies paket pomoću naredbe:
|
1 |
sudo apt install xfce4 xfce4-goodies |
Dok se vaš paket instalira, vidjet ćete zaslon koji od vas traži da odaberete zadani upravitelj zaslona za Xfce. Ignorirajte poruku ili je postavite kao zadanu, a zatim pritisnite ENTER.
Upravitelj zaslona je program koji korisnicima omogućuje prijavu u radno okruženje putem grafičkog sučelja. U ovom vodiču koristit ćemo Xfce pri povezivanju s VNC klijentom gdje smo prijavljeni kao ne-root Ubuntu korisnik. Stoga izbor upravitelja zaslona neće imati nikakav utjecaj na našu instalaciju.
Nakon instalacije Xfce-a, instalirat ćemo TightVNC poslužitelj:
|
1 |
sudo apt instalirajte tightvncserver |
U sljedećem koraku upotrijebite vncserver naredbu za postavljanje lozinke za VNC pristup i stvaranje početnih konfiguracijskih datoteka. Upišite sljedeće kako biste pokrenuli instancu VNC poslužitelja:
|
1 |
vncserver |
Nakon toga postavite lozinku duljine između 6 i 8 znakova i pritisnite ENTER. Vidjet ćete poruku s upitom:
|
1 2 3 4 5 |
Izlaz Trebat će vam jedna lozinka za pristup vašim radnim površinama. Lozinka: Potvrdi: |
U budućnosti, ako želite promijeniti lozinku ili dodati lozinku samo za pregled, upotrijebite naredbu:
|
1 |
vncpasswd |
Do sada ćete imati stvorene sve zadane konfiguracije za poslužitelj, i port zaslona 5901 pokrenut kao :1. VNC može pokrenuti više instanci na drugim portovima zaslona kao što su :2, :3, i :4 odnosi se na port 5902, 5903, i 5904 odnosno:
|
1 2 3 4 5 6 7 8 9 |
Izlaz Biste li htjeli unijeti enter a samo za- pregled lozinku (y/n)? n xauth: datoteka /home/cloudsigma/.Xauthority does ne postoji Novi 'X' desktop je your_hostname:1 Stvaranje zadane pokretačke skripte /home/cloudsigma/.vnc/xstartup Pokretanje aplikacije navedene u /home/cloudsigma/.vnc/xstartup Log datoteka je /home/cloudsigma/.vnc/your_hostname:1.log |
Vaš VNC poslužitelj je sada instaliran i uspješno radi. U sljedećem koraku konfigurirajmo poslužitelj za pokretanje Xfce-a kako biste dobili pristup putem grafičkog sučelja.
Korak 2— Konfigurirajte VNC poslužitelj
U početnom direktoriju pronaći ćete .vnc mapu koja sadrži sve konfiguracijske datoteke pod nazivom startup. U početku ćete pronaći pokrenutu startup datoteku koja je automatski stvorena kada smo pokrenuli naredbu vncserver u Koraku-1. Startup skripta je stvorena kada ste pokrenuli vncserver naredbu u prethodnom koraku. Međutim, sada ćete stvoriti vlastitu za pokretanje Xfce radne površine. Također ćemo morati stvoriti vlastiti poslužitelj za pokretanje Xfce radne površine jer će se VNC konfiguracija promijeniti.
Prije nego što nastavite dalje, moramo zaustaviti instancu VNC poslužitelja koja se izvodi na portu 5901:
|
1 |
vncserver -kill :1 |
Vidjet ćete izlaz:
|
1 2 |
Izlaz Prekidanje Xtightvnc procesa ID 17648 nano ~/.vnc/xstartup |
Umjesto 17648, možda ćete dobiti drugačiji broj i to je u redu. Zatim ćemo izmijeniti xstartup datoteku. Prije nego što napravite bilo kakve izmjene na datoteci, napravimo sigurnosnu kopiju izvorne datoteke:
|
1 |
mv ~/.vnc/xstartup ~/.vnc/xstartup.bak |
Zatim izradite novu xstartup datoteku i otvorite je u bilo kojem uređivaču teksta. U ovom vodiču koristimo nano:
|
1 |
nano ~/.vnc/xstartup |
Kada završite, dodajte sljedeće retke u datoteku:
|
1 2 3 |
#!/bin/bash xrdb $HOME/.Xresources startxfce4 & |
Kad god pokrećete ili ponovno pokrećete VNC poslužitelj, ove se naredbe automatski izvršavaju. Prvi redak je Shebang koji obavještava sustav o informacijama o interpretatoru za prosljeđivanje ~/.vnc/xstartup datoteke za izvršavanje. Sljedeći redak xrdb $HOME/. Xresources, obavještava VNC-ov GUI okvir da pročita Xresources datoteku korisnika poslužitelja. Naposljetku, zadnji redak traži od poslužitelja da pokrene Xfce. Nakon dodavanja ovih redaka, spremite i zatvorite datoteku.
Moramo učiniti datoteku izvršnom kako bi VNC poslužitelj mogao koristiti novu datoteku za pokretanje:
|
1 |
chmod +x ~/.vnc/xstartup |
Zatim ponovno pokrenite VNC poslužitelj:
|
1 |
vncserver -localhost |
Sada ćete imati -localhost opcija dodana ovdje. Localhost povezuje VNC poslužitelj s loopback sučeljem vašeg poslužitelja, dopuštajući veze samo s instaliranih poslužitelja. Zatim ćemo uspostaviti SSH tunel između našeg lokalnog računala i poslužitelja. Cilj je dodati dodatni sloj sigurnosti oko VNC-a. Zašto? Zato što će korisnici koji će imati pristup biti oni koji već imaju SSH pristup poslužitelju.
Vidjet ćete sljedeći izlaz:
|
1 2 3 4 |
Nova 'X' radna površina je your_hostname:1 Pokretanje aplikacija navedenih u /home/sammy/.vnc/xstartup Log datoteka je /home/cloudsigma/.vnc/your_hostname:1.log |
Nakon što je konfiguracija postavljena, spremni smo za povezivanje s VNC poslužiteljem s našeg lokalnog računala.
Korak 3 — Sigurno povezivanje s VNC radnom površinom
Prilikom povezivanja s poslužiteljem, VNC ne koristi sigurne protokole. Stoga moramo uspostaviti SSH tunel i zatražiti od VNC klijenta da uspostavi vezu pomoću tunela umjesto da mu dopustimo da samostalno uspostavi izravnu vezu.
Stvorit ćemo SSH vezu na našem lokalnom računalu pomoću ssh naredba koja prosljeđuje na localhost vezu. Koristite naredbu u terminalu za stvaranje SSH veze:
|
1 |
ssh -L 59000:localhost:5901 -C -N -l cloudsigma your_server_ip |
Dešifrirajmo gornji kod:
-
-L 59000:localhost:5901: -L opcija specificira da će zadani port na lokalnom računalu ( 59000) ići na zadani host i port na odredišnom poslužitelju ( localhost:5901). To znači da će port 5901 na odredišnom poslužitelju biti definiran kao your_server_ip). Lokalni port koji odredite je proizvoljan. Sve dok port već nije zauzet drugom uslugom, slobodni ste ga koristiti kao port za prosljeđivanje za svoj tunel.
-
-C: Omogućuje kompresiju što dodatno pomaže u smanjenju potrošnje resursa i ubrzavanju performansi.
-
-N: Korisno za prosljeđivanje portova. Ovo obavještava ssh da ne izvršava nikakve udaljene naredbe.
-
-l cloudsigma your_server_ip: Prekidač -l omogućuje vam da odredite korisnika pod kojim se želite prijaviti nakon što se povežete s poslužiteljem.
Gornja naredba je sigurniji način uspostavljanja sigurne veze od samog otvaranja vatrozida vašeg poslužitelja radi dopuštanja veza na port 5901 s bilo kojeg mjesta. Nakon što uspostavite vezu, SSH tunel prosljeđuje sadržaj s porta 5901 na vašem VNC-u na port 59000 na vašem lokalnom računalu putem zadanog SSH porta; port 22.
Također možete koristiti PuTTY za povezivanje s vašim poslužiteljem. Otvorite PuTTY, idite na lijevu stranu PuTTY terminala i pronađite Connection granu za povezivanje. Zatim proširite SSH granu i kliknite na Tunnels. Na Options controlling SSH port forwarding zaslonu, unesite 59000 kao Izvorišni port i localhost:5901 kao Odredište:

Ostavite sve opcije nepromijenjenima, kliknite na Dodaj, a zatim Primijeni kako biste implementirali tunel. Nakon što se tunel pokrene, upotrijebite VNC klijent za povezivanje na localhost: 59000. Prema zadanim postavkama, od vas će se tražiti provjera autentičnosti lozinkom koju smo izradili u Koraku-1. Nakon što se povežete, vidjet ćete zadanu Xfce radnu površinu:

Možete pristupati datotekama i upravljati njima u početnom direktoriju. Također, konfigurirajte svoj VNC poslužitelj da radi kao systemd usluga.
Korak 4 — Pokrenite VNC kao systemd uslugu
Postavljanje VNC poslužitelja da radi kao systemd usluga omogućuje upravljanje poslužiteljem. Možete ga pokrenuti, zaustaviti, ponovno pokrenuti ili prekinuti, prema vlastitim željama i potrebama. Svaki put kada se poslužitelj pokrene, možete koristiti systemd naredbe za upravljanje kako biste provjerili je li poslužitelj UKLJUČEN ili ISKLJUČEN.
Najprije ćemo stvoriti novu jediničnu datoteku kako bismo odredili VNC priključak zaslona koji želimo koristiti pri upravljanju uslugama. Definirajte jediničnu datoteku:
|
1 |
sudo nano /etc/systemd/system/vncserver@.service |
Pronaći ćete @ simbol na kraju naziva datoteke, koji vam omogućuje prosljeđivanje argumenta za korištenje konfiguracije usluge.
Zatim dodajte skup redaka u unit datoteku. Preimenujte User, Group, WorkingDirectory, i korisničko ime u vrijednosti PIDFILE:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
[Jedinica] Opis=Pokreni TightVNC poslužitelj pri pokretanju Nakon=syslog.cilj mreža.cilj [Usluga] Vrsta=forking Korisnik=cloudsigma Grupa=cloudsigma Radni direktorij=/home/cloudsigma PIDFile=/home/cloudsigma/.vnc/%H:%i.pid ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1 ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x800 -localhost :%i ExecStop=/usr/bin/vncserver -kill :%i [Install] WantedBy=multi-user.target |
Ako je VNC već pokrenut, ExecStartPre naredba će ga zaustaviti. ExecStart naredba pokreće VNC i postavlja dubinu boje na 24-bitnu boju s razlučivošću od 1280×800. Možete urediti ove opcije pokretanja prema svojim potrebama. Također, imajte na umu da ExecStart naredba ponovno uključuje -localhost opciju. Kada završite, spremite i zatvorite datoteku jedinice.
Zatim uvedite novu datoteku jedinice u svoj sustav:
|
1 |
sudo sudo systemctl daemon-reload |
Uključite UKLJUČENO datoteku jedinice:
|
1 |
sudo systemctl enable vncserver@1.service |
Broj 1 koji slijedi nakon @ znaka označava na kojem broju zaslona bi se usluga trebala pojaviti. U našem slučaju, to je zadani :1 kao što je raspravljeno u Koraku-2. Ako VNC i dalje radi, možete zaustaviti trenutnu instancu VNC poslužitelja pomoću kill naredbe:
|
1 |
vncserver -kill :1 |
Zatim ga pokrenite kao što biste pokrenuli bilo koju drugu systemd uslugu:
|
1 |
sudo systemctl start vncserver@1 |
Možete provjeriti je li se pokrenuo ovom naredbom:
|
1 |
sudo systemctl status vncserver@1 |
Vidjet ćete izlaz:
|
1 2 3 4 5 6 7 8 |
Izlaz vncserver@1.servis - Pokreni TightVNC poslužitelj pri pokretanju Učitano: učitano (/etc/systemd/system/vncserver@.servis; omogućeno; isporučitelj zadano: omogućeno) Aktivno: aktivno (pokrenuto) od čet 2020-05-07 17:23:50 UTC; 6s prije Proces: 39768 ExecStartPre=/usr/bin/vncserver -kill :1 > /dev/null 2>&1 (code=exited, status=2) Proces: 39772 ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x800 :1 (code=exited, status=0/SUCCESS) Glavni PID: 39795 (Xtightvnc) ... |
Vaš VNC poslužitelj sada je spreman za upotrebu kad god se vaš poslužitelj pokrene, a njime možete upravljati pomoću systemctl naredbe kao i bilo koju drugu systemd uslugu. Međutim, nećete vidjeti nikakvu razliku na strani klijenta. Za ponovno povezivanje, pokrenite svoj SSH tunel pomoću:
|
1 |
ssh -L 59000:localhost:5901 -C -N -l cloudsigma your_server_ip |
Možete ponovno uspostaviti veze koristeći svoj VNC klijent na localhost:59000 sa svojim poslužiteljem.
Zaključak
U početku se postavljanje VNC poslužitelja može činiti izazovnim, posebno kada se pokušavate povezati s novim računalom. Nakon što uspostavite pouzdanu vezu, rad s udaljenim računalom bit će zabavan i uzbudljiv. Uz osigurani VNC poslužitelj koji je pokrenut na vašem Ubuntu 20.04 poslužitelju, možete jednostavno upravljati svojim resursima, datotekama, softverom i postavkama pomoću grafičkog sučelja prilagođenog korisniku. Korištenje prekomjerne propusnosti možda je jedna od loših strana korištenja VNC-a. To možete prevladati korištenjem zaslona niske razlučivosti i sivih tonova za brži prijenos.
Ugodan rad na računalu!
Komentari
Još nema komentara. Budite prvi.