relácia vnc. Pozrite sa, čo je „VNC“ v iných slovníkoch. Inštalácia Desktop Environment a VNC Server

  • 23.04.2019

Virtuálna sieť Výpočtový (VNC) systém pre vzdialený prístup k pracovnej ploche počítača pomocou protokolu RFB (Remote FrameBuffer). Ovládanie sa vykonáva prenosom stlačenia klávesov na klávesnici a pohybov myši z jedného počítača do druhého a prenosom obsahu obrazovky cez počítačovú sieť.

Systém VNC je nezávislý na platforme: klient VNC s názvom VNC viewer spustený na jednom operačnom systéme sa môže pripojiť k serveru VNC spustenému na akomkoľvek inom OS. Takmer na všetko existujú klientske a serverové implementácie operačné systémy vrátane J2ME). Na jeden VNC server sa môže súčasne pripojiť viacero klientov. Väčšina populárnymi spôsobmi použite VNC - diaľkové ovládanie technická podpora a prístup k pracovnému počítaču z domu.

VNC vyvinula spoločnosť AT&T. Pôvodné zdrojové kódy sú dostupné za podmienok GNU General Public License, rovnako ako mnohé varianty VNC, ktoré v súčasnosti existujú.

História

VNC vytvorila spoločnosť Olivetti & Oracle Research Lab, ktorú v tom čase vlastnila spoločnosť Oracle Corporation. V roku 1999 laboratórium získala spoločnosť AT&T, ktorá v roku 2002 zatvorila vývojové oddelenie.

Názov vznikol z počítačová sieť tenký klient Videotile, čo bol LCD panel s perovým vstupom a rýchly

Vývojári, ktorí pracovali na VNC v AT&T Research Lab:

  • Tristan Richardson
  • Quentin Stafford Fraser
  • James Weatherall
  • Ken Wood
  • Andy Harter
  • Charlie McLachlan
  • Paul Webster

Zariadenie

VNC má dve časti: klient a server. Server - program, ktorý poskytuje prístup k obrazovke počítača, na ktorom je spustený. Klient (alebo prehliadač) je program, ktorý prijíma obraz obrazovky zo servera a interaguje s ním.

VNC je veľmi jednoduchý protokol založený na grafických primitívoch: „Umiestnite obdĺžnik pixelové údaje do polohy určenej súradnicami. Server posiela klientovi malé obdĺžniky. Takáto schéma vo svojej primitívnej forme spotrebuje väčšinu šírky pásma kanála. Na zníženie zaťaženia kanála sa používajú rôzne metódy. Existujú rôzne kódovania- metódy na určenie najefektívnejšieho spôsobu prenosu týchto obdĺžnikov. Protokol VNC umožňuje klientovi a serveru „vyjednávať“, ktoré kódovanie sa použije. Najjednoduchšou metódou kódovania, ktorú podporujú všetci klienti a servery, je „surové kódovanie“, pri ktorom sa pixely prenášajú v poradí zľava doprava, zhora nadol a po prenesení pôvodného stavu obrazovky sa prenesú iba zmenené pixely. sa prenášajú. Táto metóda funguje veľmi dobre pri menších zmenách obrazu na obrazovke (pohyb ukazovateľa myši na ploche, písanie pod kurzorom), ale zaťaženie kanála je veľmi vysoké, keď sa súčasne zmení veľký počet pixelov, napríklad pri sledovaní videa v režime celej obrazovky.

Štandardne používa VNC rozsah portov TCP 5900 až 5906. Každý port predstavuje zodpovedajúcu obrazovku X servera (porty 5900 až 5906 sú spojené s obrazovkami 0 až 6). Klienti Java, dostupní v mnohých implementáciách, ktoré na tento účel používajú vstavaný webový server, ako napríklad RealVNC, sa pripájajú k obrazovkám rovnakým spôsobom, ale na portoch v rozsahu od 5800 do 5806. Mnoho počítačov so systémom Windows môže používať iba jeden port. nedostatok vlastností pre viacerých používateľov, ktoré sú vlastné

Existuje aj možnosť spätného spojenia zo servera na klienta. V tomto prípade sa klient prepne do režimu počúvania (Listening) a spojenie je iniciované serverom na porte 5500 TCP klienta.

Porty je možné zmeniť.

Bezpečnosť

VNC spočiatku nepoužíva šifrovanie prenosu, ale v procese autentifikácie sa heslo neprenáša ako čistý text, ale používa sa algoritmus „challenge-response“, ktorý sa používa pri pripájaní cez internet aj v miestnych sieťach. Klienti SSH vám umožňujú vytvárať tunely SSH zo všetkých hlavných platforiem (Windows,

Tiež veľa moderné verzie VNC podporuje štandardné rozšírenia protokolu, ktoré implementujú šifrovanie a/alebo kompresiu prevádzky VNC, diferenciáciu prístupových zoznamov (angličtina) - oficiálna verzia podporovaný tímom AT&T Laboratories

  • TightVNC - alternatívna verzia založené na RealVNC
  • UltraVNC (anglicky) - implementácia VNC pod Microsoft Windows
  • Vinagre (anglicky) - VNC klient pre desktopový OS GNOME Čo softvér Je VNC lepší?
  • Nadácia Wikimedia. 2010.

    Pozrite sa, čo je „VNC“ v iných slovníkoch:

      VNC- syn las siglas v angličtine Virtual Network Computing (Computación Virtual en Red). VNC je bezplatný softvérový program a štruktúra klientskeho servisu, ktorý má povolenie na ovládanie systému, je vzdialený od ... Wikipedia Español

      VNC- syn las siglas v angličtine Virtual Network Computing (Computación en Red Virtual). VNC je bezplatný softvérový program a štruktúra klientskeho servisu, ktorý má povolenie na ovládanie systému, je vzdialený od ... Enciclopedia Universal

      REDIRECT Virtual Network Computing ... Wikipedia

      VNC

      vnc- typische VNC Sitzung v fenster Virtual Network Computing (VNC) je softvér, ktorý obsahuje informácie o nástrojoch (Serveroch) na jednom mieste Rechner (Client) a jeho webová stránka, Tastatur and Mausbewegungen des…Deutsch

      VNC- Cette page d'homonymie répertorie les différents sujets et articles partageant un même nom. VNC, jeden zložený z troch písmen V, N a C, má spravodlivú referenciu à: Virtual Network Computing, logika vzdialenej grafiky;… … Wikipédia en Français

    25. novembra 2009 o 13:21 hod

    Pripojenie k vzdialenému počítaču cez VNC

    • Nastavenie Linuxu

    Práca s klientom VNC Materiál je určený pre neskúseného používateľa.

    1. Nainštalujte klienta VNC
    2. Pripojenie klienta VNC k vzdialenému počítaču
    3. Odpojenie klienta VNC od vzdialeného počítača
    4. Ladenie klienta VNC
    5. Časté problémy

    Pre prácu so vzdialeným počítačom cez VNC musí byť na počítači používateľa spustený klientsky program (VNC prehliadač, VNC klient). Tento program odosiela stlačenia klávesov a pohybov myši vykonaných používateľom do vzdialeného počítača a zobrazuje informácie, ktoré sa majú zobraziť na obrazovke.

    1. Nainštalujte klienta VNC
    Pre Windows si môžete zadarmo stiahnuť a nainštalovať klienta VNC UltraVNC a TightVNC.

    Mac OS X od verzie 10.5 má v RemoteDesktop podporu klienta VNC. Pre predchádzajúce verzie môžete použiť JollysFastVNC a .

    Pre linuxovú pobočku Debianu (Ubuntu) sa klient VNC inštaluje z úložiska príkazom:

    apt-get install vncviewer

    Pre pobočku RedHat (CentOS, Fedora) - príkazom:

    Yum install vnc

    Pre FreeBSD sa klient VNC (TightVNC) inštaluje z balíkov príkazom:

    Pkg_add -r tightvnc

    2. Pripojenie klienta VNC k vzdialenému počítaču
    Ak chcete pripojiť klienta VNC k vzdialenému počítaču, musíte zadať jeho IP adresu alebo názov DNS a zobraziť číslo (v predvolenom nastavení: 0) alebo číslo portu TCP (v predvolenom nastavení 5900). Ak server VNC vyžaduje autorizáciu, pri pripájaní k nemu klient VNC požiada o heslo. Upozorňujeme, že heslo na prístup k serveru VNC nie je spojené so žiadnym účtom ( účtu používateľovi). vzdialený počítač, ale slúži len na obmedzenie prístupu k displeju VNC servera.

    Po nadviazaní spojenia a otvorení obrazovky možno budete musieť v závislosti od nastavení servera VNC autorizovať používateľa na virtuálny server alebo sa môže otvoriť už spustená pracovná relácia niektorého používateľa.

    Keďže na počítači môže súčasne bežať niekoľko serverov VNC, parameter sa používa na ich oddelenie. číslo displeja. Napríklad jeden server VNC môže bežať na displeji:0 a ďalší na displeji:1. Každé zobrazované číslo zodpovedá číslu portu TCP, na ktorom server VNC prijíma pripojenia. Číslo portu pre displej sa získa pridaním čísla displeja do základné číslo port - 5900. Displej:0 zodpovedá portu TCP 5900, displej:1 - port 5901.

    3. Odpojenie klienta VNC od vzdialeného počítača
    Keď sa okno klienta VNC zatvorí alebo po opustení prostredia pomocou pracovnej plochy, v závislosti od nastavení servera VNC sa pracovná relácia používateľa môže zatvoriť a zastaviť všetky používané programy alebo pokračovať v práci a byť znova k dispozícii, keď opätovné pripojenie na server VNC.
    4. Ladenie klienta VNC
    Na obrazovku sa prenáša veľké množstvo informácií zvýšené požiadavky na rýchlosť kanála - na jeho šírku pásma a čas prenosu paketov. Šírka pásma vedie k nepríjemným oneskoreniam, keď dôjde k veľkým zmenám v informáciách zobrazených na obrazovke - otváranie nových okien, posúvanie atď. Predovšetkým veľké meškania sa vyskytne pri zobrazovaní fotografií a iných obrázkov alebo prvkov rozhrania, ktoré majú veľké množstvo farby a zložité tvary.

    Hlavným parametrom, ktorý ovplyvňuje množstvo prenášaných dát, je kódovací algoritmus pre prenášanú grafiku. Na zníženie objemu a tým aj urýchlenie práce sa odporúča použiť algoritmy Tight, ZLib, ZRLE - v porovnaní s nekomprimovanými údajmi (Raw) poskytujú desaťnásobnú kompresiu, čo výrazne zaťažuje procesor. Tieto kódovacie algoritmy poskytujú pohodlnú prevádzku aj na kanáloch s rýchlosťou 256-512 Kbps.

    Ak chcete znížiť množstvo informácií prenášaných cez sieť, môžete tiež nastaviť vysokú úroveň kompresie (úroveň kompresie, hodnotu kompresie), nízku úroveň kvalita JPEG(JPEG Quality) a aktivujte režim redukcie farieb (-bgr233, Obmedzené farby). Najväčší efekt z nich s citeľným poklesom kvality obrazu je daný režimom zníženia počtu farieb – volume prenášané informácie sa zníži o 1,5-3 krát, zobrazenie na obrazovke sa zrýchli 1,5-3 krát.

    JPEG používa algoritmus Tight coding na kompresiu oblastí obrazovky obsahujúcich fotografie a iné zložité obrázky s veľkým počtom farieb. Použitie Tight+JPEG znižuje množstvo prenášaných dát 2-5 krát. Iné algoritmy jpeg kódovanie nepodporujú.

    1. Rozbaľovacia ponuka „Systém -> Možnosti“

    Množstvo prenášaných dát a rýchlosť zobrazenia na kanáli je 1 Mbps, keď otvoríte rozbaľovaciu ponuku „Systém -> Parametre“ (na obrázku je ponuka zvýraznená zelenou bodkovanou čiarou):

    5. Časté problémy
    Nedá sa pripojiť k serveru VNC
    Je potrebné skontrolovať:
    1. či existuje prístup na internet;
    2. či virtuálny server odpovedá na ping;
    3. či je na virtuálnom serveri spustený VNC server;
    4. je na ceste firewall, ktorý blokuje prístup k portu TCP servera VNC;
    5. či je správne číslo displeja alebo TCP port servera VNC (číslo portu = 5900 + číslo displeja).
    Pomalá prevádzka cez pomerne rýchly kanál
    Ak sa klient VNC nemôže dohodnúť so serverom VNC na použití algoritmu kódovania grafiky s kompresiou údajov, vyberie sa predvolený algoritmus – Raw, ktorý prenáša údaje bez kompresie. Tiež kódovanie bez kompresie alebo s nízky level Kompresia môže byť automaticky vybraná klientom VNC pri práci cez rýchly lokálna sieť. Tento problém možno opraviť násilným zadaním kódovacieho algoritmu v nastaveniach klienta VNC vysoký stupeň kompresia - ZLib, ZRLE, Tight.

    Pre niektoré kombinácie klienta a servera však toto riešenie nemusí byť užitočné kvôli chybám pri vyjednávaní kódovacieho algoritmu. Napríklad klient TightVNC so serverom RealVNC môže často pracovať iba s kódovaním Raw. Riešením v tomto prípade je zmena VNC klienta alebo VNC servera.

    VNC (Virtual Network Computing) je systém vzdialeného prístupu, ktorý vám umožňuje používať klávesnicu a myš na interakciu s grafickým rozhraním pracovnej plochy. vzdialený server. S jeho pomocou môžete spravovať súbory, softvér a nastavenia vzdialeného servera bez prístupu k príkazovému riadku.

    Táto príručka vám pomôže nainštalovať VNC na virtuálny súkromný server Ubuntu 16.04 a nakonfigurovať ho zabezpečené pripojenie pomocou SSH tunela. Server VNC bude používať TightVNC, rýchly a ľahký balík diaľkového ovládania, ktorý udržuje veci v chode aj na pomalom internete.

    Požiadavky

    • Server Ubuntu 18.04 nakonfigurovaný pomocou .
    • Lokálny počítač s predinštalovaným klientom VNC, ktorý podporuje pripojenia VNC cez tunel SSH. Používatelia systému Windows môžete nainštalovať TightVNC, RealVNC alebo UltraVNC. Používatelia počítačov Mac OS X môže využívať vstavaný balík Screen Sharing alebo používať multiplatformové aplikácie (napríklad RealVNC). Používatelia systému Linux môžete si vybrať vinagre, krdc, RealVNC, TightVNC atď.

    Krok 1: Inštalácia Desktop Environment a VNC Server

    Servery Ubuntu 18.04 sa štandardne dodávajú bez predinštalovaného grafického desktopového prostredia a VNC servery. Preto musíte najskôr nainštalovať tieto komponenty. Táto príručka používa balíky Xfce a TightVNC dostupné v oficiálnom úložisku Ubuntu.

    Ak chcete nainštalovať zadané balíky na server, aktualizujte index a zadajte príkaz:

    aktualizácia sudo apt
    sudo apt install xfce4 xfce4-goodies

    Teraz nainštalujte TightVNC:

    sudo apt nainštalovať tightvncserver

    Dokončiť pôvodné nastavenie VNC server po jeho inštalácii a vyberte silné heslo, použite príkaz vncserver.

    Príkaz vás vyzve na výber a potvrdenie hesla:

    Na prístup k pracovnej ploche budete potrebovať heslo.
    heslo:
    Overiť:

    Heslo musí mať šesť až osem znakov. Viac dlhé heslá sa automaticky skráti na 8 znakov.

    Po potvrdení hesla budete mať možnosť vytvoriť si heslo len na zobrazenie. Používatelia, ktorí pristupujú k VNC pomocou hesla prehliadania, nebudú môcť ovládať VNC pomocou myši alebo klávesnice. Toto heslo vám v prípade potreby umožňuje ukázať VNC iným používateľom.

    Proces potom dokončí iniciálu Nastavenie VNC a vytvorte konfiguračné súbory.

    Chcete zadať heslo iba na zobrazenie (áno/nie)? n
    xauth: súbor /home/8host/.Xauthority neexistuje
    Nová plocha "X" je your_hostname:1
    Vytvára sa predvolený spúšťací skript /home/8host/.vnc/xstartup

    Krok 2: Nastavenie servera VNC

    Prvým krokom je definovanie príkazov, ktoré server VNC vykoná pri spustení. Tieto príkazy musia byť v súbore xstartup v adresári .vnc, ktorý je uložený v domovskom adresári súčasný užívateľ. Spúšťací skript bol vytvorený tímom vncserver, ale je potrebné ho upraviť na interakciu s Xfce.

    Pri prvom spustení VNC používa port 5901. VNC pomenúva tento port:1. VNC môže spúšťať ďalšie inštancie na iných portoch, ktoré budú pomenované :2, :3 atď.

    Ak chcete zmeniť nastavenia servera VNC, musíte zastaviť inštanciu, ktorá používa port 5901.

    vncserver -kill:1

    Príkaz vráti nasledujúcu správu (PID sa bude líšiť):

    Proces Killing Xtightvnc ID 17648

    Vytvorte zálohovanie xstartup súbor:

    mv ~/.vnc/xstartup ~/.vnc/xstartup.bak

    Potom vytvorte nový súbor xstartup:

    nano ~/.vnc/xstartup

    Vložte do nej nasledujúce príkazy, ktoré sa vykonajú automaticky pri spustení servera VNC. Uložte a zatvorte súbor.

    ~/.vnc/xstartup
    #!/bin/bash
    xrdb $HOME/.Xresources
    startxfce4&

    Prvým príkazom, xrdb $HOME/.Xresources, GUI servera VNC načíta súbor .Xresources. V súbore .Xresources môže používateľ vykonať zmeny niektorých nastavení grafickej plochy (prispôsobiť farby terminálu, motívy kurzorov, písma). Druhý príkaz jednoducho spustí Xfce, ktorý obsahuje všetok grafický softvér potrebný na správu servera.

    Teraz musíme urobiť súbor spustiteľným:

    sudo chmod +x ~/.vnc/xstartup

    Reštartujte VNC:

    Počas spúšťania server vráti:

    Nová plocha "X" je your_hostname:1
    Spúšťanie aplikácií špecifikovaných v /home/8host/.vnc/xstartup
    Súbor denníka je /home/8host/.vnc/názov_vášho_hostiteľa:1.log

    Krok 3: Bezpečne sa pripojte k VNC

    o VNC pripojenie nepoužíva zabezpečené protokoly. Vytvorte tunel SSH na bezpečné pripojenie k serveru a potom nakonfigurujte klienta VNC tak, aby podporoval tunel namiesto priameho pripojenia.

    Vytvorte na lokálny počítač pripojenie SSH, ktoré prejde na pripojenie localhost pre VNC. Môžete to urobiť v systéme Linux alebo macOS prostredníctvom terminálu pomocou nasledujúceho príkazu:

    Príznak -L určuje väzby portu. V tomto prípade naviažeme port 5901 vzdialeného pripojenia na port 5901 na lokálnom počítači. Príznak -C umožňuje kompresiu a -N hovorí ssh, čo má robiť diaľkový príkaz netreba. Voľba -l určuje vzdialené prihlasovacie meno.

    Nezabudnite nahradiť 8host a your_server_ip vašimi údajmi.

    Ak používate grafického klienta SSH, ako je PuTTY, použite nastavenia tunela your_server_ip SSH ako pripojenie IP a nastavte localhost:5901 ako nový port.

    Po spustení tunela použite klienta VNC na pripojenie k localhost:5901. To si vyžiada heslo, ktoré ste si zvolili v časti 1.

    Potom uvidíte štandardná obrazovka xfce.

    K súborom vo vašom domovskom adresári môžete pristupovať pomocou správcu súborov alebo z príkazového riadku.

    Na zatvorenie stlačte CTRL + C v termináli ssh tunel a vrátiť sa do príkazový riadok. Toto tiež ukončí vašu reláciu VNC.

    Krok 4: Vytvorte súbor služby VNC

    Teraz musíme nakonfigurovať server VNC ako systémovú službu.

    Vytvorte nový súbor jednotky /etc/systemd/system/ [e-mail chránený]:

    sudo nano /etc/systemd/system/ [e-mail chránený]

    Symbol @ na konci názvu súboru vám umožní zadať argument, ktorý možno použiť v konfigurácii služby. Môže sa použiť na určenie portu VNC, ktorý sa má použiť pri správe služby.

    Pridať do súboru nasledujúce riadky. Nezabudnite zmeniť hodnotu User, Group, WorkingDirectory a username v hodnote PIDFILE.

    /etc/systemd/system/ [e-mail chránený]
    Popis = Štart TightVNC server pri spustení
    After=syslog.target network.target
    Typ=rozdvojenie
    Používateľ=8hostiteľ
    skupina=8hostiteľ
    WorkingDirectory=/home/8host
    PIDFile=/home/8host/.vnc/%H:%i.pid
    ExecStartPre=-/usr/bin/vncserver -kill:%i > /dev/null 2>&1
    ExecStart=/usr/bin/vncserver -hĺbka 24 -geometria 1280 x 800:%i
    ExecStop=/usr/bin/vncserver -kill:%i
    WantedBy=multi-user.target

    Príkaz ExecStartPre zastaví VNC, ak je služba už spustená. Príkaz ExecStart spustí VNC a nastaví farebnú hĺbku na 24-bitové farby pri rozlíšení 1280 x 800. Tieto nastavenia môžete tiež zmeniť podľa svojich potrieb.

    Uložte a zatvorte súbor.

    Potom dajte systému vedieť o novom súbore jednotky.

    sudo systemctl daemon-reload

    Zapnúť:

    povoliť sudo systemctl [e-mail chránený]

    Číslo 1 za @ určuje, ktoré číslo displeja sa má zobraziť v službe, v tomto prípade je to predvolená hodnota.

    Zastavte aktuálnu inštanciu servera VNC, ak je stále spustená.

    vncserver -kill:1

    Teraz to skúste spustiť ako akúkoľvek inú službu systemd:

    spustenie sudo systemctl [e-mail chránený]

    Aby ste sa uistili, že server beží, skontrolujte jeho stav:

    stav sudo systemctl [e-mail chránený]

    [e-mail chránený]— Spustite server TightVNC pri štarte

    Načítané: načítané (/etc/systemd/system/ [e-mail chránený]; nepriame; prednastavené výrobcom: povolené)
    Aktívne: aktívne (v prevádzke) od Po 2018-07-09 18:13:53 UTC; pred 2 min 14 s
    Proces: 22322 ExecStart=/usr/bin/vncserver -hĺbka 24 -geometria 1280x800:1 (kód=ukončené, stav=0/ÚSPEŠNÉ)
    Proces: 22316 ExecStartPre=/usr/bin/vncserver -kill:1 > /dev/null 2>&1 (kód=ukončený, stav=0/ÚSPECH)
    Hlavné PID: 22330 (Xtightvnc)
    ...

    Teraz bola do spustenia pridaná služba VNC.

    Znova spustite tunel SSH:

    ssh -L 5901:127.0.0.1:5901 -C -N -l 8hosting your_server_ip

    Vytvorte nové pripojenie z klienta VNC k localhost:5901 a otestujte nastavenie.

    Záver

    Teraz server ubuntu 18.04 VNC server nainštalovaný. Pomocou neho môžete spravovať súbory, programy a nastavenia vzdialeného servera (napríklad vzdialene spustiť webový prehliadač).

    Tagy: , |

    VNC (Virtual Network Computing) je systém vzdialeného prístupu, ktorý vám umožňuje používať klávesnicu a myš na interakciu s GUI pracovnej plochy vzdialeného servera. S jeho pomocou môžete spravovať súbory, softvér a nastavenia vzdialeného servera bez prístupu k príkazovému riadku.

    Táto príručka vám pomôže nainštalovať VNC na virtuálny súkromný server Ubuntu 16.04 a nastaviť zabezpečené pripojenie pomocou tunela SSH. Server VNC bude používať TightVNC, rýchly a ľahký balík diaľkového ovládania, ktorý udržuje veci v chode aj na pomalom internete.

    Požiadavky

    • Nakonfigurovaný server Ubuntu 16.04 (tu nájdete).
    • Používateľ bez oprávnenia root s prístupom sudo.
    • Lokálny počítač s predinštalovaným klientom VNC, ktorý podporuje pripojenia VNC cez tunel SSH. Používatelia systému Windows si môžu nainštalovať TightVNC, RealVNC alebo UltraVNC. Používatelia systému Mac OS X môžu použiť vstavaný balík na zdieľanie obrazovky alebo použiť aplikácie pre rôzne platformy (napríklad RealVNC). Používatelia Linuxu si môžu vybrať z vinagre, krdc, RealVNC, TightVNC atď.

    Krok 1: Inštalácia Desktop Environment a VNC Server

    Servery Ubuntu 16.04 sa štandardne dodávajú bez predinštalovaného grafického desktopového prostredia a servera VNC. Preto musíte najskôr nainštalovať tieto komponenty. IN túto príručku používa balíčky Xfce a TightVNC dostupné v oficiálnom úložisku Ubuntu.

    Ak chcete nainštalovať určené balíky na server, zadajte:

    sudo apt install xfce4 xfce4-goodies tightvncserver

    Ak chcete dokončiť úvodnú konfiguráciu servera VNC po jeho inštalácii a zvoliť silné heslo, použite príkaz vncserver.

    Príkaz vás vyzve na výber a potvrdenie hesla, ako aj hesla na prezeranie (voliteľné). Používatelia, ktorí pristupujú k VNC pomocou hesla prehliadania, nebudú môcť ovládať VNC pomocou myši alebo klávesnice. Toto heslo vám v prípade potreby umožňuje ukázať VNC iným používateľom.

    Príkaz vncserver dokončí úvodné nastavenie VNC a vytvorí konfiguračné súbory.

    Krok 2: Nastavenie servera VNC

    Prvým krokom je definovanie príkazov, ktoré server VNC vykoná pri spustení. Tieto príkazy by sa mali nachádzať v súbore xstartup v adresári .vnc, ktorý je uložený v domovskom adresári aktuálneho používateľa. Spúšťací skript bol vytvorený tímom vncserver, ale je potrebné ho upraviť na interakciu s Xfce.

    Pri prvom spustení VNC používa port 5901. VNC pomenúva tento port:1. VNC môže spúšťať ďalšie inštancie na iných portoch, ktoré budú pomenované :2, :3 atď.

    Ak chcete zmeniť nastavenia servera VNC, musíte zastaviť inštanciu, ktorá používa port 5901.

    vncserver -kill:1

    Príkaz vráti nasledujúcu správu (PID sa bude líšiť):

    Proces Killing Xtightvnc ID 17648

    Zálohujte súbor xstartup:

    mv ~/.vnc/xstartup ~/.vnc/xstartup.bak

    Potom vytvorte nový súbor xstartup:

    nano ~/.vnc/xstartup

    Vložte do nej nasledujúce príkazy, ktoré sa vykonajú automaticky pri spustení servera VNC. Uložte a zatvorte súbor.

    ~/.vnc/xstartup
    #!/bin/bash
    xrdb $HOME/.Xresources
    startxfce4&

    Prvým príkazom, xrdb $HOME/.Xresources, GUI servera VNC načíta súbor .Xresources. V súbore .Xresources môže používateľ vykonať zmeny niektorých nastavení grafickej plochy (prispôsobiť farby terminálu, motívy kurzorov, písma). Druhý príkaz jednoducho spustí Xfce, ktorý obsahuje všetok grafický softvér potrebný na správu servera.

    Teraz musíte preniesť práva k súboru:

    sudo chmod +x ~/.vnc/xstartup

    Reštartujte VNC:

    Počas spúšťania server vráti:

    Nová plocha "X" je názov vášho_servera.com:1
    Spúšťanie aplikácií špecifikovaných v /home/8host/.vnc/xstartup
    Súbor denníka je /home/8host/.vnc/liniverse.com:1.log

    Krok 3: Testovanie pracovnej plochy VNC

    Teraz sa musíte uistiť, že server VNC je správne nakonfigurovaný.

    Vytvorte pripojenie SSH na lokálnom počítači, ktoré je presmerované na localhost servera VNC. Na to môžete použiť linuxový terminál alebo OSX.

    ssh -L 5901:127.0.0.1:5901 -N -f -l užívateľské meno server_ip_address

    Poznámka: Nahraďte používateľa a server_ip_address používateľským menom s prístupom sudo a vašou IP adresou.

    Ak používate grafického klienta SSH (napríklad PuTTY), použite adresu IP_servera ako adresu IP pripojenia a potom v nastaveniach tunela SSH zadajte localhost:5901.

    Teraz môžete použiť klienta VNC na pripojenie k serveru. Ak to chcete urobiť, musíte byť overení. Zadajte heslo nastavené v časti 1.

    Potom sa na obrazovke objaví štandardná plocha Xfce.

    K súborom vo vašom domovskom adresári môžete pristupovať pomocou Správca súborov alebo príkazový riadok.

    Krok 4: Vytvorte súbor služby VNC

    Teraz musíme nakonfigurovať server VNC ako systémovú službu.

    Vytvorte nový súbor /etc/systemd/system/ [e-mail chránený]:

    sudo nano /etc/systemd/system/ [e-mail chránený]

    Skopírujte a vložte do nej nasledujúci kód:

    /etc/systemd/system/ [e-mail chránený]
    Description=Spustiť TightVNC server pri štarte
    After=syslog.target network.target
    Typ=rozdvojenie
    Používateľ=8hostiteľ
    PAMName=prihlásenie
    PIDFile=/home/8host/.vnc/%H:%i.pid
    ExecStartPre=-/usr/bin/vncserver -kill:%i > /dev/null 2>&1
    ExecStart=/usr/bin/vncserver -hĺbka 24 -geometria 1280 x 800:%i
    ExecStop=/usr/bin/vncserver -kill:%i
    WantedBy=multi-user.target

    Poznámka: Namiesto 8host zadajte svoje používateľské meno.

    Uložte a zatvorte súbor.

    Reštartujte démona:

    sudo systemctl daemon-reload

    Zahrnúť nový súbor:

    povoliť sudo systemctl [e-mail chránený]

    Zastavte aktuálnu inštanciu servera VNC, ak je stále spustená:

    vncserver -kill:1

    Teraz to skúste spustiť ako akúkoľvek inú službu systemd:

    spustenie sudo systemctl [e-mail chránený]

    Aby ste sa uistili, že server beží, skontrolujte jeho stav:

    stav sudo systemctl [e-mail chránený]

    Ak je server spustený, príkaz vráti:

    [e-mail chránený]- TightVNC server na Ubuntu 16.04
    Načítané: načítané (/etc/systemd/system/ [e-mail chránený]; povolené; prednastavené výrobcom: povolené)
    Aktívne: aktívne (v prevádzke) od Po 2016-04-25 03:21:34 EDT; pred 6 s
    Proces: 2924 ExecStop=/usr/bin/vncserver -kill:%i (kód=ukončené, stav=0/ÚSPEŠNÉ)
    ...
    systemd: Spúšťa sa server TightVNC na Ubuntu 16.04...

    systemd: pam_unix(login:session): relácia otvorená pre používateľa finid (uid=0)
    systemd: Spustený server TightVNC na Ubuntu 16.04.

    Záver

    Na serveri Ubuntu 16.04 je teraz nainštalovaný zabezpečený server VNC. Môže sa použiť na správu súborov, programov a nastavení vzdialeného servera.

    Značky: ,

    Virtual Network Computing (VNC) je systém pre vzdialený prístup na plochu. Ak si predstavíte Vzdialená plocha alebo RAdmin, potom VNC rieši podobný problém, len servery VNC sú distribuované zadarmo a s otvoreným zdrojový kód. Je dôležité poznamenať, že VNC nie je protokol. Použitý protokol sa nazýva Remote FrameBuffer (RFB). Tento protokol je plne opísaný v tomto PDF.

    Prečo by niekto bral VNC:

    • Ak je presmerovanie používateľského rozhrania cez SSH príliš pomalé;
    • Server sa používa ako virtuálny stroj, len so zdieľaným prístupom;
    • Torrent downloader s bielou IP, stačí nastaviť Transmission a ísť;
    • Druh alternatívy k proxy a VPN;
    • A tak ďalej, na čo stačí fantázia;

    Začnime. Všetky kroky uvedené nižšie boli testované ubuntu linux 14.04 LTS, ale mal by fungovať aj bez veľkých zmien na ostatných verzie Ubuntu, ako aj iné systémy. Pre experiment potrebujeme nepotrebné auto, možno virtuálny stroj v nejakom DigitalOcean s aspoň 512 MB pamäte. Ak plánujete spúšťať ťažké programy s grafickým rozhraním, ako napr Google Chrome, potom okamžite prideľte 1 GB a ešte viac je lepšie. Ak pridelíte iba 512 MB, môžete si otvoriť iba jeden účet GMail, po ktorom sa minie pamäť, skontroloval som. Osobne som veľmi smutný, že prehliadače sú také nenásytné, ale toto je snáď téma na samostatný príspevok.

    Na počítači, na ktorom budeme zvyšovať VNC, spustíme nového používateľa pod root:

    adduser ubuntu
    usermod -G sudo ubuntu

    K nej priradíme náš ~/.ssh/id_rsa.pub:

    su ubuntu
    vim ~/.ssh/authorized_keys
    chmod 0600 ~/.ssh/authorized_keys

    Na našom počítači do ~/.ssh/config pridáme:

    Hostiteľský vnc-server
    názov hostiteľa 123.45.67.89
    používateľ ubuntu
    LocalForward 5901 localhost:5901

    VNC nešifruje prenos, takže naň prejdeme pomocou presmerovania portov cez SSH. Ak sa chystáte použiť aj techniku ​​preposielania zvuku opísanú v príspevku Zvládnuté spustenie GUI aplikácií v Dockeri, pridajte riadok:

    RemoteForward 3333 localhost:4713

    Ideme na vnc-server pod používateľom ubuntu, hovoríme:

    aktualizácia sudo apt-get
    sudo apt-get install xubuntu-desktop tightvncserver xfonts-base \
    xfonts-75dpi xfonts-100dpi

    Ako vidíte, TightVNC bol vybraný ako špecifická implementácia servera. Mal som s ním skúsenosť pred pár rokmi. Nepamätám si presne, čím presne sa TightVNC v tom čase odlišoval od iných serverov VNC. Pamätám si, že to bolo jednoduché na inštaláciu a konfiguráciu, kompatibilné so všetkými klientmi a jednoducho fungovalo.

    Upravujeme súbor ~/.vnc/xstartup, obsah by mal byť približne takýto:

    #!/bin/sh

    Xrdb ​​​​$HOME/.Xresources
    xsetroot – jednoliata šedá
    startxfce4&
    (spánok 3 && xfce4-panel) &

    Spustiť server:

    vncserver:1 -localhost -nolisten tcp

    Tu argument :1 je číslo zobrazenia. Súčasne môžete spustiť viacero desktopov. Príznak -localhost znamená akceptovať iba pripojenia z rovnakého počítača. Voľba -nolisten tcp je potrebná, aby port 6001 nevyčnieval. Pri prvom spustení servera budete musieť zadať heslo na prístup na pracovnú plochu. Všimnite si, že heslo je skrátené na osem znakov. Budete tiež požiadaní o samostatné heslo pre pripojenie iba na prezeranie:

    Chcete zadať heslo iba na zobrazenie (áno/nie)? n

    Heslo môžete zmeniť príkazom:

    Zastaviť server:

    vncserver -zabiť :1

    Na pripojenie k spustenému serveru potrebujete nejaký druh klienta VNC. Ubuntu sa štandardne dodáva s Remminou. Na počítačoch Mac mi bolo povedané, že klient VNC je vo Finderi → Pripojiť k serveru. Ako adresu servera zadáme localhost:5901, odtiaľ sa spojenie prenesie cez SSH na port 5901 servera VNC. IN všeobecný prípadčíslo portu sa vypočíta ako 5900 + zobrazované číslo.

    Doplnenie: A vo FreeBSD robím toto:

    sudo pkg install tightvnc
    vncviewer -bgr233 localhost:5901

    Ak bolo všetko urobené správne, uvidíte desktopové prostredie Xfce. Tiež to treba trochu doladiť. V ponuke Aplikácie → Nastavenia → Relácia a spustenie začiarknite na karte Rozšírené políčko Spustiť služby GNOME pri spustení. Na karte Automatické spustenie aplikácie zakážte rôzne nepotrebné služby Typ Bluetooth applet. V opačnom prípade môžu niektoré aplikácie, najmä Skype, zahodiť všetky X s veľmi zvláštnymi chybami v protokoloch. Osobne som nechal iba nasledujúce začiarkavacie políčka:

    Teraz predpíšeme VNC na autorun. V /etc/init.d/vncserver píšeme.