vnc protokol. Prijavljivanje u višekorisnički sistem preko VNC-a. Povezivanje VNC klijenta na udaljeni računar

Dom VNC je sistem daljinski upravljač desktop računara. Korisnik VNC klijent vidi sliku radne površine VNC serveri

i kontroliše ga pomoću miša i tastature baš kao i sopstveni računar.

VNC server se može pokrenuti na radnom računaru i po potrebi pristupiti od kuće. Ili obrnuto. Da biste se povezali, morate biti sigurni da je TCP port koji koristi server (podrazumevano 5900) dostupan za dolazne veze sa klijenta.

UltraVNC se preuzima. Druge dobro poznate VNC implementacije su RealVNC i TightVNC, može se pronaći više opcija. U teoriji, svi su kompatibilni jedni s drugima, iako neke posebne funkcije (međuspremnik ili prijenos datoteka) možda neće raditi između različitih implementacija.

Pomaganje pridošlicama

VNC je također zgodan za pomoć drugim korisnicima. Mnogo je lakše pomoći gledajući šta se dešava na ekranu. Međutim, mnogi ljudi imaju rutere i firewall, i nerealno je zahtijevati od početnika da može otvoriti potreban port za dolazne veze. Dolazi nam u pomoć obrnuto povezivanje

(obrnuta veza). U ovom načinu, vezu inicira VNC server.

Iskusni korisnik pokreće VNC klijent u režimu slušanja (vncviewer.exe /listen) i čini port 5500 pristupačnim izvana. Početnik može samo preuzeti i pokrenuti VNC server i povezati se sa klijentom na navedenoj IP adresi. Evo posebne stranice s uputama za početnike. Mislim za iskusnog korisnika detaljna uputstva

nije potrebno. Napomenuću samo da se pri povezivanju međuspremnik dijeli i da ako početnik ima rezoluciju ekrana veću od vaše, onda u klijentu možete skalirati sliku na prihvatljivu veličinu.

Dodatno

Ako imate dinamičku eksternu IP adresu, zgodno je napraviti sebi (besplatan) dinamički DNS, na primjer na dyndns.com. Na vašem računaru će se pokrenuti mali program (a neki ruteri imaju takvu ugrađenu funkcionalnost) koji obavještava DynDNS servis o promjenama u vašem IP-u. Kao rezultat toga, domena koju odaberete, na primjer pupkin.dyndns.org, uvijek će upućivati ​​na vašu trenutnu IP adresu

Ako ste stručnjak za tehničku podršku, možda će vam to biti posebno zgodno. Ovo je posebna lagana verzija VNC servera, koja može uspostaviti samo obrnute veze i to samo na IP adrese koje ste prethodno konfigurirali. Naravno, tada morate biti dovoljno autoritativni da korisnik pristane da preuzme i pokrene ovaj konfigurisani VNC server sa vašeg sajta.
(Joj, koga ja zezam... Mnogi korisnici će već pokrenuti sve što im se nudi)

Original: Uvod u VNC
Autor: Paul Cobbaut
Datum objave: 12.03.2015
Prijevod: A. Panin
Datum prevoda: 2. april 2015

Dodatak B. Kratke informacije o VNC protokolu

B.1. Informacije o VNC protokolu

Mogućnost pristupa radnoj površini putem VNC protokola može se omogućiti u GNOME ili KDE okruženjima radne površine na stranici Preferences udaljene radne površine. VNC protokol se može koristiti za pristup radnoj površini vašeg računara sa drugog računara, a takođe možete koristiti protokol za pristup radnoj površini drugog korisnika. Posljednji slučaj upotrebe protokola može biti koristan za demonstriranje korisnicima kako da izvrše određene zadatke. Glavna prednost VNC protokola je njegova nezavisnost od korištenog operativni sistemi, a postoji mnogo aplikacija koje podržavaju ovaj protokol (realvnc, tightvnc, xvnc, ...) i namijenjene su za korištenje na Solaris, Linux, BSD i drugim operativnim sistemima.

B.2. VNC server

Metodologija za početno pokretanje VNC servera.

# rpm -qa | grep -i vnc vnc-server-4.0-8.1 vnc-4.0-8.1 # vncserver:2 Biće vam potrebna lozinka za pristup vašim radnim površinama. Lozinka: Potvrdite: xauth: kreiranje novog autoritetnog fajla /root/.Xauthority Nova radna površina "RHELv4u3.localdomain:2 (root)" je RHELv4u3.localdomain:2 Kreiranje podrazumevane skripte za pokretanje /root/.vnc/xstartup Pokretanje aplikacija navedenih u /root /.vnc/xstartup Dnevnik je /root/.vnc/RHELv4u3.localdomain:2.log #

B.3. VNC klijent

Sada možete koristiti vncviewer klijent sa druge mašine za povezivanje sa vašim VNC serverom. Standardno će se koristiti jednostavan GUI...

Paul@laika:~$ vncviewer 192.168.1.49:2 VNC preglednik verzija 3.3.7 - napravljen 20. novembar 2006. 13:05:04 Autorska prava (C) 2002-2003 RealVNC Ltd. Autorska prava (C) 1994-2000 AT&T Laboratories Cambridge. Pogledajte http://www.realvnc.com za informacije o VNC-u. VNC server podržava protokol verziju 3.8 (viewer 3.3) Lozinka: VNC autentifikacija je uspjela Ime radne površine "RHELv4u3.localdomain:2 (root)" Povezano na VNC server, koristeći verziju protokola 3.3 ...

Ako ne želite da koristite jednostavan twm upravitelj prozora, možete komentirati posljednje dvije linije ~/.vnc/xstartup i dodati liniju gnome-session & da koristite zadano GNOME okruženje radne površine kada se povezujete na sistem putem VNC protokol.

# cat .vnc/xstartup #!/bin/sh # Dekomentirajte sljedeća dva reda za normalnu radnu površinu: # # unset SESSION_MANAGER # exec /etc/X11/xinit/xinitrc [ -x /etc/vnc/xstartup] && exec /etc /vnc/xstartup [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources xsetroot -puna siva vncconfig -iconic & # xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & # twm & gnome-session & #!}

Ne zaboravite ponovo pokrenuti svoj VNC server nakon izmjene ove datoteke.

# vncserver -kill:2 Ubijanje Xvnc procesa ID 5785 # vncserver:2 Nova radna površina "RHELv4u3.localdomain:2 (root)" je RHELv4u3.localdomain:2 Pokretanje aplikacija navedenih u /root/.vnc/xstartup Log datoteka je /root/ .vnc/RHELv4u3.localdomain:2.log

B.4. Vježba: Kratke informacije o VNC protokolu

1. Koristite VNC protokol za pristup radnoj površini druge mašine.

Virtual Network Computing (VNC) sistem za daljinski pristup radnoj površini računara koristeći RFB (Remote FrameBuffer) protokol. Kontrola se vrši prenošenjem pritiska na tastaturu i pokreta miša sa jednog računara na drugi i prenošenjem sadržaja ekrana preko računarske mreže.

VNC sistem je nezavisan od platforme: VNC klijent, koji se zove VNC preglednik, koji radi na jednom operativnom sistemu može se povezati na VNC server koji radi na bilo kom drugom OS. Postoje klijentske i serverske implementacije za skoro sve operativne sisteme, uključujući J2ME). Više klijenata se može povezati na jedan VNC server u isto vrijeme. Najpopularniji načini korištenja VNC-a su udaljena tehnička podrška i pristup radnom računaru od kuće.

VNC je razvio AT&T. Originalni izvorni kod je dostupan pod GNU General Public License, kao i mnoge VNC varijante koje trenutno postoje.

Priča

VNC je kreiran u Olivetti & Oracle Research Lab, koji je u to vrijeme bio u vlasništvu Oracle Corporation. Laboratoriju je 1999. godine preuzeo AT&T, koji je 2002. godine zatvorio odjel za razvoj.

Ime je proizašlo iz računarske mreže tankog klijenta Videotile, koja je bila LCD panel sa brzim unosom olovkom

Programeri koji su radili na VNC-u u AT&T Research Lab:

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

Uređaj

VNC se sastoji od dva dela: klijenta i servera. Server je program koji omogućava pristup ekranu računara na kojem je pokrenut. Klijent (ili pregledač) je program koji prima sliku ekrana sa servera i stupa u interakciju s njom.

VNC je vrlo jednostavan protokol baziran na grafičkim primitivima: „Stavi pravougaonik pikselskim podacima na poziciju specificiranu koordinatama.” Server šalje male pravougaonike klijentu. Ova šema u svom primitivnom obliku troši većinu propusnog opsega kanala. Za smanjenje opterećenja kanala koriste se različite metode. Postoje razne kodiranja- metode za određivanje najefikasnijeg načina prenošenja ovih pravougaonika. VNC protokol omogućava klijentu i serveru da se "dogovore" o tome koje će se kodiranje koristiti. Najjednostavniji metod kodiranja koji podržavaju svi klijenti i serveri je “sirovo kodiranje”, u kojem se pikseli prenose slijeva nadesno, odozgo prema dolje, a nakon prijenosa originalnog stanja ekrana, prenose se samo promijenjeni pikseli. Ova metoda radi vrlo dobro za manje promjene slike na ekranu (pokret miša po radnoj površini, kucanje ispod kursora), ali opterećenje kanala postaje veoma veliko kada se istovremeno promijeni veliki broj piksela, na primjer, kada se gleda video u režim preko celog ekrana.

Podrazumevano, VNC koristi opseg TCP portova od 5900 do 5906. Svaki port predstavlja odgovarajući ekran X servera (portovi 5900 do 5906 su povezani sa ekranima:0 do:6). Java klijenti, dostupni u mnogim implementacijama koje koriste ugrađeni web server za ovu svrhu, kao što je RealVNC, komuniciraju sa ekranima na isti način, ali na portovima u rasponu od 5800 do 5806. Mnogi Windows računari mogu koristiti samo jedan port zbog zbog nedostatka svojstava za više igrača

Također je moguće vratiti se sa servera na klijenta. U ovom slučaju, klijent se prebacuje u režim slušanja i vezu inicira server na TCP portu 5500 klijenta.

Portovi se mogu mijenjati.

Sigurnost

U početku, VNC ne koristi šifriranje saobraćaja, ali u proceduri autentifikacije lozinka se ne prenosi u čistom tekstu, već koristi algoritam izazov-odgovor i koristi se i pri povezivanju putem interneta i na lokalnim mrežama. SSH klijenti vam omogućavaju da kreirate SSH tunele sa svih glavnih platformi (Windows,

Takođe mnoge moderne verzije VNC podržava standardna proširenja protokola koja implementiraju enkripciju i/ili kompresiju VNC prometa, ograničenja pristupne liste (engleski) - zvanična verzija koju podržava tim AT&T Laboratories

  • TightVNC (engleski) - alternativna verzija baziran na RealVNC-u
  • UltraVNC (engleski) - implementacija VNC-a za Microsoft Windows
  • Vinagre (engleski) - VNC klijent za desktop okruženje GNOME OS Koji je VNC softver bolji?
  • Wikimedia Foundation.

    2010.

      VNC- son las siglas en englés de Virtual Network Computing (Computación Virtual en Red). VNC es un program de software free base and unna estructura cliente servidor el cual no permite tomar el control del ordenador remotament servidor remotamente a través de … Wikipedia Español

      VNC- son las siglas en englés de Virtual Network Computing (Computación en Red Virtual). VNC je softverski program koji je slobodan za bazu i una estruktura klijentskog servera ili nema dopuštenja tomar el control del ordenador server remotamente a través de … Enciclopedia Universal

      PREUSMJENJIVANJE Virtuelne mreže računarstva ... Wikipedia

      VNC- Tipični VNC Sitzung u svom Fenster Virtual Network Computing (VNC) je softver, koji je u skladu sa Bildschirminhalt entfernten Rechners (Server) auf einem lokalni Rechner (Klijent) anzeigt und im Gegenzug Tastaturing des…

    Da biste radili sa virtuelnim serverom preko VNC-a, potrebno je da pokrenete klijentski program (VNC viewer, VNC klijent) na računaru korisnika. Ovaj program prenosi podatke o klikovima na tastere i pokretima miša od strane korisnika virtuelnom serveru i prikazuje informacije namenjene za prikaz na ekranu virtuelnog servera.

    Instalacija VNC klijenta

    Za Windows OS možete besplatno preuzeti i instalirati VNC klijent UltraVNC i TightVNC.

    Mac OS X od verzije 10.5 ima podršku za VNC klijent u RemoteDesktop. Za prethodne verzije možete koristiti VNC klijente JollysFastVNC i .

    Za Linux granu Debiana (Ubuntu), VNC klijent se instalira iz spremišta naredbom:

    Apt-get install vncviewer

    Za RedHat granu (CentOS, Fedora) - sa naredbom:

    Yum install vnc

    Za FreeBSD, VNC klijent (TightVNC) se instalira iz paketa sa naredbom:

    Pkg_add -r tightvnc

    Povezivanje VNC klijenta sa virtuelnim serverom

    Da povežete VNC klijenta na VDS/VPS, potrebno je da navedete njegovu IP adresu ili DNS ime, i broj prikaza (podrazumevano, :0) ili broj TCP porta (podrazumevano, 5900). Ako VNC server zahtijeva autorizaciju, tada će prilikom povezivanja na njega VNC klijent tražiti lozinku. Imajte na umu da lozinka za pristup VNC serveru nije povezana ni sa jednim nalogom (korisničkim nalogom) na uključenom virtuelni server, ali služi samo za ograničavanje pristupa ekranu VNC servera.

    Nakon uspostavljanja veze i otvaranja ekrana, u zavisnosti od podešavanja VNC servera, može biti potrebna autorizacija korisnika na virtuelnom serveru ili se može otvoriti već pokrenuta radna sesija korisnika.

    Pošto nekoliko VNC servera može biti pokrenuto na računaru u isto vreme, parametar prikaza broja koristi se za njihovo razdvajanje. Na primjer, jedan VNC server može raditi na ekranu:0, drugi na ekranu:1. Svaki broj prikaza odgovara broju TCP porta na kojem VNC server prihvata veze. Broj porta za ekran se dobija dodavanjem broja ekrana osnovnom broju porta - 5900. Display:0 odgovara TCP portu 5900, display:1 - portu 5901.

    Isključivanje VNC klijenta sa virtuelnog servera

    Prilikom zatvaranja prozora VNC klijenta ili nakon napuštanja okruženja korišćenjem desktop alata, u zavisnosti od podešavanja VNC servera, radna sesija korisnika se može zatvoriti sa zaustavljenim svim programima u upotrebi, ili nastaviti sa radom i ponovo biti dostupna kada se poveže na VNC server opet.

    Podešavanje VNC klijenta

    Velika količina informacija koje se prenose na ekran povlači za sobom povećane zahtjeve za brzinom kanala. Nedostatak propusnog opsega dovodi do neugodnih kašnjenja kada dođe do velikih promjena u informacijama prikazanim na ekranu - otvaranje novih prozora, skrolovanje itd. Latencije će biti posebno duge kada se prikazuju fotografije i druge slike ili elementi interfejsa koji imaju veliki broj boja i složenih oblika.

    Glavni parametar koji utječe na količinu prenesenih podataka je algoritam kodiranja prenesene grafike. Da biste smanjili volumen i, shodno tome, ubrzali rad, preporučuje se korištenje Tight, ZLib, ZRLE algoritama - u usporedbi s nekomprimiranim podacima (Raw), oni pružaju desetine puta kompresiju, značajno opterećujući procesor. Ovi algoritmi kodiranja pružaju udoban rad čak i na kanalima sa brzinom od 256-512 Kbps.

    Također, da smanjite količinu informacija koje se prenose preko mreže, možete postaviti visok nivo kompresije (Nivo kompresije, Vrijednost kompresije), nizak nivo JPEG kvalitete (JPEG Kvalitet) i omogućiti način smanjenja boje (-bgr233, Ograničene boje) . Najveći efekat od njih, uz primjetno smanjenje kvalitete slike, pruža način smanjenja broja boja - volumen prenesenih informacija se smanjuje za 1,5-3 puta, odnosno, prikaz na ekranu se ubrzava za 1,5 -3 puta.

    JPEG koristi algoritam Tight kodiranja za kompresiju područja ekrana koja sadrže fotografije i druge složene slike s velikim brojem boja. Korištenje Tight+JPEG smanjuje količinu podataka koji se prenose za 2-5 puta. Drugi algoritmi JPEG kodiranja nisu podržani.

    1. Padajući meni "Sistem -> Opcije"

    Volumen prenesenih podataka i brzina prikaza na kanalu je 1 Mbit/s kada otvorite padajući meni “Sistem -> Parametri” (meni je označen zelenom tačkastom linijom na slici):

    Uobičajeni problemi
    Ne mogu se povezati na VNC server

    Treba provjeriti:

    1. postoji li pristup internetu;
    2. da li virtuelni server odgovara na pingove;
    3. da li VNC server radi na virtuelnom serveru;
    4. da li postoji zaštitni zid na putu koji blokira pristup TCP portu VNC servera;
    5. Da li je ispravno naveden broj prikaza ili TCP port VNC servera (broj porta = 5900 + broj prikaza).
    Sporo rad kroz prilično brz kanal

    Ako VNC klijent ne može da se dogovori sa VNC serverom o korišćenju algoritma za grafičko kodiranje sa kompresijom podataka, bira se podrazumevani algoritam - Raw, koji prenosi podatke bez kompresije. Također, nekompresirano ili kodiranje niske kompresije može automatski odabrati VNC klijent kada radi na brzoj lokalnoj mreži. Ovaj problem se može rešiti forsiranjem algoritma kodiranja sa visokim nivoom kompresije - ZLib, ZRLE, Tight - u postavkama VNC klijenta.

    Međutim, za neke kombinacije klijenta i servera, ovo rješenje možda neće biti korisno zbog grešaka u pregovaranju algoritma kodiranja. Na primjer, TightVNC klijent sa RealVNC serverom često može raditi samo sa Raw kodiranjem. Rješenje u ovom slučaju je promjena VNC klijenta ili VNC servera.

    Kako pomoći svojim korisnicima da pristupe višekorisničkom Linux sistemu s bilo kojeg mjesta

    Arhitektura VNC i X servera

    Grafičko korisničko sučelje (GUI) u Linuxu® koristi X Window System (skraćeno X). X je neobičan GUI u nekoliko aspekata, posebno zato što je izvorno mrežni interfejs. X server, u suštini, je program mrežnog servera. Mrežni serverski programi pružaju klijentskim programima pristup lokalnim resursima, a to vrijedi i za X server. Posebnost je u tome što su u slučaju X servera „lokalni resursi“ ekran, tastatura i miš sa kojima korisnik radi. U najčešćoj konfiguraciji, X klijentski programi rade na istom računaru kao i server. Dakle, LibreOffice, GNU program za manipulaciju slikama (GIMP) ili drugi programi su X klijenti koji koriste X mrežne protokole za prihvatanje podataka od korisnika i prikazivanje rezultata na istom računaru.

    Međutim, kada se X koristi na mreži, korisnik sedi za računarom X servera, a X klijenti su programi koje treba pokrenuti na drugom računaru. Ova konfiguracija zahtijeva drugi mrežni protokol za uspostavljanje veze. Ovaj drugi protokol može biti telnet, Secure Shell (SSH) ili X Display Manager Control Protocol (XDMCP). Server za ovaj protokol za udaljenu prijavu radi na X klijentskom računaru, a klijent za udaljenu prijavu radi na računaru X servera. Server za udaljenu prijavu pokreće X klijente, koji zauzvrat uspostavljaju vezu sa X serverom. ilustruje ovu interakciju. Isprekidane strelice označavaju početak sesije. (Sa XDMCP, XDMCP klijent je ugrađen u program X servera.)

    Slika 1: Remote Access X zahteva klijenta i servera na oba računara

    Ova konfiguracija odlično funkcionira kod mnogih lokalne mreže, ali nije bez svojih nedostataka. Na primjer, zahtijeva da se pokrene dvosmjerni mrežni protokol, što može spriječiti zaštitni zid ili ruter za prevođenje mrežnih adresa (NAT). (SSH eliminiše ovu prepreku dozvoljavajući tuneliranje X sesija.) Osim toga, iako X serveri postoje za većinu platformi, oni se obično ne instaliraju na Windows® računarima. Iz ovih i drugih razloga, mnogi ljudi radije koriste drugi protokol, Remote Frame Buffer (RFB), koji je implementiran u porodici programa Virtual Network Computing (VNC).

    VNC je višeplatformski alat koji omogućava daljinski pristup Linuxu, UNIX®, Mac OS X, Windows i drugim sistemima sa bilo koje vrste klijenta. Korisnik sjedi za klijentskim računarom i pristupa udaljenom serverskom računaru. Na Linuxu, VNC server ili preslikava sadržaj lokalnog ekrana X servera na udaljeni računar, ili hostuje sopstveni X server koji može da radi nezavisno od onoga što kontroliše lokalni ekran. Rezultat je prikazan na slici 2. Opet, tačkasta strelica označava početak sesije. Ova konfiguracija eliminiše potrebu za obrnutom mrežnom vezom, a pošto su VNC klijenti i serveri dostupni za mnoge operativne sisteme, isti klijentski program omogućava pristup bilo kom serveru.

    Slika 2. VNC server uključuje X server koji može komunicirati sa lokalnim programima preko X klijenta

    Nedostatak VNC-a je u tome što je RFB autentifikacija zasnovana na lozinkama bez korisničkih imena. Dakle, svaki korisnik mora pokrenuti nezavisnu sesiju VNC servera i uspostaviti vezu sa tom VNC instancom navodeći tačan broj porta. Ovaj zahtjev je podnošljiv za sistem sa jednim korisnikom, ali uzrokuje ekstremne neugodnosti pri radu na višekorisničkom računaru.

    Da biste riješili ovaj problem, možete kombinirati ova dva pristupa: rekonfigurirati lokalni XDMCP server tako da pomaže X serveru ugrađenom u VNC da obezbijedi autentifikaciju više korisnika koja nedostaje. (Rezultirajuća konfiguracija je ilustrovana na slici 3. Isprekidana strelica označava početak sesije.) Sada, kada udaljeni VNC korisnici pristupe VNC serverskom računaru, mogu uneti korisnička imena i pristupne lozinke za svoje jedinstvene VNC sesije, tako da računar se može koristiti koliko god dugo bilo koji korisnik.

    Slika 3: Dodavanje XDMCP-a u VNC konfiguraciju pruža povećanu fleksibilnost

    Postavljanje VNC servera

    Postoji nekoliko načina za pokretanje VNC-a, uključujući korištenje skripti, povezivanje VNC-a sa desktop okruženjem pomoću desktop alata i korištenje xinetd-a za slušanje VNC veza. Ovaj posljednji pristup je ovdje opisan jer omogućava VNC-u da radi na način koji može koristiti XDMCP server. Prije nego što pređete na upute za postavljanje VNC-a za pokretanje kroz xinetd, morate odabrati VNC server.

    Odabir VNC servera

    Postoji nekoliko VNC serverskih programa. (Vidi odeljak). Neki od najpopularnijih su TightVNC, TigerVNC i RealVNC. Ovaj članak koristi TightVNC kao primjer. Nažalost, detalji konfiguracije su specifični i za server i za distribuciju, tako da će upute ovdje morati biti prilagođene vašem softveru.

    Instaliranje xinetd

    Mnoge distribucije podrazumevano instaliraju xinetd superserver, ali ne sve. Budući da ovdje opisana metoda pretpostavlja korištenje xinetd-a, morate instalirati xinetd ako već nije instaliran. Na većini distribucija, xinetd se može instalirati pomoću upravitelja paketa, na primjer pozivanjem apt-get install xinetd na distribucijama baziranim na Debianu ili zypper install xinetd na openSUSE.

    Možda ćete također morati konfigurirati proces pokretanja xinetd-a. Obično možete koristiti skriptu za pokretanje System V (SysV) za jednokratno pokretanje:

    # /etc/init.d/xinetd start

    Da biste konfigurisali xinetd da se automatski pokreće kada se računar pokrene, morate znati kako funkcionišu skripte za pokretanje vaše distribucije. Obično se to radi pomoću uslužnog programa kao što je chkconfig (koristi se na Fedora, openSUSE i srodnim distribucijama), update-rc.d (koristi se na Debianu i srodnim distribucijama) ili rc-update (koristi se na Gentoou), nešto ovako:

    # chkconfig xinetd on # update-rc.d xinetd enable # rc-update add xinetd default

    Samo unesite jedan iz ovih naredbi ili pronađite ekvivalent za svoju distribuciju.

    Imajte na umu da se xinetd možda neće pokrenuti ako nije konfiguriran za pokretanje bilo koje usluge. Stoga ćete možda morati pričekati da ga pokrenete dok ne konfigurirate xinetd za upravljanje vašim VNC serverom.

    Postavljanje xinetd

    Serveri kojima će upravljati xinetd postavljaju konfiguracijske datoteke u /etc/xinetd.d direktorij. Stoga, da biste konfigurirali xinetd za upravljanje VNC-om, trebate kreirati ili urediti datoteku s tipom imena /etc/xinetd.d/vnc.(Na nekim distribucijama, kao što je openSUSE, paket VNC servera instalira takvu datoteku.) Listing 1 pokazuje primjer.

    Listing 1. Primjer VNC konfiguracije za xinetd
    service vnc ( disable = bez socket_type = stream protokol = tcp čekanje = bez korisnika = niko server = /usr/bin/Xvnc server_args = -inetd -once -query localhost -geometry 1024x768 -depth 16 tip = NEISPITIVANI port = 5900 )

    Ovaj unos specificira nekoliko xinetd opcija, od kojih većinu treba ostaviti kakva jeste. U nastavku su navedene postavke koje je možda potrebno konfigurirati.

    • usluga. VNC sa različitim parametrima može se pokrenuti na više portova, ali u ovom slučaju, u prvom redu Listinga 1, morate dati VNC-u zasebno ime usluge za svaki port.
    • server. Ovu postavku treba promijeniti tako da ukazuje na glavni binarni VNC server, koji se obično naziva Xvnc.
    • server_args. Gotovo sigurno ćete željeti promijeniti neke od ovih vrijednosti, kao što je opisano u nastavku.
    • luka. VNC koristi brojeve portova 5900 i više. Možete pokrenuti server s različitim vrijednostima parametara kroz različite portove. U ovom slučaju, svakoj instanci mora biti dodijeljen vlastiti broj porta.

    Najzahtjevniji dio postavljanja xinetd-a je postavljanje argumenata servera. Možete koristiti argumente prikazane u Listingu 1 kao model, mijenjajući neke od njih.

    • -query localhost . Ova opcija specificira da VNC X server treba provjeriti lokalni host sistem za XDMCP autentifikaciju. Može se promijeniti ako želite da koristite jedan računar kao prevodilac za pristup programima drugog.
    • -geometrija 1024x768. Ova opcija postavlja virtuelnu rezoluciju VNC sesije. Imajte na umu da se ova rezolucija ne mora poklapati sa rezolucijom običnog X servera koji radi na serverskoj mašini. Možete kreirati više unosa koji rade u različitim rezolucijama tako da se korisnici mogu prijaviti na VNC server u rezoluciji koja odgovara njihovim lokalnim sistemima.
    • -dubina 16 . Ovaj parametar postavlja dubinu boje. Što je niža vrijednost, brže se ažurira ekran, ali na ekranu sa veliki broj boje mogu biti izobličene. Raspon važećih vrijednosti je od 2 do 32.

    Postoji mnogo drugih opcija, a neke od njih zavise od VNC servera. Pogledajte dokumentaciju vašeg VNC servera.

    Postavljanje XDMCP servera

    Većina Linux distribucija konfiguriše svoje XDMCP servere da upravljaju samo lokalnim ekranom. Da biste omogućili daljinski pristup, potrebno je da ponovo konfigurišete XDMCP server da prihvata zahteve za pristup sa VNC servera koji radi na istom računaru. Detalji zavise od XDMCP servera. Tri najčešće korišćena u Linuxu su GNOME Display Manager (GDM), Light Display Manager (LightDM) i KDE Display Manager (KDM). Drugi XDMCP serveri, kao što je XDM, zahtijevaju drugačija podešavanja od onih opisanih ovdje. U svakom slučaju, nakon rekonfiguracije XDMCP servera, morat ćete ga ponovo pokrenuti.

    Uređivanje XDMCP konfiguracijske datoteke

    Ako niste sigurni koji se XDMCP server koristi na vašem sistemu, to možete utvrditi pregledavanjem liste procesa pomoću dm linije, na primjer:

    $ ps ax | grep dm 929 ? Ss 0:00 /usr/bin/kdm 962 tty7 Ss+ 0:19 /usr/bin/Xorg -br:0 vt7 -nolisten tcp -auth \ /var/lib/xdm/authdir/authfiles/A:0-pp4shb 30157 pts/3 S+ 0:00 grep --color=auto dm

    Prvi red ovog ispisa navodi da je KDM pokrenut, pa da bi VNC koristio XDMCP, morate urediti konfiguracijsku datoteku tog servera. Konfiguracijske datoteke većine XDMCP programa slijede isti format. Oni sadrže odjeljke s imenima datim u uglastim zagradama, kao što je . Redovi iza imena odjeljka specificiraju parametre koristeći znak jednakosti, na primjer: enable=true . Tablica 1 navodi imena konfiguracijskih datoteka, imena odjeljaka i parametre koji moraju biti definirani da bi XDMCP radio na nekoliko uobičajenih Linux XDMCP poslužitelja.

    Tablica 1. Parametri koji dozvoljavaju da XDMCP podržava VNC za različite XDMCP poslužitelje

    XDMCP odjeljak u konfiguracijskoj datoteci možda u potpunosti nedostaje. Ako postoji, može eksplicitno onemogućiti podršku za XMDCP, sadržavati komentarisane opcije ili biti prazan. Bez obzira na početno stanje datoteke, morate osigurati da je XDMCP odjeljak prisutan i da je podrška omogućena. Kao primjer, pogledajmo konfiguriranje KDM-a da omogući XDMCP:

    Enable=true

    Neke distribucije vam omogućavaju da omogućite dodatne sigurnosne mjere koje će vam možda trebati da se opustite. Jedan od njih je zaštitni zid. Skripte zaštitnog zida su obično specifične za distribuciju, pa pogledajte dokumentaciju vašeg sistema za uputstva o konfigurisanju zaštitnog zida. Želite da localhost ima pristup portu 177 i VNC klijentima za pristup portu 5900 (ili bilo kojim drugim portovima koji se koriste za VNC).

    OpenSUSE ima dodatnu konfiguracionu datoteku koja kontroliše neke vrste pristupa, uključujući XDMCP pristup: /etc/sysconfig/displaymanager. Otvorite ovu datoteku u uređivaču teksta i pronađite sljedeći red:

    DISPLAYMANAGER_REMOTE_ACCESS="ne"

    Promijenite vrijednost ovog parametra u "da". Ako ostavite "ne", prozor za prijavu na XDMCP server neće biti prikazan kada se povezujete na VNC server. U većini distribucija to se mijenja Ne potrebno: Ovaj fajl koristi samo openSUSE.

    Ponovno pokretanje XDMCP servera

    Kada se XDMCP server konfiguriše da podržava udaljene veze, mora se ponovo pokrenuti. Na distribucijama koje pokreću X preko SysV init datoteke, kao što su Debian i Gentoo, to se može učiniti pomoću opcije ponovnog pokretanja:

    # /etc/init.d/gdm restart

    Na sistemu koji koristi nivo pokretanja za pokretanje X, kao što je Fedora ili openSUSE, morate otići na nivo tekstualnog režima (obično 3), a zatim nazad na nivo GUI (obično 5):

    # telinit 3 # telinit 5

    Imajte na umu da vas oba pristupa odjavljuju iz X, stoga sačuvajte sav posao koji ste obavili u svojoj X sesiji prije nego što nastavite.

    Testiranje i otklanjanje grešaka

    Sada se možete prijaviti sa udaljenog računara koristeći VNC klijent. Većina Linux distribucija uključuje naredbu vncviewer, tako da možete upisati:

    vncviewer

    Za prijavu udaljeno ime preko VNC. Ako je VNC konfigurisan i radi ispravno, rezultat će biti nešto poput slike 4. Ako postavite više VNC sesija na različitim portovima, možete odrediti broj VNC sesije tako što ćete ga proslijediti kao dio imena hosta. Unesite:

    vncviewer:3

    Za prijavu na sesiju 3 (preko porta 5903).

    Slika 4. Kada je konfigurisan za rad sa XDMCP, VNC pruža uobičajeni Linux prompt

    Ako ne vidite ekran za prijavu na XDMCP kada pokrenete ovaj test, morat ćete otkloniti greške. U nastavku su neke preporuke.

    • Ako vncviewer prijavi da je veza odbijena, to najvjerovatnije znači da superserver na VNC serverskoj mašini nije pravilno konfigurisan. Provjerite xinetd konfiguraciju i pokušajte ponovo pokrenuti superserver. Takođe je moguće da zaštitni zid blokira pristup računaru VNC servera.
    • Ako se VNC klijent pokrene i poveže sa serverom, ali vidite samo sivi ekran sa kursorom koji se može pomerati, problem je najverovatnije u konfiguraciji XDMCP servera. Provjerite gornje postavke i ponovo pokrenite XDMCP server.
    • Pregledajte datoteke dnevnika događaja kao što biste inače radili prilikom otklanjanja grešaka. Možda ćete morati da tražite sve datoteke dnevnika u /var/log direktorijumu koristeći veze do vašeg xinetd, XDMCP servera i VNC servera.

    VNC sigurnosni problemi

    RFB nije siguran protokol; Većina VNC klijenata i servera ne šifriraju svoje podatke. (VNC šifrira sopstvene lozinke, ali pristup opisan ovde ne koristi te lozinke.) Budite pažljivi kada birate kako i gde da instalirate VNC. Ako želite da koristite VNC na nezaštićenoj mreži, postoje tri opcije:

    • koristite virtuelno privatna mreža(VPN);
    • tunelski protokol preko SSH;
    • Koristite VNC opciju koja podržava šifriranje, kao što je TigerVNC sa mogućnošću šifriranja Transport Layer Security.

    Kada omogućite prozore za prijavu na VNC, kao što je opisano u ovom članku, oni se otvaraju prema vanjskom svijetu barem, dva porta (VNC i XDMCP). Oba porta mogu biti ograničena pravilima zaštitnog zida kako bi se smanjio rizik od zloupotrebe. Imajte na umu da bi XDMCP port (UDP 177) trebao biti otvoren samo za localhost, tako da pravilo zaštitnog zida za njega može biti prilično restriktivno.

    Zaključak

    Općenito, VNC i XDMCP veza ― korisna metoda pružanje daljinske prijave sa grafičkim korisničkim interfejsom za višekorisničke Linux računare. Ova metoda ima prednosti u odnosu na direktnu primjenu XDMCP-a u višeplatformskom okruženju ili kada postoje problemi uzrokovani zaštitnim zidom ili NAT-om. Na višekorisničkim računarima je poželjnije u odnosu na uobičajene metode direktnog VNC povezivanja. Postoje sigurnosni problemi koje treba uzeti u obzir prilikom korištenja ove metode. Budite spremni da postavite pravila zaštitnog zida kako biste ograničili neželjeni vanjski pristup i koristite enkripciju ako podaci putuju preko nepouzdane mreže.



    Šta još čitati