VNC:n asetukset. VNC-palvelin tai etätyöpöytä Ubuntussa

  • Opetusohjelma

Tämä on opas noVNC:n määrittämiseen Windows-tietokoneiden etäkäyttöä varten.

Miksi noVNC?

- Windowsissa on "alkuperäinen" työkalu etäkäyttöön - Etätyöpöytäyhteys. Mutta se ei ole saatavilla kaikissa Windows-versioissa - se ei esimerkiksi ole Home-versiossa.
- On myös monia VNC-palvelimia ja asiakkaita kaikille Windows-versioille. Mutta käyttääksesi niitä, sinun on asennettava VNC-asiakas. Ja joskus on mahdotonta laittaa mitään (oikeuksien rajoitus) tai se ei ole toivottavaa, jotta ei jää jälkiä jonkun muun tietokoneeseen.
- Mukana on myös Chrome Remote Desktop, joka asiakaspuolella tarvitsee vain laajennuksen selaimeen. Mutta minulla oli tapaus, kun organisaatio esti Chroma-protokollan (kaikki estettiin siellä), ja noVNC käyttää tavallista HTTP:tä ja siksi toimi.

Sikäli kuin tiedän, noVNC on ainoa työkalu, jolla voit muodostaa yhteyden etätietokoneeseen asentamatta mitään asiakasta - vain selainta käytetään.
On myös SPICE, mutta en ole löytänyt Windows-palvelinta sille.

Tämän opetusohjelman tuloksena voimme yksinkertaisesti avata linkin selaimessa, syöttää salasanan ja käyttää etäjärjestelmää.

Edellytyksenä on portin edelleenohjaus tai etätietokoneen valkoinen IP. Voit myös käyttää VNC-toistinta. Mutta se on jo tämän artikkelin ulkopuolella.

Yleinen kaava

Ensin asennamme tavallisen VNC-palvelimen porttiin 5900.

Sitten laitamme noVNC:n ja WebSockifyn porttiin 5901.

Tavoitteena on saada jotain tällaista:


Nyt suoritamme komentokehotteen järjestelmänvalvojan oikeuksilla:


Käynnistä WebSockify:

C: \> cd c: \ noVNC \ websockify c: \ noVNC \ websockify> websockify.exe 5901 127.0.0.1:5900 --web c: \ noVNC \ noVNC-master VAROITUS: ei "resurssi"-moduulia, WebSoconket-tukea ei ole käytössä palvelinasetukset: - Kuuntele: 5901 - Flash-suojauskäytäntöpalvelin - Web-palvelin. Web-juuri: c: \ noVNC \ noVNC-master - Ei SSL-/TLS-tukea (ei sertifikaattitiedostoa) - välityspalvelin: 5901 - 127.0.0.1:5900
Ensimmäinen yllä oleva parametri on portti, jota noVNC kuuntelee: 5901 ... Tämä portti on asetettava asiakkaiden käyttöön.

Toinen parametri on IP ja portti, jossa VNC-palvelin sijaitsee: 127.0.0.1:5900

Kolmas parametri --verkko käskee noVNC:tä palvelemaan hakemiston sisältöä c: \ noVNC \ noVNC-master HTTP:n (s) kautta. Oletuksena noVNC lähettää vain VNC-verkkoliitäntöjä, mutta tämä parametri mahdollistaa HTTP-palvelimen käytön samassa portissa.

Hakemistossa c: \ noVNC \ noVNC-master nimeä tiedosto uudelleen vnc.html v index.html palvelemaan oletuksena.

noVNC-asiakkaan pitäisi nyt olla saatavilla portissa 5901:


Yritä myös avata noVNC-sivu toisesta tietokoneesta/älypuhelimesta varmistaaksesi, että se on käytettävissä ulkopuolelta. Jos ei, tarkista:

Että Windowsin palomuurisi ei estä ulkoisia yhteyksiä tähän porttiin,
- että reitittimesi uudelleenohjaa pyynnöt tähän porttiin oikein oikeaan tietokoneeseen; tarvittaessa google "port forwarding".

Yhdistämme (Yhdistä), annamme VNC-salasanan ja näemme etätietokoneen työpöydän!

Jos jokin meni pieleen, virheiden pitäisi näkyä konsolissamme.

Voit pysäyttää noVNC-palvelimen painamalla konsolissa Ctrl-C. Yllä oleva konfiguraatio toimii HTTP:n (ja WS:n) yli.

SSL:n lisääminen itse allekirjoitetulla varmenteella

SSL:n lisääminen on valinnaista. Voit luoda itse allekirjoitetun varmenteen seuraavasti:

Openssl req -uusi -x509 -päivää 365 -solmut -out self.pem -keyout self.pem
Windowsissa openssl voidaan ottaa.

Tuloksena saamme self.pem-tiedoston, joka on osoitettava noVNC:tä käynnistettäessä:

C: \ noVNC \ websockify> websockify.exe 5901 127.0.0.1:5900 --web c: \ noVNC \ noVNC-master --cert = c: \ noVNC \ self.pem
Nyt HTTPS ja WSS (WebSocket Secure) toimivat. WSS:lle sinun on määritettävä Salaa asetuksissa. Mielenkiintoista on, että noVNC käyttää samaa porttia HTTP:lle ja HTTPS:lle - se osaa erottaa pyynnöt ja vastata oikein.

Koska varmenne on itse allekirjoitettu, selaimen on hyväksyttävä tämä varmenne.

Salataan

Minulla ei ole ohjeita järjestelmän konfiguroimiseksi niin, että Let's Encrypt luo automaattisesti varmenteen erityisesti järjestelmäämme varten. Tämä vaatisi noVNC:n olevan käynnissä portissa 80, mikä on varmasti mahdollista, mutta voi olla hankalaa, ja löytää tapa integroida certbot, jotta nämä tiedostot julkaistaan ​​oikeassa hakemistossa. Mielestäni se on mahdollista, mutta en tehnyt. Jos lopetat, jaa kommentteihin.

Minun tapauksessani minulla on jo kotipalvelin NGINX- ja DDNS-nimellä, joka on määritetty vastaanottamaan automaattisesti sertifikaatti Lets Encryptiltä.

Voit ajaa jotain vastaavaa itsellesi. siellä on ohjeet Let's Encryptin määrittämiseen Linuxille ja Windowsille.

Siksi varten noVNC Käytän vain olemassa olevia pem- tiedostot luotu nginx.

Luodaan "s Encrypt" seuraavat tiedostot:

Cert.pem: Verkkotunnuksesi "s certificate chain.pem: The Let" s Salaa ketjusertifikaatti fullchain.pem: cert.pem ja chain.pem yhdistetty privkey.pem: Varmenteesi yksityinen avain
Ubuntusta löydät ne seuraavaa polkua pitkin: / etc / letsencrypt / live / your_domain_name

Tarve kopioida (yhdistää) fullchain.pem ja privkey.pem yhdeksi tiedostoksi, esimerkiksi kutsutaan sitä encrypt.pem, ja käytämme tätä tiedostoa noVNC.

Tietysti tämä toimii vain, jos nginx palvelin ja noVNC- yhdellä verkkotunnuksella. Portit voivat olla erilaisia.

Eikä saa unohtaa, että varmenteet ovat voimassa vain muutaman kuukauden, minkä jälkeen päivitetyt tiedostot on kopioitava.

Lisää noVNC Windows-palveluksi

Lataa zip-arkisto ja pura tiedostot sieltä niin, että ne ovat samassa kansiossa tiedoston kanssa websockify.exe, eli meidän tapauksessamme sisään c: \ noVNC \ websockify.

Käynnistettäessä palvelu käyttää tiedoston parametreja noVNCConfig.ini... Tässä esimerkki asetuksistani:

5901 127.0.0.1:5900 --web C: \ noVNC \ noVNC-master -- cert = c: \ noVNC \ encrypt.pem
Luo uusi palvelu konsoliin, joka on käynnissä järjestelmänvalvojan oikeuksilla:

Sc create "noVNC Websocket Server" binPath = "c: \ noVNC \ websockify \ noVNC Websocket Service.exe" DisplayName = "noVNC Websocket Server"
Jos sinun on poistettava palvelu, toimi näin:

Sc poistaa "noVNC Websocket Server"
Avaa palvelut (Ohjauspaneeli → Hallintatyökalut → Palvelut) ja käynnistä noVNC Websocket Server. Täällä voit myös määrittää, että palvelu käynnistyy aina Windowsin kanssa:

Tunnetut ongelmat

Näppäimistöasettelu

Huomasin, että venäläinen näppäimistöasettelu toimii melko epätavallisella tavalla:
Jos asiakas on valinnut venäjän, näppäinpainalluksia ei lähetetä etätietokoneeseen ollenkaan Etätyöpöytä Lisää tunnisteita |

VNC (Virtual Network Computing) on ​​etäkäyttöjärjestelmä, jonka avulla voit käyttää näppäimistöä ja hiirtä vuorovaikutuksessa etäpalvelimen työpöydän graafisen käyttöliittymän kanssa. Sen avulla voit hallita etäpalvelimen tiedostoja, ohjelmistoja ja asetuksia ilman komentoriviä.

Tämä opetusohjelma opastaa sinua asentamaan VNC:n Ubuntu 16.04 Virtual Dedicated Serveriin ja luomaan suojatun yhteyden SSH-tunnelin avulla. VNC-palvelin käyttää TightVNC:tä, nopeaa ja kevyttä kauko-ohjainpakettia, joka toimii myös hitailla Internet-yhteyksillä.

Vaatimukset

  • Konfiguroitu Ubuntu 16.04 -palvelin (katso).
  • Ei-root-käyttäjä, jolla on sudo-käyttöoikeus.
  • Paikallinen tietokone, jossa on esiasennettu VNC-asiakas, joka tukee VNC-yhteyksiä SSH-tunnelin kautta. Windows-käyttäjät voivat asentaa TightVNC:n, RealVNC:n tai UltraVNC:n. Mac OS X -käyttäjät voivat käyttää sisäänrakennettua Screen Sharing -pakettia tai monialustaisia ​​sovelluksia (kuten RealVNC). Linux-käyttäjät voivat valita vinagre, krdc, RealVNC, TightVNC jne.

Vaihe 1 - Työpöytäympäristön ja VNC-palvelimen asentaminen

Oletusarvoisesti Ubuntu 16.04 -palvelimissa ei ole esiasennettua graafista työpöytäympäristöä ja VNC-palvelinta. Siksi sinun on ensin asennettava nämä komponentit. Tämä opetusohjelma käyttää Xfce- ja TightVNC-paketteja, jotka ovat saatavilla virallisessa Ubuntu-arkistossa.

Asenna määritetyt paketit palvelimelle kirjoittamalla:

sudo apt asentaa xfce4 xfce4-goodies tightvncserver

Käytä vncserver-komentoa suorittaaksesi VNC-palvelimen alkuasetukset asennuksen jälkeen ja valitse vahva salasana.

Komento kehottaa sinua valitsemaan ja vahvistamaan salasanan sekä salasanan katselua varten (valinnainen). Käyttäjät, jotka käyttävät VNC:tä selaussalasanalla, eivät voi ohjata VNC:tä hiirellä tai näppäimistöllä. Tämän salasanan avulla voit jakaa VNC:n muiden käyttäjien kanssa tarvittaessa.

vncserver-komento suorittaa VNC:n alkuasennuksen ja luo asetustiedostot.

Vaihe 2 - VNC-palvelimen konfigurointi

Ensin sinun on määritettävä komennot, jotka VNC-palvelin suorittaa käynnistyksen yhteydessä. Näiden komentojen tulee sijaita xstartup-tiedostossa .vnc-hakemistossa, joka on tallennettu nykyisen käyttäjän kotihakemistoon. Käynnistysskripti on luotu vncserver-komennolla, mutta sitä on muokattava, jotta se on vuorovaikutuksessa Xfcen kanssa.

Kun VNC käynnistyy ensimmäisen kerran, se käyttää porttia 5901. VNC nimeää tämän portin: 1. VNC voi käynnistää muita esiintymiä eri porteissa, joiden nimi on: 2,: 3 jne.

Jos haluat muuttaa VNC-palvelimen asetuksia, sinun on pysäytettävä ilmentymä portilla 5901.

vncserver -kill: 1

Komento palauttaa seuraavan viestin (PID on eri):

Killing Xtightvnc -prosessin tunnus 17648

Varmuuskopioi xstartup-tiedosto:

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

Luo sitten uusi xstartup-tiedosto:

nano ~ / .vnc / xstartup

Liitä siihen seuraavat komennot, jotka suoritetaan automaattisesti, kun VNC-palvelin käynnistyy. Tallenna ja sulje tiedosto.

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

Ensimmäisellä komennolla xrdb $ HOME / .Xresources VNC-palvelimen graafinen käyttöliittymä lukee .Xresources-tiedoston. .Xresources-tiedostossa käyttäjä voi tehdä muutoksia joihinkin graafisen työpöydän asetuksiin (muokata päätevärejä, kohdistinten teemoja, fontteja). Toinen komento käynnistää yksinkertaisesti Xfcen, joka sisältää kaikki palvelimen hallintaan tarvittavat grafiikkaohjelmistot.

Nyt sinun on siirrettävä oikeudet tiedostoon:

sudo chmod + x ~ / .vnc / xstartup

Käynnistä VNC uudelleen:

Käynnistyksen aikana palvelin palauttaa:

Uusi "X"-työpöytä on sinun_palvelimesi_nimi.com:1
Käynnistetään sovellukset, jotka on määritetty kohdassa /home/8host/.vnc/xstartup
Lokitiedosto on /home/8host/.vnc/liniverse.com:1.log

Vaihe 3 - VNC-työpöydän testaus

Nyt sinun on varmistettava, että VNC-palvelin on määritetty oikein.

Luo SSH-yhteys paikallisella koneellasi ja ohjaa VNC-palvelimen paikalliseen isäntään. Voit tehdä tämän käyttämällä Linux- tai OS X -päätettä.

ssh -L 5901: 127.0.0.1: 5901 -N -f -l käyttäjätunnus palvelimen_ip_osoite

Huomautus: Korvaa käyttäjä ja palvelimen_ip_osoite käyttäjänimellä, jossa on sudo-käyttöoikeus ja oma IP-osoite.

Jos käytät graafista SSH-asiakasta (kuten PuTTY), käytä palvelimen_ip_osoitetta yhteyden IP-osoitteena ja määritä sitten localhost: 5901 SSH-tunnelin asetuksissa.

Voit nyt käyttää VNC-asiakasta muodostaaksesi yhteyden palvelimeen. Tätä varten sinun on oltava todennettu. Syötä kohdassa 1 asetettu salasana.

Tämä tuo esiin standardin Xfce-työpöydän.

Pääset käsiksi kotihakemiston tiedostoihin tiedostonhallinnan tai komentorivin avulla.

Vaihe 4 - VNC-palvelutiedoston luominen

Nyt meidän on määritettävä VNC-palvelin järjestelmäpalveluksi.

Luo uusi tiedosto / etc / systemd / system / [sähköposti suojattu]:

sudo nano / etc / systemd / system / [sähköposti suojattu]

Kopioi ja liitä siihen seuraava koodi:

/ etc / systemd / system / [sähköposti suojattu]
Kuvaus = Käynnistä TightVNC-palvelin käynnistyksen yhteydessä
After = syslog.target network.target
Tyyppi = haarukka
Käyttäjä = 8 isäntä
PAMName = kirjautuminen
PIDFile = / koti / 8isäntä / .vnc /% H:% i.pid
ExecStartPre = - / usr / bin / vncserver -kill:% i> / dev / null 2> & 1
ExecStart = / usr / bin / vncserver -syvyys 24 -geometria 1280x800:% i
ExecStop = / usr / bin / vncserver -kill:% i
WantedBy = monen käyttäjän.kohde

Huomautus: Anna käyttäjätunnuksesi 8host sijaan.

Tallenna ja sulje tiedosto.

Käynnistä demoni uudelleen:

sudo systemctl daemon-reload

Sisällytä uusi tiedosto:

sudo systemctl enable [sähköposti suojattu]

Pysäytä VNC-palvelimen nykyinen ilmentymä, jos se on edelleen käynnissä:

vncserver -kill: 1

Yritä nyt käynnistää se kuten mikä tahansa muu järjestelmäpalvelu:

sudo systemctl start [sähköposti suojattu]

Varmistaaksesi, että palvelin on käynnissä, tarkista sen tila:

sudo systemctl tila [sähköposti suojattu]

Jos palvelin on käynnissä, komento palauttaa:

[sähköposti suojattu]- TightVNC-palvelin Ubuntu 16.04:ssä
Ladattu: ladattu (/ etc / systemd / system / [sähköposti suojattu]; käytössä; toimittajan esiasetus: käytössä)
Aktiivinen: aktiivinen (juoksu) maanantaista 2016-04-25 03:21:34 EDT; 6s sitten
Prosessi: 2924 ExecStop = / usr / bin / vncserver -kill:% i (koodi = poistui, tila = 0 / ONNOSTUS)
...
systemd: TightVNC-palvelimen käynnistäminen Ubuntu 16.04:ssä ...

systemd: pam_unix (kirjautuminen: istunto): istunto avattiin käyttäjälle finid by (uid = 0)
systemd: Käynnistettiin TightVNC-palvelin Ubuntu 16.04:ssä.

Johtopäätös

Suojattu VNC-palvelin on nyt asennettu Ubuntu 16.04 -palvelimeen. Sitä voidaan käyttää etäpalvelimen tiedostojen, ohjelmien ja asetusten hallintaan.

Tunnisteet:,

VNC (lyhenne sanoista Virtual Network Computing) on ​​järjestelmä, jonka avulla voit käyttää näppäimistöä ja hiirtä vuorovaikutuksessa etäpalvelimen graafisen käyttöliittymän kanssa. Tämän järjestelmän avulla käyttäjät, jotka tuntevat olonsa epämukavaksi komentorivityökalujen kanssa, voivat hallita tiedostoja, ohjelmistoja ja asetuksia etäpalvelimella.

Tässä artikkelissa kuvailemme VNC:n asennusprosessia Ubuntu 16.04 -palvelimelle ja opimme myös luomaan suojatun yhteyden tähän palvelimeen SSH-tunnelin avulla. VNC-palvelimena käytämme TightVNC:tä - nopeaa ja kevyttä etäkäyttöön tarkoitettua pakettia. Tämän tuotteen ansiosta VNC-yhteytemme toimii luotettavasti myös hitailla Internet-yhteyksillä.

Ennen asennusta

Tämän artikkelin ohjeiden noudattamiseksi tarvitset:

    Droplet, jossa on Ubuntu 16.04, joka on määritetty ohjeiden mukaisesti, mukaan lukien ei-root-käyttäjän luominen sudo-oikeuksilla.

    Paikallinen tietokone, jossa on SSH-tunneliyhteyksiä tukeva VNC-asiakas. Jos käytät Windowsia, voit käyttää TightVNC:tä, RealVNC:tä tai UltraVNC:tä. Mas OS X -käyttäjät voivat käyttää sisäänrakennettua Screen Sharing -apuohjelmaa tai monialustaisia ​​sovelluksia, kuten RealVNC. Linux-käyttäjillä on laaja valikoima valintoja: vinagre, krdc, RealVNC, TightVNC ja paljon muuta.

Vaihe 1 - Työpöytäympäristön ja VNC-palvelimen asentaminen

Oletuksena Ubuntu 16.04 dropleteissa ei ole graafista työpöytäympäristöä eikä VNC-palvelinta asennettuna, joten aloitamme asentamalla ne. Asennamme uusimmat Xfce-työpöytäympäristöpaketit ja TightVNC-paketin Ubuntun arkistoista.

Asenna Xfce- ja TightVNC-paketit palvelimellesi.

  • sudo apt asentaa xfce4 xfce4-goodies tightvncserver

Viimeistele VNC-palvelimen alkumääritykset sen asennuksen jälkeen asettamalla vahva salasana vncserver-komennolla.

  • vncserver

Sinua pyydetään syöttämään ja vahvistamaan salasana sekä antamaan salasana katselua varten. Selaussalasanaa käyttävät käyttäjät eivät voi tehdä mitään VNC-koneen näppäimistöllä ja hiirellä. Tämä voi olla hyödyllistä esitelläksesi jotain VNC-palvelimellasi muille ihmisille, sen ei tarvitse olla.

Vncserverin suorittaminen viimeistelee VNC-asennukset luomalla oletusmääritystiedostoja sekä luomalla tietoja yhteyden muodostamiseksi palvelimeemme. Kun nämä paketit on asennettu, voimme aloittaa palvelimemme konfiguroinnin.

Vaihe 2 - VNC-palvelimen määrittäminen

Määritetään ensin komennot, jotka VNC-palvelimen tulee suorittaa käynnistyksen yhteydessä. Nämä komennot määritetään xstartup-määritystiedostossa kotihakemistosi .vnc-alihakemistossa. Käynnistysskripti luotiin edellisen vaiheen vncserver-komennon aikana, nyt muutamme joitain komentoja toimimaan Xfcen kanssa.

Kun VNC käynnistyy ensimmäisen kerran, se käynnistää oletuspalvelimen ilmentymän portissa 5901. Tätä porttia kutsutaan näyttöportiksi, ja VNC:ssä se on merkitty seuraavasti: 1. VNC voi ajaa monia ilmentymiä muissa porteissa, esimerkiksi: 2,: 3 ja niin edelleen. Kun työskentelet VNC-palvelimien kanssa, muista, että näyttöportti numeroitu: X toimii portissa 5900 + X.

Koska aiomme tehdä muutoksia VNC-palvelimen kokoonpanoon, meidän on ensin pysäytettävä palvelinilmentymä, joka toimii portissa 5901.

  • vncserver -kill: 1

Tulosteen pitäisi näyttää samanlaiselta kuin prosessitunnus:

Killing Xtightvnc -prosessin tunnus 17648

Varmuuskopioi alkuperäinen tiedosto ennen kuin teet muutoksia uuteen xstartup-tiedostoon.

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

Luodaan nyt uusi xstartup-tiedosto nanolla tai toisella tekstieditorilla.

  • nano ~ / .vnc / xstartup

Liitä nämä komennot tiedostoon suorittaaksesi ne automaattisesti, kun VNC-palvelin käynnistyy tai käynnistyy uudelleen, ja tallenna ja sulje tiedosto sitten.

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

Ensimmäinen komento xrdb $ HOME / .Xresources -tiedostossa käskee VNC GUI -kehyksen käyttämään mukautettua .Xresources-tiedostoa. .Xresources-tiedosto tallentaa tietyt käyttäjän työpöytäasetukset, kuten päätteen värit, kohdistimen teeman ja fontin renderöinnin. Toinen komento käskee palvelimen käynnistämään Xfce:n, jonka avulla voit hallita palvelintasi mukavasti.

Jotta VNC-palvelin voi käyttää näitä asetuksia, tehdään tiedostosta suoritettava.

  • sudo chmod + x ~ / .vnc / xstartup

Nyt käynnistetään VNC-palvelin uudelleen.

  • vncserver

Palvelimen pitäisi käynnistyä uudelleen ja tulostaa jotain konsolin kaltaista:

Uusi "X"-työpöytä on sinun_palvelimesi_nimi.com:1 /home/sammy/.vnc/xstartup-lokitiedostossa määritettyjen sovellusten käynnistys on /home/sammy/.vnc/liniverse.com:1.log

Vaihe 3 - VNC-työpöydän testaus

Tarkastetaan nyt yhteys VNC-palvelimeesi.

Luodaan ensin SSH-yhteys paikalliseen koneellesi suojatun yhteyden muodostamiseksi VNC:hen. Voit tehdä tämän käyttämällä päätettä Linuxissa tai OS X:ssä seuraavalla komennolla. Muista korvata käyttäjänimi ja palvelimen_ip_osoite sudo-käyttäjänimelläsi ja palvelimesi IP-osoitteella.

  • ssh -L 5901: 127.0.0.1: 5901 -N -f -l käyttäjätunnus palvelimen_ip_osoite

Jos käytät graafista SSH-asiakasta, kuten PuTTY:tä, aseta server_ip_address yhteyden IP-osoitteeksi ja aseta myös localhost: 5901 edelleenlähetysportiksi asiakkaasi SSH-yhteysasetuksissa.

Kun yhteys on muodostettu, näet oletusarvoisen Xfce-työpöydän. Sen pitäisi näyttää samalta kuin tämä:

Voit käyttää kotihakemistosi tiedostoja tiedostonhallinnan avulla tai komentoriviltä:

Vaihe 4 - Luo VNC-palvelutiedosto

Luodaan ensin yksikkötiedosto / etc / systemd / system / [sähköposti suojattu] tekstieditorillasi:

Kopioi ja liitä siihen seuraava sisältö. Varmista, että muutat kentän arvoa Käyttäjä ja käyttäjätunnus kentässä PIDFILE arvoihisi.

/ etc / systemd / system / [sähköposti suojattu]

Kuvaus = Käynnistä TightVNC-palvelin käynnistettäessä After = syslog.target network.target Type = forking User = sammy PAMName = kirjautuminen 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 = usean käyttäjän. kohde

  • sudo systemctl daemon-reload

Aktivoimme yksikkötiedoston.

Pysäytä nykyinen VNC-palvelinilmentymä, jos se on käynnissä.

  • vncserver -kill: 1

Varmista, että palvelu on käynnissä tällä komennolla:

Jos käynnistys sujui hyvin, tulosteen pitäisi näyttää tältä:

Nimi johtopäätös

[sähköposti suojattu]- TightVNC-palvelin Ubuntu 16.04:ssä Ladattu: ladattu (/ etc / systemd / system / [sähköposti suojattu]; käytössä; toimittajan esiasetus: käytössä) Aktiivinen: aktiivinen (käynnissä) maanantaista 2016-04-25 03:21:34 EDT; 6s sitten Prosessi: 2924 ExecStop = / usr / bin / vncserver -kill:% i (koodi = poistui, tila = 0 / ONNOSTUS) ... systemd: TightVNC-palvelimen käynnistäminen Ubuntu 16.04:ssä ... systemd: pam_unix (kirjautuminen: istunto ): istunto avattu käyttäjälle finid by (uid = 0) systemd: pam_unix (sisäänkirjautuminen: istunto): istunto avattu käyttäjälle finid by (uid = 0) systemd: TightVNC-palvelin käynnistetty Ubuntu 16.04:ssä.

Johtopäätös

Sinulla on nyt VNC-palvelin asennettuna ja määritettynä Ubuntu 16.04 -palvelimellesi. Voit hallita tiedostojasi, ohjelmistojasi ja asetuksiasi yksinkertaisella ja tutulla graafisella käyttöliittymällä.

Asennusta varten tarvitsemme palvelimen tai etätietokoneen, paikallisen tietokoneen VNC-asiakkaalla, joka tukee yhteyden muodostamista SSH-tunnelin kautta. Windows-käyttäjille suosittelemme RealVNC:tä, UltraVNC:tä tai TightVNC:tä. Mac OS:ssä voit käyttää tavallista Screen Sharing -apuohjelmaa tai asentaa muita VNC-sovelluksia sovelluskaupasta. Linux-käyttäjillä on laajempi valikoima ohjelmia, kuten krdc, vinagre, TightVNC, RealVNC, Remmina jne.

Työpöytäympäristön ja VNC-palvelimen asentaminen

Oletusarvoisesti Ubuntu 16.04 -kuvissa ei ole graafista työpöytää ja VNC-palvelinta, jotka on asennettava erikseen. Asenna ensin uusimmat Xfce-työpöytäympäristöpaketit ja TightVNC-paketti Ubuntun arkistoista.

Asenna Xfce- ja TightVNC-paketit tilatulle palvelimelle.

$ sudo apt asentaa xfce4 xfce4-goodies tightvncserver

Viimeistele VNC-palvelimen alkumääritykset sen asennuksen jälkeen asettamalla vahva salasana vncserver-komennolla.

$ vncserver

Sinua pyydetään syöttämään ja vahvistamaan salasana sekä antamaan salasana katselua varten. Selaussalasanaa käyttävät käyttäjät eivät voi tehdä mitään VNC-koneen näppäimistöllä ja hiirellä. Tämä voi olla hyödyllistä esitelläksesi jotain VNC-palvelimellasi muille ihmisille.

Esitys vncserver viimeistelee VNC-asennukset luomalla oletusmääritystiedostoja sekä luomalla tietoja yhteyden muodostamiseksi palvelimeemme. Kun olet asentanut nämä paketit, voit määrittää palvelimen.

VNC-palvelimen asennus

Määritetään ensin komennot, jotka VNC-palvelimen tulee suorittaa käynnistyksen yhteydessä. Nämä komennot asetetaan asetustiedostossa xstartup alihakemistossa .vnc kotihakemistoosi. Käynnistysskripti luotiin komentoa suoritettaessa vncserver edellisessä vaiheessa muutamme nyt joitain komentoja toimimaan Xfcen kanssa.

Kun VNC käynnistyy ensimmäisen kerran, se käynnistää oletuspalvelimen ilmentymän portissa 5901. Tätä porttia kutsutaan näyttöportiksi, ja VNC:ssä se on merkitty seuraavasti: 1. VNC voi ajaa monia ilmentymiä muissa porteissa, esimerkiksi: 2,: 3 ja niin edelleen. Kun työskentelet VNC-palvelimien kanssa, muista, että näyttöportti numeroitu: X toimii portissa 5900 X.

Koska aiomme tehdä muutoksia VNC-palvelimen kokoonpanoon, meidän on ensin pysäytettävä palvelinilmentymä, joka toimii portissa 5901.

$ vncserver -kill: 1

Tulosteen pitäisi näyttää samanlaiselta kuin prosessitunnus:

Lähtö
Killing Xtightvnc -prosessin tunnus 17648

Varmuuskopioi alkuperäinen tiedosto ennen kuin teet muutoksia uuteen xstartup-tiedostoon.

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

Luodaan nyt uusi xstartup-tiedosto nanolla tai toisella tekstieditorilla.

$ nano ~ / .vnc / xstartup

Liitä nämä komennot tiedostoon suorittaaksesi ne automaattisesti, kun VNC-palvelin käynnistyy tai käynnistyy uudelleen, ja tallenna ja sulje tiedosto sitten.

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

Tiedoston ensimmäinen komento xrdb $ HOME / .Xresources käskee VNC GUI -kehyksen käyttämään mukautettua .Xresources-tiedostoa. Tiedosto .Xresources tallentaa tietyt käyttäjän työpöytäasetukset, kuten päätteen värit, kohdistinteeman, kirjasinten renderöinnin. Toinen komento käskee palvelimen käynnistämään Xfce:n, jonka avulla voit hallita palvelintasi mukavasti.

Jotta VNC-palvelin voi käyttää näitä asetuksia, tehdään tiedostosta suoritettava.

$ sudo chmod x ~ / .vnc / xstartup

Nyt käynnistetään VNC-palvelin uudelleen.

$ vncserver

Palvelimen pitäisi käynnistyä uudelleen ja tulostaa jotain konsolin kaltaista:

Lähtö
Uusi "X"-työpöytä on sinun_palvelimesi_nimi.com:1
Käynnistetään sovellukset, jotka on määritetty kohdassa /home/sammy/.vnc/xstartup
Lokitiedosto on /home/sammy/.vnc/liniverse.com:1.log

Testataan VNC-työpöytää

Luodaan ensin SSH-yhteys paikalliseen koneeseen suojatun yhteyden muodostamiseksi VNC:hen. Voit tehdä tämän käyttämällä päätettä Linuxissa tai OS X:ssä seuraavalla komennolla. Muista vaihtaa käyttäjätunnus ja palvelimen IP-osoite käyttäjänimellesi sudo-oikeuksilla ja palvelimesi IP-osoitteella.

$ ssh -L 5901: 127.0.0.1: 5901 -N -f -l käyttäjätunnus palvelimen_ip_osoite

Jos käytät graafista SSH-asiakasta, kuten PuTTY set palvelimen IP-osoite yhteyden IP-osoitteeksi ja myös aseta paikallinen isäntä: 5901 välitettynä porttina asiakkaasi SSH-yhteysasetuksissa.

Seuraavaksi voit käyttää VNC-asiakasohjelmaa yhteyden muodostamiseen VNC-palvelimeen paikallinen isäntä: 5901 ... Sinua pyydetään todentamaan. Käytä ensimmäisessä vaiheessa määrittämääsi salasanaa.

Kun yhteys on muodostettu, näet oletusarvoisen Xfce-työpöydän. Sen pitäisi näyttää samalta kuin tämä:

Sinulla on nyt täysi pääsy palvelimen hallintaan ja kotihakemistosi tiedostoihin.

Luo VNC-palvelutiedosto

Luodaan ensin yksikkötiedosto / etc / systemd / system / tekstieditorillasi:

$ sudo nano / etc / systemd / system /

Kopioi ja liitä siihen seuraava sisältö. Varmista, että vaihdat Käyttäjä-kentän arvon ja PIDFILE-kentän käyttäjänimen arvoihisi.

$ / etc / systemd / system /

Kuvaus = Käynnistä TightVNC-palvelin käynnistyksen yhteydessä
After = syslog.target network.target


Tyyppi = haarukka
Käyttäjä = sammy
PAMName = kirjautuminen
PIDFile = / koti / sammy / .vnc /% H:% i.pid
ExecStartPre = - / usr / bin / vncserver -kill:% i> / dev / null 2> & 1
ExecStart = / usr / bin / vncserver -syvyys 24 -geometria 1280x800:% i
ExecStop = / usr / bin / vncserver -kill:% i


WantedBy = monen käyttäjän.kohde

$ sudo systemctl daemon-reload

Aktivoimme yksikkötiedoston.

$ sudo systemctl enable

Pysäytä nykyinen VNC-palvelinilmentymä, jos se on käynnissä.

$ sudo systemctl start

Varmista, että palvelu on käynnissä tällä komennolla:

$ sudo systemctl status>

Jos käynnistys sujui hyvin, tulosteen pitäisi näyttää tältä:

Nimi johtopäätös
Tämä sähköpostiosoite on suojattu roskapostiohjelmia vastaan. Tarvitset JavaScriptin päälle nähdäksesi sen.- TightVNC-palvelin Ubuntu 16.04:ssä
Ladattu: ladattu (/ etc / systemd / system /; käytössä; toimittajan esiasetus: käytössä)
Aktiivinen: aktiivinen (juoksu) maanantaista 2016-04-25 03:21:34 EDT; 6s sitten
Prosessi: 2924 ExecStop = / usr / bin / vncserver -kill:% i (koodi = exited, status = 0 / SUCCESS) ... systemd: TightVNC-palvelimen käynnistäminen Ubuntu 16.04:ssä ...
systemd: pam_unix (kirjautuminen: istunto): istunto avattiin käyttäjälle finid by (uid = 0)
systemd: Käynnistettiin TightVNC-palvelin Ubuntu 16.04:ssä.

Valmis! Pystyit asentamaan ja määrittämään VNC-palvelimen Ubuntu 16.04 -palvelimellesi. Tästä eteenpäin voit hallita tiedostojasi, ohjelmistojasi ja asetuksiasi tutun graafisen käyttöliittymän avulla.

Huolimatta siitä, että Raspberry Pi toimii loistavasti näytön tai television kanssa HDMI-kaapelilla, tulee usein tilanteita, jolloin näyttöä ei tarvita ja työpöydän näkeminen etänä toiselta tietokoneelta riittää. Tässä tapauksessa VNC auttaa meitä. Muuten, useimmat tehtävät voidaan ratkaista etänä, kuten ohjelmointi tai käyttöjärjestelmän asennus.
Mitä me tarvitsemme?

Oletetaan, että Raspberry Pi:lle (Debian-jakelun erityinen Linux-versio) on asennettu käyttöjärjestelmä ja etätietokoneeseen on asennettu Windows 7. Tätä varten sinun on asennettava esimerkiksi VNC-asiakas Windowsille. UltraVNC - se on melko kätevä ja ilmainen.
UltraVNC lataussivu

Kun VNC-palvelin on valmis, UltraVNC-asiakasohjelma riittää muodostamaan etäyhteyden Raspberry Pi:hen. Jos kuitenkin aiomme konfiguroida VNC:tä myös etänä, tarvitsemme lisäksi SSH-asiakkaan - ilmaisen PuTTY-ohjelman.
PuTTY-lataussivu

Viimeinen asia, jonka tarvitsemme, on Raspberry Pi:si IP-osoite. Jos sille on määritetty staattinen osoite, se riittää. Jos tiedät kuinka etsiä IP-osoite reitittimestäsi, sekin riittää. Jos osoite ei ole tiedossa eikä sitä voi nähdä, tarvitset ohjelman, joka skannaa IP-osoitteet verkossa. Tätä varten Advanced IP Scanner on varsin sopiva, se skannaa paikallisen verkon ja näyttää luettelon kaikista laitteista, joissa on kunkin IP-osoite. Useimmiten Raspberry Pi:n osoitteen määrittäminen ei ole vaikeaa, sillä luettelossa on nimi "raspberrypi" tai jotain vastaavaa.
Advanced IP Scanner -lataussivu

Reitittimen tapauksessa useimmiten riittää katsoa kytkettyjen laitteiden luetteloa, Raspberry Pi voidaan havaita samalla tavalla kuin edellä on kuvattu. Valitettavasti tämän artikkelin puitteissa ei ole mahdollista kuvata, kuinka tämä tehdään yksityiskohtaisemmin - kaikki reitittimet eroavat hieman toisistaan.

SSH:n käynnistäminen Raspberry Pi:ssä

Aloitetaan siitä, mitä SSH on. Se on ohjelma, jota voidaan käyttää Linux-käyttöjärjestelmässä ja joka mahdollistaa etäkäytön Raspberry Pi:n konsoliin (komentorivi). Sen avulla voit ajaa mitä tahansa ohjelmaa tai suorittaa komennon komentorivillä etänä SSH-asiakkaalla - PuTTY.

Oletuksena SSH-palvelin on poistettu käytöstä Raspbianissa, joten sinun on käynnistettävä se ensin. Tätä varten sinun on yhdistettävä Raspberry Pi näyttöön tai televisioon ja liitettävä siihen USB-näppäimistö. On kaksi tapaa käynnistää SSH-palvelin. Helpoin tapa on käyttää raspi-config-ohjelmaa. Tätä varten sinun on kirjoitettava komento ja valittava kohde " ssh Ota ssh-palvelin käyttöön tai poista se käytöstä»Ehdotellussa valikossa:

Toinen tapa on kirjoittaa komento sudo /etc/init.d/ssh start kuten alla:

Erona on, että ensimmäisessä menetelmässä raspi-config-ohjelman avulla emme vain käynnistä SSH-palvelinta, vaan lisäämme sen myös käyttöjärjestelmän automaattiseen käynnistykseen, mikä ei välttämättä ole kovin hyvä, jos SSH-palvelinta ei tarvita kaikkia. aika. Toisessa tapauksessa suoritamme sen vain seuraavaan uudelleenkäynnistykseen asti.

Lopuksi kuvataan tapa käynnistää SSH-palvelin ilman näyttöä ja näppäimistöä. Tätä varten sinun on poistettava SD-kortti, jossa on asennettu Rasbian, asetettava se kortinlukijaan ja liitettävä Windows-tietokoneeseen.
Raspberry Pi SD -kortissa on pieni osio, joka on alustettu Windowsin ymmärtämään Fat32-järjestelmään. Tämä osio sisältää joitain asetustiedostoja. SD-kortin sisältö näyttää tältä:

Varmistaaksesi, että SSH-palvelin käynnistyy, sinun on nimettävä boot_enable_ssh.rc-tiedosto uudelleen nimellä boot.rc:

Nyt sinun tarvitsee vain asettaa SD-kortti takaisin Raspberry Pi -laitteeseen ja käynnistää se. SSH-palvelin on käynnissä!

Yhdistä SSH:n kautta

Kuten edellä mainittiin, sinun on ensin käynnistettävä VNC-palvelin, jotta voit muodostaa yhteyden Raspberry Pi:hen etäyhteyden kautta VNC:llä. Seuraavassa näytetään, kuinka tämä toimenpide suoritetaan samassa kaukosäätimessä. Tätä varten tarvitset SSH-asiakkaan - PuTTY. PuTTY-ohjelman lataamisen jälkeen sinun tarvitsee vain suorittaa tuloksena oleva tiedosto, asennusta ei tarvita. Tällainen ikkuna avautuu:

Kirjoita Isäntänimi-kenttään IP-osoite, joka löytyy alusta. Paina sitten Avaa-painiketta. Heti kun PuTTY muodostaa yhteyden SSH-palvelimeen, pääteikkuna avautuu ja pyytää kirjautumistietoja (pi-käyttäjän oletussalasana vadelma):

Kun oikeat tunnistetiedot on syötetty, näkyviin tulee komentorivikehote. Mikä tahansa Raspberry Pi -komento voidaan syöttää tähän:

VNC-palvelimen määrittäminen SSH:n kautta

Nyt kun yhteys on muodostettu, sinun on käynnistettävä VNC-palvelin. Jos tämä on ensimmäinen kerta, kun käynnistät palvelimen, sinun on todennäköisesti suoritettava asennus ensin. Raspberry Pi:n oletetaan olevan yhteydessä Internetiin, koska tarvitset sitä VNC-palvelimen asentamiseen. Voit tehdä tämän suorittamalla komennon:
sudo apt-get asenna tightvncserver
Kuten yllä todettiin, PuTTY suorittaa suoraan Raspberry Pi:hen syötetyt komennot, joten yllä oleva komento asentaa VNC-palvelimen tietokoneellesi.
Huomaa, että asennuksen aikana sinua pyydetään asentamaan ohjelma ilman vahvistusta (Asennatko nämä paketit ilman vahvistusta?). Sinun on vastattava "y" tähän kysymykseen.

Kun asennus on valmis, VNC-palvelin on käynnistettävä. Voit tehdä tämän käyttämällä komentoa vncserver: 1 -geometria 1280 × 800 -syvyys 16 -pikselimuoto rgb565

Tämä komento käynnisti VNC-palvelimen! Tässä tapauksessa tämä tarkoittaa, että virtuaalinen X-istunto (Raspberry Pi -työpöydän virtuaalinen esitys) on käynnissä, täsmälleen samalla tavalla kuin startx-komennolla käynnistettäessä monitorin ollessa kytkettynä. Nyt, kun käynnistät VNC-asiakkaan ja muodostat yhteyden, sinut yhdistetään tähän tiettyyn virtuaaliseen työpöytään.

Tämän komennon tärkein osa on parametri :1 ... Se määrittää portin numeron, jolla VNC-prosessi suoritetaan. Portin numero voi olla mikä tahansa, mutta sinun on muistettava se, tarvitset sitä yhdistäessäsi. Toinen tärkeä parametri on virtuaalisen työpöydän resoluutio (tässä tapauksessa koko). Sen voi määrittää kuka tahansa, mutta sinun ei pitäisi määrittää enempää kuin sen tietokoneen todellinen resoluutio, josta etäkäyttö tapahtuu.

Kun käynnistät VNC:n ensimmäisen kerran, palvelin kysyy salasanaa. Tätä salasanaa tarvitaan, kun muodostetaan yhteys etätyöpöytään.

Toinen salasana, jota VNC-palvelin pyytää, on vain katselu -salasana. Jos annat tämän salasanan, kun olet yhteydessä, näet virtuaalisen työpöydän, mutta näppäimistö ja hiiri poistetaan käytöstä.

Yhdistä UltraVNC:hen

VNC-palvelimen käynnistämisen jälkeen viimeinen asia on muodostaa siihen etäyhteys. Käynnistä UtlraVNC, kirjoita IP-osoite, portin numero (1) ja napsauta Yhdistä-painiketta.
Ja nyt - kaikki on valmista!

Tärkeä muistiinpano! Etätyöpöydän kuva voi vaihdella sen mukaan, millä tunnistetiedoilla vncserver käynnistettiin. Kun se käynnistetään tavallisen käyttäjän tunnuksilla, ts. kuten yllä, työpöytä näyttää tavalliselta. Toisaalta, kun vncserver suoritetaan superkäyttäjänä käyttämällä sudo-komentoa, työpöytä näyttää alla olevan kuvan kaltaiselta. Muuten, sama koskee startx-komentoa, kun työskentelet Raspberry Pi:n kanssa suoraan (paikallisesti).