Tässä oppaassa kerromme, miten VNC-etäkäyttö asennetaan ja konfiguroidaan CentOS 7:n viimeisimmässä versiossa ja RHEL 7:n työpöytäpainoksessa tigervnc-server-ohjelman avulla.
VNC (Virtual Network Computing) on palvelinasiakkaan ja palvelimen välinen protokolla, joka sallii käyttäjätunnusten muodostaa etäyhteyden etäyhteyden etäjärjestelmään ja ohjata sitä graafisen käyttöliittymän tarjoamien resurssien avulla.
Toisin kuin muut saatavilla olevat VNC-palvelimet, jotka muodostavat yhteyden suoraan suoritustyöpöydälle, kuten VNC X tai Vino, tigervnc-vncserver käyttää erilaista mekanismia, joka konfiguroi itsenäisen virtuaalisen työpöydän jokaiselle käyttäjälle.
Vedellytykset
- CentOS 7:n asennustapa
- RHEL 7:n asennustapa
Vaihe 1: Asenna ja määritä VNC CentOS 7:ssä
1. Tigervnc-server on ohjelma, joka suorittaa Xvnc-palvelinta ja käynnistää Gnome- tai muun työpöytäympäristön rinnakkaiset istunnot VNC-työpöydällä.
Käynnistettyyn VNC-käyttäjäistuntoon pääsee sama käyttäjä usealta VNC-asiakkaalta. Asenna TigerVNC-palvelin CentOS 7 -käyttöjärjestelmässä avaamalla terminaali-istunto ja antamalla seuraava komento pääkäyttäjän oikeuksin.
$ sudo yum install tigervnc-server
2. Kun olet asentanut ohjelman, kirjaudu sisään sillä käyttäjällä, jonka haluat ajaa VNC-ohjelmaa, ja anna terminaalissa alla oleva komento määrittääksesi salasanan VNC-palvelimelle.
Huomaa, että salasanan on oltava vähintään kuuden merkin pituinen.
$ su - your_user # If you want to configure VNC server to run under this user directly from CLI without switching users from GUI$ vncpasswd
3. Lisää seuraavaksi VNC-palvelun konfigurointitiedosto käyttäjällesi systemd-hakemistopuuhun sijoitetun daemon-konfigurointitiedoston kautta. Kopioidaksesi VNC-mallitiedoston sinun on suoritettava seuraava komento pääkäyttäjän oikeuksin.
Jos käyttäjälläsi ei ole sudo-oikeuksia, vaihda joko suoraan pääkäyttäjätilille tai suorita komento pääkäyttäjän oikeuksin varustetulta tililtä.
# cp /lib/systemd/system/[email protected] /etc/systemd/system/vncserver@:1.service
4. Valitse komento. Muokkaa seuraavassa vaiheessa kopioitua VNC-mallin konfigurointitiedostoa hakemistosta /etc/systemd/system/ ja korvaa -arvot vastaamaan käyttäjääsi alla olevan esimerkin mukaisesti.
Arvo 1 @-merkin jälkeen edustaa näyttönumeroa (portti 5900+näyttö). Lisäksi jokaisen käynnistetyn VNC-palvelimen kohdalla porttia 5900 kasvatetaan 1:llä.
# vi /etc/systemd/system/vncserver@\:1.service
Lisää seuraavat rivit tiedostoon vncserver@:1.service.
Description=Remote desktop service (VNC)After=syslog.target network.targetType=forkingExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'ExecStart=/sbin/runuser -l my_user -c "/usr/bin/vncserver %i -geometry 1280x1024"PIDFile=/home/my_user/.vnc/%H%i.pidExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'WantedBy=multi-user.target
5. Kun olet tehnyt oikeat muutokset VNC-palvelutiedostoon, lataa uudelleen systemd-järjestelmän alustamisohjelma poimiaksesi uuden vnc-konfiguraatiotiedoston ja käynnistäksesi TigerVNC-palvelimen.
Tarkista myös VNC-palvelun tila ja ota VNC-daemon käyttöön koko järjestelmän laajuisesti antamalla alla olevat komennot.
# systemctl daemon-reload# systemctl start vncserver@:1# systemctl status vncserver@:1# systemctl enable vncserver@:1
6. Voit listata VNC-palvelimen omistamat avoimet portit kuuntelutilassa suorittamalla ss-komennon, jota käytetään CentOS 7:ssä verkkopistorasioiden näyttämiseen. Koska olet käynnistänyt vain yhden VNC-palvelimen instanssin, ensimmäinen avattu portti on 5901/TCP.
Jälleen ss-komento on suoritettava pääkäyttäjän oikeuksilla. Jos käynnistät rinnakkain muita VNC-instansseja eri käyttäjille, portin arvo on 5902 toiselle, 5903 kolmannelle ja niin edelleen. Portteja 6000+ käytetään, jotta X-sovellukset voivat muodostaa yhteyden VNC-palvelimeen.
# ss -tulpn| grep vnc
7. Jotta ulkoiset VNC-asiakkaat voivat muodostaa yhteyden CentOS:n VNC-palvelimeen, sinun on varmistettava, että oikeat avoimet VNC-portit päästetään palomuurin läpi.
Jos käynnistetään vain yksi VNC-palvelimen instanssi, sinun on avattava vain ensimmäinen varattu VNC-portti: 5901/TCP antamalla alla olevat komennot palomuurin konfiguraation soveltamiseksi suoritusaikana.
# firewall-cmd --add-port=5901/tcp# firewall-cmd --add-port=5901/tcp --permanent
Vaihe 2: Yhteyden muodostaminen CentOS-työpöydälle VNC-asiakkaan kautta
8. Koska kyseessä on alustariippumaton protokolla, etäkäyttöiset graafisen käyttöliittymän VNC-yhteydet voidaan toteuttaa lähes mistä tahansa käyttöjärjestelmästä, jossa on graafinen käyttöliittymä ja erikoistunut VNC-asiakasohjelma.
Suosittu VNC-asiakasohjelma, jota käytetään Microsoft-pohjaisissa käyttöjärjestelmissä ja joka on täysin yhteensopiva Linuxin TigerVNC-palvelimen kanssa, on RealVNC VNC Viewer.
Voidaksesi muodostaa etäyhteyden CentOS-työpöydälle Microsoft-käyttöjärjestelmästä VNC-protokollan kautta, avaa VNC Viewer -ohjelma, lisää CentOS VNC-palvelimen IP-osoite ja porttinumero ja paina näppäintä.
VNC-yhteyden muodostamisen jälkeen näytössäsi pitäisi näkyä varoitus, jonka mukaan yhteyttä ei ole salattu, kuten alla olevissa kuvakaappauksissa näkyy.
9. Ota yhteys VNC Viewer Clientiin. Jotta voit ohittaa varoituksen, paina Jatka-painiketta, lisää VNC-palvelimen salasana-asetukset kohdassa 2, ja sinun pitäisi olla etäyhteydessä CentOS-työpöydälle käyttäjällä, joka on määritetty käyttämään VNC-palvelininstanssia.
10. Jos näytölle ilmestyy uusi Authentication-viesti eikä käyttäjälläsi ole pääkäyttäjän oikeuksia, paina vain Cancel-painiketta jatkaaksesi CentOS Desktopiin, kuten alla olevassa kuvakaappauksessa näkyy.
Ole tietoinen siitä, että palvelimen ja asiakkaan välinen vakiintunut VNC-viestintä ja kaikki vaihdetut tiedot (salasanaa lukuunottamatta) kulkevat salaamattoman kanavan kautta. Jotta VPN-tiedonsiirto voidaan salata ja suojata, sinun on ensin perustettava suojattu SSH-tunneli ja suoritettava kaikki myöhempi VPN-liikenne SSH-tunnelin kautta.
11. Jotta voit muodostaa etäyhteyden CentOS-työpöytään VNC-protokollan kautta toisesta CentOS-työpöydästä, varmista ensin, että vinagre-paketti on asennettu järjestelmääsi antamalla alla oleva komento.
$ sudo yum install vinagre
12. Avaa vinagre-apuohjelma valitsemalla Sovellukset -> Apuohjelmat -> Etätyöpöydän katseluohjelma alla olevan kuvakaappauksen mukaisesti.
13. Jos haluat muodostaa etäyhteyden CentOS-työpöytään, paina Connect-painiketta, valitse VNC-protokolla luettelosta ja lisää etä-VNC-palvelimen IP-osoite ja portti (5900+näyttönumero). Toimita myös VNC-käyttäjän salasana-asetus seuraavien kuvakaappausten mukaisesti.
14. Valitse etätyöpöytäprotokolla. Toinen suosittu VNC-asiakas Linux-pohjaisille alustoille on Remmina, on etätyöpöytäasiakas, jota käytetään erityisesti Debian-pohjaisissa jakeluissa, joissa käytetään GNOME-työpöytäympäristöä.
Asenna Remmina-etätyöpöytäasiakas Debian-pohjaisiin jakeluihin antamalla seuraava komento.
$ sudo apt-get install remmina
Vaihe 3: Useiden VNC-istuntojen konfigurointi CentOS 7:ssä
15. Jos haluat ajaa uuden rinnakkaisen VNC-istunnon samalla käyttäjällä, avaa Terminal-konsoli, kirjaudu sisään sillä käyttäjällä, jolla haluat käynnistää uuden VNC-istunnon, ja suorita alla oleva komento.
Kun käynnistät palvelimen ensimmäisen kerran, sinua pyydetään antamaan uusi salasana tähän istuntoon. Huomaa kuitenkin, että tämä istunto toimii kirjautuneen käyttäjän oikeuksilla ja riippumatta käynnistetystä systemd VNC-palvelinistunnosta.
$ vncserver
16. Valitse uusi VNC-istunto. Uudet VNC-istunnot avaavat seuraavat käytettävissä olevat VNC-pohjaiset portit (tässä esimerkissä 5900+3-näyttö). Voit näyttää avatut portit suorittamalla ss-komennon ilman pääkäyttäjän oikeuksia alla olevan otteen mukaisesti. Se listaa vain käyttäjän omistamat käynnistetyt VNC-istunnot.
$ ss -tlpn| grep Xvnc
17. Muodosta nyt etäyhteys CentOS-työpöydälle tämän uuden VNC-istunnon avulla antamalla IP:portti-yhdistelmä (192.168.1.23:5903) VNC-asiakasohjelmassa, kuten alla olevassa kuvassa on esitetty.
Pysäyttääksesi tällä kirjautuneella käyttäjällä käynnistyneet VNC-palvelininstanssit lopettaaksesi tämän käyttäjän kirjautuneilla käyttöoikeuksilla annat seuraavanlaisen komennon käyttämättä pääkäyttäjän (Root) oikeuksia. Tämä komento tuhoaa kaikki käynnistetyt VNC-instanssit, jotka omistaa vain ne ilmoittanut käyttäjä.
$ su - your_user$ killall Xvnc
Lue myös: CentOS 7:n tai RHEL 7:n etäasennus VNC-tilaa käyttäen
Tässä kaikki! Voit nyt käyttää CentOS 7 -järjestelmääsi ja suorittaa hallintatehtäviä käyttöjärjestelmän tarjoaman graafisen käyttöliittymän avulla.