CentOS ve RHEL'de VNC Sunucusu Nasıl Kurulur ve Yapılandırılır


Bu kılavuzda, CentOS 7/8 ve RHEL 9/8/7 masaüstünde VNC Uzaktan Erişim'in nasıl kurulacağını ve yapılandırılacağını açıklayacağız. uzak masaüstü makinelerine erişmek için tigervnc-server programı aracılığıyla sürüm.

VNC (Sanal Ağ Bilgi İşlem), kullanıcı hesaplarının Grafik Kullanıcı Arayüzü tarafından sağlanan kaynakları kullanarak uzaktaki bir sisteme uzaktan bağlanmasını ve kontrol etmesini sağlayan bir sunucu-istemci protokolüdür.

VNC X veya Vino gibi doğrudan çalışma zamanı masaüstüne bağlanan diğer VNC sunucularının aksine, tigervnc-vncserver her kullanıcı için bağımsız bir sanal masaüstü yapılandıran farklı bir mekanizma kullanır.

Gereksinimler

  • CentOS 8'in Ekran Görüntüleriyle Kurulumu
  • CentOS 7 Kurulum Prosedürü
  • Ücretsiz RHEL 9 Nasıl Kurulur
  • Ücretsiz RHEL 8 Nasıl Kurulur
  • RHEL 7 Kurulum Prosedürü

1. Adım: CentOS'ta VNC'yi Kurun ve Yapılandırın

1. Tigervnc-server, bir Xvnc sunucusunu çalıştıran ve Gnome veya başka bir masaüstünde paralel oturumlar başlatan bir programdır VNC masaüstündeki ortamlar.

Başlatılan bir VNC kullanıcı oturumuna aynı kullanıcı tarafından birden fazla VNC istemcisinden erişilebilir. TigerVNC sunucusunu CentOS/RHEL'e kurmak için bir terminal oturumu açın ve root ayrıcalıklarıyla aşağıdaki yum komutunu verin.

sudo yum install tigervnc-server

2. Programı yükledikten sonra, VNC programını çalıştırmak istediğiniz kullanıcıyla oturum açın ve bir yapılandırma oluşturmak için terminalde aşağıdaki komutu verin. VNC sunucusunun şifresi.

Şifrenin en az altı karakter uzunluğunda olması gerektiğini unutmayın.

su - your_user
vncpasswd

3. Ardından, systemd dizin ağacına yerleştirilen bir arka plan programı yapılandırma dosyası aracılığıyla kullanıcınız için bir VNC hizmeti yapılandırma dosyası ekleyin. VNC şablon dosyasını kopyalamak için aşağıdaki cp komutunu root ayrıcalıklarıyla çalıştırmanız gerekir.

Kullanıcınıza sudo ayrıcalıkları verilmediyse ya doğrudan kök hesaba geçin ya da komutu kök ayrıcalıklarına sahip bir hesaptan çalıştırın.

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

4. Bir sonraki adımda /etc/systemd/system/ dizininden kopyalanan VNC şablonu yapılandırma dosyasını düzenleyin ve aşağıdaki değerleri, kullanıcınızı yansıtacak şekilde aşağıda gösterildiği gibi değiştirin. örnek.

@ işaretinden sonraki 1 değeri ekran numarasını temsil eder (port 5900+display). Ayrıca başlatılan her VNC sunucusu için 5900 bağlantı noktası 1 artırılacaktır.

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

vncserver@:1.service dosyasına aşağıdaki satırları ekleyin.

[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=forking
User=tecmint
Group=tecmint
WorkingDirectory=/home/tecmint
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/bin/vncserver %i -geometry 1280x1024
PIDFile=/home/tecmint/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'

[Install]
WantedBy=multi-user.target

5. VNC hizmet dosyasında uygun değişiklikleri yaptıktan sonra, yeni vnc yapılandırma dosyasını almak ve TigerVNC sunucusunu başlatmak için systemd sistem başlatma programını yeniden yükleyin.

Ayrıca, VNC hizmet durumunu kontrol edin ve aşağıdaki komutları vererek VNC arka plan programını sistem genelinde etkinleştirin.

systemctl daemon-reload
systemctl start vncserver@:1
systemctl status vncserver@:1
systemctl enable vncserver@:1

6. VNC sunucusunun sahip olduğu dinleme durumundaki açık bağlantı noktalarını listelemek için ağ soketlerini görüntülemek için kullanılan ss komutunu çalıştırın. VNC sunucusunun yalnızca bir örneğini başlattığınız için ilk açık bağlantı noktası 5901/TCP'dir.

Yine ss komutunun root ayrıcalıklarıyla çalıştırılması gerekir. Farklı kullanıcılar için diğer VNC örneklerini paralel olarak başlatmanız durumunda, bağlantı noktası değeri ikinci için 5902, üçüncü için 5903 vb. olacaktır. 6000+ bağlantı noktaları, X uygulamalarının VNC sunucusuna bağlanmasına izin vermek için kullanılır.

ss -tulpn| grep vnc

7. Harici VNC istemcilerinin VNC sunucusuna bağlanmasına izin vermek için, uygun VNC açık bağlantı noktalarının güvenlik duvarınızdan geçmesine izin verildiğinden emin olmanız gerekir.

VNC sunucusunun yalnızca bir örneğinin başlatılması durumunda, güvenlik duvarı yapılandırmasını çalışma zamanında uygulamak için aşağıdaki komutları vererek yalnızca ilk tahsis edilen VNC bağlantı noktasını açmanız gerekir: 5901/TCP.

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

Adım 2: VNC İstemcisi aracılığıyla CentOS Masaüstüne Bağlanma

8. Platformdan bağımsız bir protokol olan uzak Grafik Kullanıcı Arayüzü VNC bağlantıları, bir GUI'ye ve özel bir VNC istemcisine sahip hemen hemen her işletim sisteminden gerçekleştirilebilir.

Microsoft tabanlı işletim sistemlerinde kullanılan ve Linux TigerVNC sunucusuyla tam uyumlu popüler bir VNC istemcisi RealVNC VNC Görüntüleyicidir.

Bir Microsoft işletim sisteminden VNC protokolü aracılığıyla CentOS Masaüstü'ne uzaktan bağlanmak için VNC Viewer programını açın, CentOS VNC sunucusunun IP adresini ve bağlantı noktası numarasını ekleyin ve [enter] tuşuna basın.

VNC bağlantısı kurulduktan sonra aşağıdaki ekran görüntülerinde görüldüğü gibi bağlantının şifrelenmediğini belirten bir uyarının ekranınızda görünmesi gerekmektedir.

9. Uyarıyı atlamak için Devam düğmesine basın, 2. noktaya VNC sunucusunun şifre ayarını ekleyin ve CentOS Masaüstüne uzaktan bağlanmalısınız. kullanıcı VNC sunucusu örneğini çalıştıracak şekilde yapılandırılmıştır.

10. Ekranınızda yeni bir Kimlik Doğrulama mesajı belirirse ve kullanıcınızın root ayrıcalıkları yoksa, CentOS'a devam etmek için İptal düğmesine basmanız yeterlidir. Aşağıdaki ekran görüntüsünde gösterildiği gibi masaüstü.

Sunucu ile istemci arasında kurulan VNC iletişiminin ve değiştirilen tüm verilerin (şifre hariç) şifrelenmemiş bir kanal üzerinden çalıştığını unutmayın. VPN veri aktarımını şifrelemek ve güvenliğini sağlamak için öncelikle güvenli bir SSH tüneli kurmanız ve sonraki VPN trafiğini SSH tüneli üzerinden çalıştırmanız gerekir.

11. CentOS Masaüstüne VNC protokolü aracılığıyla diğer CentOS Masaüstü Bilgisayarlardan uzaktan bağlanmak için öncelikle aşağıdaki komutu vererek vinagre paketinin sisteminizde kurulu olduğundan emin olun.

sudo yum install vinagre

12. Vinagre yardımcı programını açmak için aşağıdaki ekran görüntüsünde gösterildiği gibi Uygulamalar -> Yardımcı Programlar -> Uzak Masaüstü Görüntüleyici'ye gidin.

13. Bir CentOS Masaüstüne uzaktan bağlanmak için Bağlan düğmesine basın, listeden VNC protokolünü seçin ve IP adresini ekleyin ve uzak VNC sunucusunun bağlantı noktası (5900+görüntü numarası). Ayrıca, aşağıdaki ekran görüntülerinde gösterildiği gibi VNC kullanıcısı için şifre kurulumunu da sağlayın.

14. Linux tabanlı platformlar için bir diğer popüler VNC istemcisi, özellikle GNOME masaüstü ortamını çalıştıran Debian tabanlı dağıtımlarda kullanılan bir uzak masaüstü istemcisi olan Remmina'dır.

Remmina Remote Desktop istemcisini Debian tabanlı dağıtımlara yüklemek için aşağıdaki komutu verin.

sudo apt-get install remmina

3. Adım: CentOS'ta Birden Çok VNC Oturumunu Yapılandırma

15. Aynı kullanıcı altında yeni bir paralel VNC oturumu çalıştırmanız gerekiyorsa, bir Terminal konsolu açın, yeni VNC oturumunu başlatmak istediğiniz kullanıcıyla oturum açın ve aşağıdaki komutu uygulayın.

Sunucuyu ilk başlattığınızda, bu oturum için yeni bir şifre girmeniz istenecektir. Ancak bu oturumun oturum açmış kullanıcı izinlerinizle ve başlatılan systemd VNC sunucusu oturumundan bağımsız olarak çalıştığını unutmayın.

vncserver

16. Yeni VNC oturumları sonraki kullanılabilir VNC tabanlı bağlantı noktalarını açacaktır (bu örnekte 5900+3 ekranı). Açılan bağlantı noktalarını görüntülemek için aşağıdaki alıntıda gösterildiği gibi kök ayrıcalıkları olmadan ss komutunu yürütün. Yalnızca kullanıcınızın borçlu olduğu başlatılan VNC oturumlarını listeleyecektir.

ss -tlpn| grep Xvnc

17. Şimdi, bu yeni VNC oturumunu kullanarak CentOS Masaüstüne uzaktan bağlanın ve aşağıdaki resimde gösterildiği gibi VNC istemcisine IP:port kombinasyonunu (192.168.1.23:5903) sağlayın.

Bu oturum açmış kullanıcı izinleriyle başlatılan VNC sunucusu örneklerini durdurmak için, herhangi bir kök ayrıcalığı olmadan aşağıdaki komutu verin. Bu komut, yalnızca bunları belirten kullanıcıya ait olan tüm başlatılan VNC örneklerini yok edecektir.

su - your_user
killall Xvnc

Bu kadar! Artık CentOS sisteminize erişebilir ve işletim sistemi tarafından sağlanan grafik kullanıcı arayüzünü kullanarak yönetim görevlerini gerçekleştirebilirsiniz.