Hogyan telepítsük és konfiguráljuk a VNC szervert a CentOS 7-ben

Ezzel az útmutatóval elmagyarázzuk, hogyan telepítsük és konfiguráljuk a VNC távoli hozzáférést a CentOS 7 és RHEL 7 Desktop kiadás legújabb kiadásában a tigervnc-server program segítségével.

A VNC (Virtual Network Computing) egy szerver-kliens protokoll, amely lehetővé teszi a felhasználói fiókok számára a távoli csatlakozást és egy távoli rendszer irányítását a grafikus felhasználói felület által biztosított erőforrások használatával.

A többi elérhető VNC-kiszolgálóval ellentétben, amelyek közvetlenül a futóasztalhoz kapcsolódnak, mint például a VNC X vagy a Vino, a tigervnc-vncserver egy másik mechanizmust használ, amely minden felhasználó számára egy önálló virtuális asztalt konfigurál.

Követelmények

  1. CentOS 7 telepítési eljárás
  2. RHEL 7 telepítési eljárás

1. lépés: A VNC telepítése és konfigurálása a CentOS 7 rendszerben

1. lépés. A Tigervnc-server egy olyan program, amely egy Xvnc-kiszolgálót futtat és párhuzamos Gnome vagy más asztali környezet munkameneteket indít a VNC-asztalon.

Egy elindított VNC felhasználói munkamenetet ugyanaz a felhasználó több VNC-kliensről is elérheti. A TigerVNC szerver telepítéséhez a CentOS 7 rendszerben nyisson meg egy terminál munkamenetet, és adja ki az alábbi parancsot root jogosultságokkal.

$ sudo yum install tigervnc-server

2. Miután telepítette a programot, jelentkezzen be azzal a felhasználóval, akivel a VNC programot szeretné futtatni, és adja ki az alábbi parancsot a terminálban a VNC szerver jelszavának beállításához.

Figyeljen arra, hogy a jelszónak legalább hat karakter hosszúságúnak kell lennie.

$ 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. Ezután adjon hozzá egy VNC szolgáltatás konfigurációs fájlt a felhasználójának a systemd könyvtárfában elhelyezett daemon konfigurációs fájlon keresztül. A VNC sablonfájl másolásához a következő parancsot kell futtatnia root jogosultságokkal.

Ha a felhasználója nem rendelkezik sudo jogosultságokkal, akkor vagy váltson közvetlenül root fiókra, vagy futtassa a parancsot egy root jogosultságokkal rendelkező fiókból.

# cp /lib/systemd/system/[email protected] /etc/systemd/system/vncserver@:1.service

4. A következő lépésben szerkessze a /etc/systemd/system/ könyvtárból másolt VNC sablon konfigurációs fájlt, és cserélje ki a értékeket a felhasználójának megfelelően, ahogy az az alábbi példában látható.

A @ jel utáni 1 érték a kijelző számát jelenti (5900-as port+kijelző). Továbbá, minden egyes indított VNC-kiszolgáló esetén az 5900-as portot növeljük 1-gyel.

# vi /etc/systemd/system/vncserver@\:1.service

Adjuk hozzá a következő sorokat a vncserver@:1.service fájlhoz.

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. Miután elvégezte a megfelelő módosításokat a VNC service fájlban, töltse újra a systemd rendszerinicializáló programot, hogy átvegye az új vnc konfigurációs fájlt és elindítsa a TigerVNC szervert.

Ezeken kívül ellenőrizze a VNC szolgáltatás állapotát és engedélyezze a VNC démont rendszerszinten az alábbi parancsok kiadásával.

# systemctl daemon-reload# systemctl start vncserver@:1# systemctl status vncserver@:1# systemctl enable vncserver@:1
VNC szolgáltatás indítása

6. A VNC-kiszolgáló tulajdonában lévő, figyelő állapotban lévő megnyitott portok listázásához futtassa az ss parancsot, amely a CentOS 7-ben a hálózati aljzatok megjelenítésére szolgál. Mivel a VNC-kiszolgálónak csak egy példányát indította el, az első nyitott port az 5901/TCP.

Az ss parancsot ismét root jogosultságokkal kell végrehajtani. Abban az esetben, ha párhuzamosan más VNC-példányokat is elindít különböző felhasználók számára, a port értéke 5902 lesz a másodiknál, 5903 a harmadiknál és így tovább. A 6000+ portok arra szolgálnak, hogy az X alkalmazások csatlakozhassanak a VNC-kiszolgálóhoz.

# ss -tulpn| grep vnc
VNC Listening Ports ellenőrzése

7. Ahhoz, hogy a külső VNC-kliensek csatlakozhassanak a VNC-kiszolgálóhoz a CentOS rendszerben, meg kell győződnie arról, hogy a megfelelő nyitott VNC-portokat átengedi a tűzfalon.

Ha csak egy példányt indít a VNC-kiszolgálóból, csak az első kijelölt VNC-portot kell megnyitnia: 5901/TCP az alábbi parancsok kiadásával, hogy a tűzfal konfigurációját futás közben alkalmazza.

# firewall-cmd --add-port=5901/tcp# firewall-cmd --add-port=5901/tcp --permanent

2. lépés: Csatlakozás a CentOS asztalhoz a VNC kliensen keresztül

8. Mivel platformfüggetlen protokollról van szó, a távoli grafikus felhasználói felületű VNC-kapcsolat szinte bármilyen operációs rendszerből megvalósítható, amely rendelkezik grafikus felhasználói felülettel és egy speciális VNC-klienssel.

A Microsoft-alapú operációs rendszerekben használt népszerű VNC-kliens, amely teljes mértékben kompatibilis a Linux TigerVNC szerverrel, a RealVNC VNC Viewer.

Hogy távolról csatlakozzon a CentOS Desktophoz egy Microsoft operációs rendszerből a VNC protokollon keresztül, nyissa meg a VNC Viewer programot, adja meg a CentOS VNC szerver IP címét és portszámát, majd nyomja meg a billentyűt.

A VNC-kapcsolat létrehozása után egy figyelmeztetésnek kell megjelennie a képernyőn, amely szerint a kapcsolat nem titkosított, amint azt az alábbi képernyőképek mutatják.

VNC Viewer Client
VNC Viewer Client Connection

9. A figyelmeztetés megkerülése érdekében nyomja meg a Folytatás gombot, adja hozzá a 2. pontban a VNC-kiszolgálóhoz beállított jelszót, és a VNC-kiszolgáló példány futtatására beállított felhasználóval távoli kapcsolatot kell létesítenie a CentOS Desktophoz.

VNC-kiszolgáló felhasználói jelszó
VNC távoli CentOS Desktop

10. Abban az esetben, ha új Hitelesítés üzenet jelenik meg a képernyőn, és a felhasználónak nincsenek root jogosultságai, csak nyomja meg a Mégse gombot a CentOS Desktop folytatásához, ahogy az alábbi képernyőképen látható.

VNC Server Authentication Warning

Tudatában kell lennie annak, hogy a létrehozott VNC kommunikáció a szerver és az ügyfél között, és minden kicserélt adat (a jelszó kivételével) titkosítatlan csatornán fut. A VPN-adatátvitel titkosításához és biztosításához először egy biztonságos SSH-alagutat kell létrehoznia, és minden további VPN-forgalmat az SSH-alagúton keresztül kell lebonyolítania.

11. Ahhoz, hogy távolról csatlakozhasson a CentOS Desktophoz VNC protokollon keresztül egy másik CentOS Desktopról, először győződjön meg arról, hogy a vinagre csomag telepítve van a rendszerén az alábbi parancs kiadásával.

$ sudo yum install vinagre

12. A vinagre segédprogram megnyitásához lépjen az Alkalmazások -> Segédprogramok -> Távoli asztali megjelenítő menüpontra, ahogy az alábbi képernyőképen látható.

Vinagre eszköz megnyitása

13. A CentOS asztali géphez való távoli csatlakozáshoz nyomja meg a Connect gombot, válassza ki a VNC protokollt a listából, és adja meg a távoli VNC-kiszolgáló IP-címét és portját (5900+jelzőszám). Adja meg továbbá a VNC-felhasználó jelszóbeállítását az alábbi képernyőképeken látható módon.

Távoli asztali protokoll kiválasztása
Távoli VNC adatok megadása
Távoli VNC CentOS-asztal

14. Egy másik népszerű VNC kliens Linux alapú platformokon a Remmina, ez egy távoli asztali kliens, amelyet különösen a GNOME asztali környezetet futtató Debian alapú disztribúciókban használnak.

A Remmina távoli asztali kliens telepítéséhez Debian alapú disztribúciókban adja ki a következő parancsot.

$ sudo apt-get install remmina

Lépés 3: Több VNC ülés beállítása CentOS 7-ben

15. Abban az esetben, ha egy új párhuzamos VNC munkamenetet kell futtatnia ugyanazon felhasználó alatt, nyisson meg egy Terminál konzolt, jelentkezzen be azzal a felhasználóval, akivel az új VNC munkamenetet szeretné indítani, és hajtsa végre az alábbi parancsot.

A szerver első indításakor a rendszer kérni fogja, hogy adjon meg egy új jelszót ehhez a munkamenethez. Ne feledje azonban, hogy ez a munkamenet a bejelentkezett felhasználó jogosultságaival és az elindított systemd VNC-kiszolgáló munkamenettől függetlenül fut.

$ vncserver
Új VNC-munkamenet indítása

16. Az új VNC-munkamenetek megnyitják a következő elérhető VNC-alapú portokat (ebben a példában az 5900+3 kijelzőt). A megnyitott portok megjelenítéséhez futtassa az ss parancsot root jogosultságok nélkül, ahogy az alábbi részletben látható. Ez csak az elindított VNC munkameneteket fogja listázni, amelyeknek a felhasználó tulajdonában vannak.

$ ss -tlpn| grep Xvnc
List VNC Open Ports

17. Most csatlakozzon távolról a CentOS Desktophoz ezzel az új VNC munkamenettel, adja meg az IP:port kombinációt (192.168.1.23:5903) a VNC kliensben az alábbi képen látható módon.

Connect to VNC Remote Desktop

A bejelentkezett felhasználó jogosultságaival indított VNC szerver példányok leállításához adja ki a következő parancsot root jogosultságok nélkül. Ez a parancs megsemmisíti az összes elindított VNC-példányt, amelyek csak az azokat kijelölő felhasználó tulajdonában vannak.

$ su - your_user$ killall Xvnc

Legyen még olvasható: CentOS 7 vagy RHEL 7 távoli telepítése VNC módban

Ez minden! Most már hozzáférhet a CentOS 7 rendszeréhez, és az operációs rendszer által biztosított grafikus felhasználói felület segítségével adminisztrációs feladatokat végezhet.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.