Descrierea TightVNC. Conectați-vă la un desktop la distanță folosind TightVNC Instalarea de la distanță a tightvnc

Pe baza numelui aplicației VNC Viewer, mulți utilizatori pot ghici imediat ce clasă de software îi aparține, de exemplu, făcând o analogie cu binecunoscutul pachet TeamViewer. Cu toate acestea, utilizatorii obișnuiți pot întâlni un astfel de utilitar pentru prima dată, așa că merită să discutăm separat asupra unor probleme legate de cum și ce modificare a programului este cel mai bine instalat, cum să configurați aplicația pentru modul de funcționare optim, cum să utilizați VNC Viewer, „strângând” la maximum oportunitățile aplicației.

Informații generale despre VNC Viewer

Te-ar putea interesa:

În primul rând, să ne uităm pe scurt la ce este asta produs software, să ne uităm la ce este destinat. Pe baza analogiei de mai sus, putem spune că clientul VNC este o aplicație universală care vă permite să organizați accesul la un computer la distanță în câteva minute.

Adică acest program poate fi clasificată ca o clasă de aplicații RDP concepute pentru a se conecta la un desktop la distanță. Cu toate acestea, problema nu se limitează la accesul la computere la distanță, deoarece programul în sine are multe caracteristici suplimentare:

  • Control complet al setărilor fără restricții în modul ecran complet sau fereastră.
  • Transfer de fișiere.
  • Posibilitatea de a trimite mesaje prin chat încorporat.
  • Blocare dispozitive periferice, dacă este necesar (șoareci, tastaturi etc.).
  • Posibilitatea de a accesa computerele conectate prin browser.
  • Organizarea conexiunii cu mai multe terminale in acelasi timp.

Lucrul cu partajări de fișiere este doar un exemplu de utilizare a SSL Explorer. Mai jos vom arăta metoda acces la distanță pe desktop-ul Windows folosind o soluție bazată pe open cod sursă- TightVNC combinat cu tunel SSL Explorer.

Vă puteți întreba: de ce să folosiți TightVNC dacă SSL Explorer are deja suport RDP? De fapt, există suport RDP și nu este deloc necesar să folosiți TightVNC. Din păcate, nu toate sistemele de operare acceptă RDP, cum ar fi Windows XP Home.

În plus, RDP este Protocolul Windows, iar VNC este multiplatformă. Cu alte cuvinte, extensia Windows TightVNC instalat pe calculator cu SSL Explorer, vă va permite să lucrați nu numai cu Windows, ci și cu Linux și alte sisteme pe care este instalat serverul VNC. VNC este o soluție open source care nu necesită achiziționarea unei licențe și poate fi personalizată după cum este necesar. Apropo, există extensii pentru SSL Explorer care acceptă alte protocoale, cum ar fi Citrix ICA pentru utilizatorii serverelor Citrix.

Configurarea TightVNC necesită doar trei pași.

  • Instalați suportul TightVNC în SSL Explorer în secțiunea „Extension Manager”.
  • Instalați TightVNC pe computerul căruia doriți să oferiți acces la distanță.
  • Creați o comandă rapidă pentru Conexiuni SSL Explorer la computerul dorit.

Pasul 1

Descărcați TightVNC. Arhiva conține un fișier XML pentru integrare cu SSL Explorer.

Accesați secțiunea „Manager de extensie”în meniu "Configurare"(Fig. 27).

Orez. 28. Ecran de descărcare extensie. Click pe poza pentru marire.

Clic „Găsiți/Răsfoiți”, selectați locația TightVNC descărcat. Apăsați butonul „Încărcare” pentru instalare pe SSL Explorer.

Trebuie să instalați TightVNC pe computerul la care aveți nevoie de acces de la distanță. Software-ul poate fi descărcat, de exemplu, .


După descărcare, trebuie să îl instalați pe computer. Asigurați-vă că este instalat ca serviciu. Rețineți că, de asemenea, trebuie să setați o parolă pentru a accesa serverul TightVNC. Fila de setări se află în secțiunea „Afișează proprietățile utilizatorului curent” - fig. 29.

Orez. 29. Configurarea TightVNC.


Această parolă va trebui specificată de fiecare dată când vă conectați la un computer de la un client VNC (inclusiv prin SSL Explorer). Vă recomandăm să bifați „permite conexiuni locale/permite conexiuni loopback” în secțiunea de administrare (Fig. 30).

Orez. 30. Administrarea TightVNC. Nota. SSL Explorer folosește Port TCP

443, TightVNC - TCP 5900. Pe un computer cu o parte server VNC, firewall-ul trebuie să permită conexiuni de intrare pe portul TCP 5900.

Pasul 3 Să creăm o comandă rapidă pentru conectarea TightVNC. Alegeîn meniu „Aplicații”„Managementul resurselor”

(Fig. 31).

Orez. 31. Aplicații. Click pe poza pentru marire.

Selectați tipul de comandă rapidă. În cazul nostru, „TightVNC pentru Windows” (Fig. 32).

Orez. 32. Comandă rapidă. Click pe poza pentru marire.

Indicăm numele și descrierea comenzii rapide (Fig. 33).

Orez. 34. Setările aplicației. Click pe poza pentru marire.

Trebuie să selectați o politică pentru resursă. În cazul nostru - „Toți” (Fig. 35).

Pe ecranul următor(Fig. 36) confirmați alegerea. Dacă totul este specificat corect, faceți clic pe „Terminare”.

Orez. 37. Confirmarea setărilor. Click pe poza pentru marire.

În colțul din dreapta sus al ecranului, faceți clic „Deconectare” pentru a încheia sesiunea Super User. Ne autentificăm ca utilizator nou creat (în cazul nostru, John Smith). După conectare, vedem o listă de comenzi rapide disponibile „Preferatele mele”, care arată toate aplicațiile instalate.

Orez. 38. Consola utilizator. Click pe poza pentru marire.

Ecranul prezentat în Fig. 38, este exact ceea ce va vedea utilizatorul când lucrează cu SSL Explorer. Selectați TightVNC, după care SSL Explorer va lansa clientul Java VPN, va configura tunelul și va lansa clientul TightVNC pentru conectarea de la distanță la desktopul PC-ului. Dacă totul este configurat corect, va apărea ecranul de conectare TightVNC, unde trebuie să introduceți parola corespunzătoare (Fig. 39).

Orez. 39. Autentificare TightVNC.

După autentificare, va apărea o fereastră de pe desktop. În fig. 40 arată un exemplu.

Orez. 40. Desktop la distanță TightVNC. Click pe poza pentru marire.

Pentru a demonstra vizual configurarea, puteți viziona un videoclip Flash pe site-ul web 3SP, care arată principalele etape ale instalării administrării de la distanță. În ciuda faptului că videoclipul arată configurarea SSL Explorer cu un client RDP încorporat, parametrii principali pentru TightVNC vor fi aceiași. Puteți citi mai multe despre TightVNC pe site tightvnc.com .


  • Tutorial

Acest ghid este despre cum să configurați noVNC pentru accesul de la distanță la computerele Windows.

De ce noVNC?

- Windows are un instrument „nativ” pentru acces la distanță - Conexiune la desktop la distanță. Dar nu este disponibil în toate versiunile de Windows - de exemplu, nu este în ediția Home.
- Există, de asemenea, multe servere și clienți VNC pentru oricare versiuni Windows. Dar pentru a le folosi trebuie să instalați un client VNC. Și există cazuri în care nu poți instala nimic (drepturi restricționate) sau nu este de dorit pentru a nu lăsa urme pe computerul altcuiva.
- Există și Chrome Remote Desktop, care are nevoie doar de o extensie de browser pe partea clientului. Dar am avut un caz când protocolul Chrome a fost blocat de o organizație (totul era blocat acolo), iar noVNC folosește HTTP obișnuit și, prin urmare, a funcționat.

Din câte știu, noVNC este singurul instrument care vă permite să vă conectați la un computer la distanță fără a instala niciun client - este folosit doar un browser.
Există și SPICE, dar nu am găsit un server pentru el pe Windows.

Ca urmare a acestui ghid, putem pur și simplu să deschidem linkul în browser, să introducem parola și să folosim sistemul de la distanță.

O condiție prealabilă este redirecționarea portului sau IP-ul alb al computerului la distanță. De asemenea, puteți utiliza repetitorul VNC. Dar acest lucru este dincolo de scopul acestui articol.

Schema generala

Mai întâi vom instala un server VNC obișnuit pe portul 5900.

Apoi vom instala noVNC și WebSockify pe portul 5901.

Scopul este ca acesta să arate cam așa:


Acum rulați promptul de comandă cu drepturi de administrator:


Lansați WebSockify:

C:\> cd c:\noVNC\websockify c:\noVNC\websockify> websockify.exe 5901 127.0.0.1:5900 --web c:\noVNC\noVNC-master AVERTISMENT: fără modul „resurse”, suport demonizant dezactivat WebSocket setări server: - Ascultare pe:5901 - Server de politică de securitate Flash - Server web. Rădăcină web: c:\noVNC\noVNC-master - Fără suport SSL/TLS (fără fișier cert) - proxy de la:5901 la 127.0.0.1:5900
Primul parametru de mai sus este portul pe care noVNC va asculta: 5901 . Acest port trebuie pus la dispoziția clienților.

Al doilea parametru este IP-ul și portul unde se află serverul VNC: 127.0.0.1:5900

Al treilea parametru --web instruiește noVNC să dea conținutul directorului c:\noVNC\noVNC-master prin HTTP(e). În mod implicit, noVNC oferă doar un websocket VNC, dar această opțiune vă permite să aveți un server HTTP pe același port.

În director c:\noVNC\noVNC-master redenumiți fișierul vnc.html V index.html astfel încât este dat implicit.

Acum clientul noVNC ar trebui să fie disponibil pe portul 5901:


De asemenea, încercați să deschideți pagina noVNC de pe alt computer/smartphone pentru a vă asigura că este accesibilă din exterior. Dacă nu, atunci verificați:

Ce ai Windows Firewall nu se blocheaza conexiuni externe spre acest port,
- că routerul dumneavoastră redirecționează corect cererile către acest port calculatorul potrivit; Dacă este necesar, căutați pe Google „port forwarding”.

Ne conectăm, introducem parola VNC și vedem desktopul computerului de la distanță!

Dacă ceva a mers prost, atunci erorile ar trebui să apară în consola noastră.

Puteți opri serverul noVNC apăsând Ctrl-C în consolă. Configurația descrisă mai sus funcționează prin HTTP (și prin WS).

Adăugarea SSL cu un certificat autosemnat

Adăugarea SSL este opțională. Puteți crea un certificat autosemnat astfel:

Openssl req -new -x509 -days 365 -nodes -out self.pem -keyout self.pem
Pentru Windows openssl puteți lua .

Ca rezultat, obținem fișierul self.pem, care trebuie să fie indicat la pornirea noVNC:

C:\noVNC\websockify> websockify.exe 5901 127.0.0.1:5900 --web c:\noVNC\noVNC-master --cert=c:\noVNC\self.pem
Acum avem HTTPS și WSS (WebSocket Secure) în funcțiune. Pentru WSS, trebuie să specificați Criptare în Setări. Interesant este că noVNC folosește același port pentru HTTP și HTTPS - „știe cum” să facă distincția între solicitări și să răspundă corect.

Deoarece certificatul este autosemnat, browserul va trebui să accepte acest certificat.

Să criptăm

Nu am instrucțiuni despre cum să configurez sistemul, astfel încât Let's Encrypt să genereze automat un certificat special pentru sistemul nostru. Acest lucru ar necesita ca noVNC să ruleze pe portul 80, ceea ce este posibil, desigur, dar poate fi incomod și să găsească un. mod de a integra certbot, astfel încât aceste fișiere să fie publicate în directorul dorit, cred că acest lucru este posibil, dar nu am făcut-o dacă ați terminat, distribuiți-l în comentarii.

În cazul meu, am deja un server de acasă cu NGINX și un nume DDNS, care este configurat să primească automat un certificat de la Lets Encrypt.

Puteți rula ceva similar pentru dvs. Există instrucțiuni despre configurarea Let's Encrypt pentru Linux și Windows.

Prin urmare pentru noVNC Le folosesc doar pe cele existente pem-fisiere generate pentru nginx.

Let's Encrypt creează următoarele fișiere:

Cert.pem: certificatul domeniului dvs. chain.pem: certificatul de lanț Let's Encrypt fullchain.pem: cert.pem și chain.pem combinate privkey.pem: cheia privată a certificatului dvs.
Pe Ubuntu pot fi găsite la această cale: /etc/letsencrypt/live/your_domain_name

Trebuie copiat (imbinare) fullchain.pemŞi privkey.pemîntr-un singur fișier, de exemplu, să-l numim criptare.pem, iar acesta este fișierul pentru care îl vom folosi noVNC.

Desigur, acest lucru va funcționa numai dacă nginx server și noVNC- pe un domeniu. Porturile pot fi diferite.

Și nu trebuie să uităm că certificatele sunt valabile doar câteva luni, iar apoi trebuie să copiați fișierele actualizate.

Adăugați noVNC ca serviciu Windows

Descărcați arhiva zip și despachetați fișierele de acolo, astfel încât să fie în același folder cu fișierul websockify.exe, adică în cazul nostru în c:\noVNC\websockify.

La lansare, serviciul va folosi parametrii din fișier noVNCConfig.ini. Iată un exemplu al configurației mele:

5901 127.0.0.1:5900 --web C:\noVNC\noVNC-master --cert=c:\noVNC\encrypt.pem
În consola lansată cu privilegii de administrator, creați un nou serviciu:

Sc creați „noVNC Websocket Server” binPath= „c:\noVNC\websockify\noVNC Websocket Service.exe” DisplayName= „noVNC Websocket Server”
Dacă trebuie să ștergeți un serviciu, procedați astfel:

Sc șterge „noVNC Websocket Server”
Deschideți serviciile (Panou de control → Instrumente administrative → Servicii) și lansați noVNC Websocket Server. De asemenea, puteți configura serviciul să înceapă de fiecare dată cu Windows:

Probleme cunoscute

Dispunerea tastaturii

Am descoperit că aspectul tastaturii rusești funcționează într-un mod destul de neobișnuit:
Dacă clientul a selectat limba rusă, atunci apăsările de taste nu sunt deloc transmise computerului la distanță. desktop la distanță Adăugați etichete

VNC (acronimos pentru Virtual Network Computing) este un sistem care vă permite să utilizați o tastatură și un mouse pentru a interacționa cu o interfață grafică de utilizator pe server la distanță. Acest sistem vă permite să gestionați fișiere, softwareși setări pe un server la distanță pentru utilizatorii care nu se simt confortabil să lucreze cu instrumentele linie de comandă.

În acest articol, vom descrie procesul de instalare a VNC pe un server care rulează Ubuntu 16.04 și, de asemenea, vom afla cum să creați o conexiune sigură la acest server folosind un tunel SSH. Ca server VNC vom folosi TightVNC - un pachet rapid și ușor pentru acces la distanță. Datorită acestui produs, conexiunea noastră VNC va funcționa în mod fiabil chiar și pe o conexiune lentă la Internet.

Înainte de instalare

Pentru a urma instrucțiunile descrise în acest articol, veți avea nevoie de:

    Droplet din Ubuntu 16.04, configurat conform pașilor descriși în , inclusiv crearea unui utilizator non-root cu privilegii sudo.

    Computer local cu un client VNC care acceptă conexiuni printr-un tunel SSH. Dacă utilizați Windows, puteți utiliza TightVNC, RealVNC sau UltraVNC. Utilizatorii Mas OS X pot folosi utilitarul încorporat de partajare a ecranului sau pot folosi o aplicație multiplatformă, cum ar fi RealVNC. utilizatorii Linux au o selecție largă: vinagre, krdc, RealVNC, TightVNC etc.

Pasul 1 - Instalarea mediului desktop și a serverului VNC

Implicit, picăturile Ubuntu 16.04 nu au un mediu desktop grafic sau un server VNC instalat, așa că vom începe prin a le instala. Vom instala pachetele ultima versiune Mediul desktop Xfce și pachetul TightVNC din depozitele Ubuntu.

Instalați pachetele Xfce și TightVNC pe serverul dvs.

  • sudo apt install xfce4 xfce4-goodies tightvncserver

Pentru a finaliza configurarea inițială a serverului VNC după instalarea acestuia, utilizați comanda vncserver pentru a seta o parolă puternică.

  • vncserver

Vi se va solicita să introduceți și să confirmați parola și să furnizați o parolă de vizualizare. Utilizatorii care folosesc o parolă de navigare nu vor putea face nimic cu tastatura și mouse-ul pe o mașină VNC. Acest lucru poate fi util pentru a demonstra ceva pe serverul dvs. VNC altor persoane, nu este necesar.

Rularea vncserver completează instalarea VNC prin crearea fișierelor de configurare implicite, precum și prin crearea de informații de conectare la serverul nostru. După instalarea acestor pachete, putem începe configurarea serverului nostru.

Pasul 2 - Configurarea serverului VNC

Mai întâi, să specificăm comenzile pe care serverul VNC ar trebui să le execute la pornire. Aceste comenzi sunt setate în fișierul de configurare xstartup din subdirectorul .vnc al directorului dvs. de acasă. Scriptul de pornire a fost creat prin rularea comenzii vncserver în pasul anterior, acum vom modifica unele comenzi pentru a funcționa cu Xfce.

Când porniți pentru prima dată VNC, lansează o instanță de server implicită pe portul 5901. Acest port se numește portul de afișare, iar în VNC este desemnat: 1 . VNC poate lansa multe instanțe pe alte porturi, de exemplu, :2, :3 și așa mai departe. Când lucrați cu servere VNC, rețineți că numărul portului de afișare: X rulează pe portul 5900+X.

Deoarece vom face modificări în configurația serverului VNC, mai întâi trebuie să oprim instanța de server care rulează pe portul 5901.

  • vncserver -kill:1

Rezultatul ar trebui să arate similar, până la ID-ul procesului:

Uciderea procesului Xtightvnc ID 17648

Înainte de a face modificări noului fișier xstartup, să facem copie de rezervă fișier sursă.

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

Acum să creăm un nou fișier xstartup folosind nano sau alt editor de text.

  • nano ~/.vnc/xstartup

Lipiți aceste comenzi într-un fișier pentru a le rula automat când porniți sau reporniți serverul VNC, apoi salvați și închideți fișierul.

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

Prima comandă din fișierul xrdb $HOME/.Xresources spune cadrului GUI Utilizator VNC care trebuie să utilizeze un fișier .Xresources personalizat. Fișierul .Xresources stochează anumite setări personalizate desktop, de exemplu culorile terminalului, tema cursorului, redarea fontului. A doua comandă indică serverului să lanseze Xfce, ceea ce vă permite să vă gestionați confortabil serverul.

Pentru ca serverul VNC să folosească aceste setări, vom face fișierul executabil.

  • sudo chmod +x ~/.vnc/xstartup

Acum să repornim serverul VNC.

  • vncserver

Serverul ar trebui să repornească și să afișeze ceva similar cu consola:

Noul desktop „X” este numele_server_dvs..com:1 Pornirea aplicațiilor specificate în /home/sammy/.vnc/xstartup Fișierul jurnal este /home/sammy/.vnc/liniverse.com:1.log

Pasul 3 - Testarea desktopului VNC

Acum să verificăm conexiunea la serverul tău VNC.

Mai întâi, să creăm o conexiune SSH pe mașina dvs. locală pentru a stabili o conexiune sigură cu VNC. Puteți face acest lucru folosind un terminal pe Linux sau OS X cu următoarea comandă. Nu uitați să înlocuiți username și server_ip_address cu numele utilizatorului dvs. cu drepturi sudo și adresa IP a serverului dvs.

  • ssh -L 5901:127.0.0.1:5901 -N -f -l nume de utilizator adresa_ip_server

Dacă utilizați grafic Client SSH, de exemplu PuTTY, setați server_ip_address ca adresă IP a conexiunii și, de asemenea, setați localhost:5901 ca port de redirecționare în setările de conexiune SSH ale clientului.

Odată ce conexiunea este stabilită cu succes, veți vedea desktopul Xfce implicit. Ar trebui să arate asemănător:

Puteți accesa fișierele din directorul dvs. de pornire folosind manager de fișiere sau din linia de comandă:

Pasul 4 - Creați un fișier de serviciu VNC

Mai întâi, să creăm un fișier unitate /etc/systemd/system/ [email protected] cu ajutorul tau editor de text:

Copiați și inserați următorul conținut în el. Asigurați-vă că modificați valoarea câmpului Utilizatorși numele de utilizator în câmp PIDFILE la valorile tale.

/etc/systemd/system/ [email protected]

Description=Porniți serverul TightVNC la pornire După=syslog.target network.target Tip=furcare Utilizator=sammy PAMName=login PIDFile=/home/sammy /.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 WantedBy=multi-user.target

  • sudo systemctl daemon-reload

Să activăm fișierul unitar.

Opriți instanța actuală a serverului VNC dacă rulează.

  • vncserver -kill:1
  • sudo systemctl start vncserver@1

Să ne asigurăm că serviciul rulează cu această comandă:

  • sudo systemctl status vncserver@1

Dacă lansarea a avut succes, rezultatul ar trebui să arate similar cu:

Concluzia numelui

[email protected]- Server TightVNC pe Ubuntu 16.04 Încărcat: încărcat (/etc/systemd/system/ [email protected]; activat; prestabilit furnizor: activat) Activ: activ (în rulare) din Luni 2016-04-25 03:21:34 EDT; acum 6 secunde Proces: 2924 ExecStop=/usr/bin/vncserver -kill:%i (code=exited, status=0/SUCCESS) ... systemd: Se pornește serverul TightVNC pe Ubuntu 16.04... systemd: pam_unix(login:session ): sesiune deschisă pentru utilizator terminată de (uid=0) systemd: pam_unix(login:session): sesiune deschisă pentru utilizator terminată de (uid=0) systemd: Serverul TightVNC pornit pe Ubuntu 16.04.

Concluzie

Acum aveți un server VNC instalat și configurat pe serverul Ubuntu 16.04. Vă puteți gestiona fișierele, software-ul și setările folosind o interfață grafică simplă și familiară.

Problema distribuției de software este întotdeauna relevantă. Acum se referă la TightVNC. Puteți atașa pur și simplu un pachet msi la politică. Dar setările vor trebui făcute separat: fie manual, fie într-un fișier batch.

Pe scurt - mai jos.

Creăm un fișier body cu următorul conținut:

utilizare netă O:\\%1\C$

copiați vnc.msi O:\ /y

copiați vnc.reg O:\ /y

psexec \\%1 msiexec /i C:\vnc.msi /quiet /norestart

psexec \\%1 regedit -s C:\vnc.reg

net use O: /delete /y

O:- Nume unitate de rețea;

%1 - Nume computer la distanță(poate fi furnizat ca parametru la apelarea unui fișier batch din linia de comandă, sau înlocuit direct în fișierul batch cu numele dorit);

vnc.msi - fișier de instalare TightVNC, ar trebui să fie în același folder cu fișierul batch, testat pe versiunea TightVNC 2.6.4 pe 32 de biți;

vnc.reg- ramura de registry HKEY_LOCAL_MACHINE\SOFTWARE\TightVNC, exportată anterior într-un fișier de pe o mașină pe care TightVNC este deja instalat și configurat (ramura conține parametri precum parola de conectare, fișierul trebuie să fie în același folder cu fișierul batch) .

Dacă scriptul de pornire este mai convenabil - vă rugăm! Dacă avem încredere doar în noi, faceți-o manual prin psexec.

P.S. Fișierele reg pentru Windows 7 și Windows XP sunt diferite.

P.S.2. Driverul de afișare DFMirage trebuie, de asemenea, instalat, dar acest lucru trebuie tratat separat. Fără el, serverul VNC poate încetini semnificativ.