Android

Ubuntu 18.04 Üzerinde VNC Kurulumu ve Konfigürasyonu

How to Install and Configure VNC on Ubuntu 18.04

How to Install and Configure VNC on Ubuntu 18.04

İçindekiler:

Anonim

Bu kılavuz, bir Ubuntu 18.04 sistemine VNC sunucusunu kurmak ve yapılandırmak için gerekli adımları içermektedir. Ayrıca bir SSH tüneli üzerinden VNC sunucusuna nasıl güvenli bir şekilde bağlanacağınızı göstereceğiz.

Virtual Network Computing (VNC), başka bir bilgisayarı uzaktan kontrol etmek için klavyenizi ve farenizi kullanmanızı sağlayan bir grafik masaüstü paylaşım sistemidir. Microsoft uzak masaüstü protokolüne (RDP) açık kaynaklı bir alternatiftir.

Ön şartlar

Eğiticiye devam etmeden önce sudo ayrıcalıklarına sahip bir kullanıcı olarak oturum açtığınızdan emin olun.

Masaüstü Ortamını Kurma

Çoğu sunucuda yüklü bir masaüstü ortamı yoktur, bu nedenle hafif bir masaüstü ortamı yükleyerek başlayacağız.

Ubuntu depolarında çeşitli masaüstü ortamları (DE) vardır. Bu öğreticide Xfce yükleyeceğiz. Uzak bir sunucuda kullanım için ideal olmasını sağlayan hızlı, kararlı ve hafif bir masaüstü ortamıdır.

Öncelikle sisteminizi şu şekilde güncelleyin:

sudo apt update sudo apt upgrade

Ardından, sunucunuza Xfce yüklemek için aşağıdaki komutu yazın:

sudo apt install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils

Sisteminize bağlı olarak, Xfce paketlerinin indirilmesi ve yüklenmesi biraz zaman alabilir.

VNC Sunucusunu Yükleme

Ubuntu depolarında TightVNC, TigerVNC ve x11vnc gibi birkaç farklı VNC sunucusu da bulunmaktadır. Her VNC sunucusunun hız ve güvenlik açısından farklı güçlü ve zayıf yönleri vardır.

Aktif olarak yüksek performanslı VNC sunucusu olan TigerVNC'yi kuracağız.

Ubuntu sunucunuza TigerVNC'yi yüklemek için aşağıdaki komutu yazın:

sudo apt install tigervnc-standalone-server tigervnc-common

VNC sunucusu kurulduğuna göre, bir sonraki adım ilk yapılandırmayı oluşturacak ve parolayı ayarlayacak olan vncserver komutunu çalıştırmaktır. Aşağıdaki komutu çalıştırırken sudo kullanmayın:

vncserver

Parolayı girmeniz ve onaylamanız ve parolanın salt görüntülenebilir parola olarak ayarlanıp ayarlanmayacağı sorulacaktır. Salt okunur bir şifre ayarlamayı seçerseniz, kullanıcı fare ve klavyeyle VNC örneği ile etkileşime giremez.

You will require a password to access your desktops. Password: Verify: Would you like to enter a view-only password (y/n)? n /usr/bin/xauth: file /home/linuxize/.Xauthority does not exist New 'server2.linuxize.com:1 (linuxize)' desktop at:1 on machine server2.linuxize.com Starting applications specified in /etc/X11/Xvnc-session Log file is /home/linuxize/.vnc/server2.linuxize.com:1.log Use xtigervncviewer -SecurityTypes VncAuth -passwd /home/linuxize/.vnc/passwd:1 to connect to the VNC server.

vncserver komutu ilk kez çalıştırıldığında, parola dosyasını ~/.vnc oluşturulacak ~/.vnc dizininde saklar ve saklar.

Yukarıdaki çıktıdaki ana bilgisayar adından sonra :1 değerini not edin. Bu, vnc sunucusunun çalıştığı ekran bağlantı noktası numarasını gösterir. Bizim durumumuzda, sunucu 5901 numaralı TCP bağlantı noktasında (5900 + 1) çalışıyor. vncserver ile ikinci bir örnek oluşturursanız, bir sonraki boş bağlantı noktasında çalıştırılır, yani :2 , sunucunun bağlantı noktası 5902 (5900 + 2) üzerinde çalıştığı anlamına gelir.

Hatırlanması gereken önemli olan şey, VNC sunucularıyla çalışırken :X , 5900+X işaret eden bir ekran bağlantı noktasıdır.

Bir sonraki adıma geçmeden önce, ilk önce -kill seçeneğiyle vncserver komutunu ve bağımsız değişken olarak sunucu numarasını kullanarak VNC örneğini durdurun. Bizim durumumuzda, sunucu 5901 numaralı bağlantı noktasında ( :1 ) çalışıyor, bu yüzden şu şekilde durduracağız:

vncserver -kill:1

Killing Xtigervnc process ID 7264… success!

VNC Sunucusunu Yapılandırma

Sunucumuzda hem Xfce hem de TigerVNC kurulu olduğuna göre TigerVNC'yi Xfce kullanacak şekilde yapılandırmamız gerekiyor. Bunu yapmak için aşağıdaki dosyayı oluşturun:

~ /.Vnc / xstartup

nano ~/.vnc/xstartup

#!/bin/sh unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS exec startxfce4

Dosyayı kaydedip kapatın. TigerVNC sunucusunu her başlattığınızda veya yeniden başlattığınızda yukarıdaki komutlar otomatik olarak yürütülür.

~/.vnc/xstartup dosyasının da yürütme izinlerine sahip olması gerekir. İzinlerin doğru olduğundan emin olmak için aşağıdaki chmod komutunu çalıştırın:

chmod u+x ~/.vnc/xstartup ~ /.Vnc / yapılandırma

geometry=1920x1084 dpi=96

Systemd birim dosyası oluşturma

VNC hizmetini diğer tüm systemd hizmetlerinde olduğu gibi kolayca başlatmamızı, durdurmamızı ve yeniden başlatmamızı sağlayacak bir systemd birim dosyası oluşturacağız.

Metin düzenleyicinizi açın ve aşağıdaki yapılandırmayı kopyalayıp yapıştırın. 7. satırdaki kullanıcı adını kullanıcı adınızla eşleşecek şekilde değiştirdiğinizden emin olun.

sudo nano /etc/systemd/system/[email protected] /etc/systemd/system/[email protected]

Description=Remote desktop service (VNC) After=syslog.target network.target Type=simple User=linuxize PAMName=login PIDFile=/home/%u/.vnc/%H%i.pid ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill:%i > /dev/null 2>&1 ||:' ExecStart=/usr/bin/vncserver:%i -geometry 1440x900 -alwaysshared -fg ExecStop=/usr/bin/vncserver -kill:%i WantedBy=multi-user.target

Dosyayı kaydedip kapatın.

Yeni bir birim dosyası oluşturduğumuzu systemd'e şu yolla bildir:

sudo systemctl daemon-reload

Bir sonraki adım, birim dosyasını aşağıdaki komutla etkinleştirmektir:

sudo systemctl enable [email protected]

@ İşaretinden sonraki 1 sayısı, VNC hizmetinin çalışacağı ekran bağlantı noktasını tanımlar. Bu, önceki bölümde tartıştığımız gibi VNC sunucusunun 5901 numaralı bağlantı noktasını dinleyeceği anlamına gelir.

VNC hizmetini şu işlemleri yaparak başlatın:

sudo systemctl start [email protected]

Hizmetin başarıyla başlatıldığını doğrulayın:

sudo systemctl status [email protected]

[email protected] - Remote desktop service (VNC) Loaded: loaded (/etc/systemd/system/[email protected]; indirect; vendor preset: enabled) Active: active (running) since Thu 2018-08-16 19:05:54 UTC; 4s ago Process: 9893 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill:1 > /dev/null 2>&1 ||: (code=exited, status=0/SUCCESS) Main PID: 9900 (vncserver) Tasks: 0 (limit: 507) CGroup: /system.slice/system-vncserver.slice/[email protected] ‣ 9900 /usr/bin/perl /usr/bin/vncserver:1 -geometry 1440x900 -alwaysshared -fg

VNC sunucusuna bağlanma

VNC şifreli bir protokol değildir ve paket koklamaya tabi olabilir. Önerilen yaklaşım, 5901 numaralı bağlantı noktasındaki yerel makinenizden aynı bağlantı noktasındaki sunucuya güvenli bir şekilde trafik iletecek bir SSH tüneli oluşturmaktır.

Linux ve macOS'ta SSH Tünel Oluşturma

ssh -L 5901:127.0.0.1:5901 -N -f -l username server_ip_address Kullanıcı şifresini girmeniz istenir.

server_ip_address ve server_ip_address kullanıcı adınız ve sunucunuzun IP adresiyle değiştirmeyi unutmayın.

Windows'ta SSH Tünel Oluşturma

Macun'u açın ve Host name or IP address alanına sunucu IP Adresinizi girin.

Klavyenizi ve farenizi kullanarak yerel makinenizden uzak XFCE masaüstü ile etkileşime başlayabilirsiniz.

Sonuç

Şimdiye kadar bir VNC sunucunuz çalışır durumda olmalı ve Ubuntu 18.04 sunucunuzu kullanımı kolay bir grafik arabirimi kullanarak yerel masaüstü makinenizden kolayca yönetebilirsiniz.

VNC sunucunuzu birden fazla kullanıcı için bir ekran başlatacak şekilde yapılandırmak için, başlangıç ​​yapılandırmasını oluşturun ve vncserver komutunu kullanarak parolayı ayarlayın. Ayrıca farklı bir bağlantı noktası kullanarak yeni bir hizmet dosyası oluşturmanız gerekir.

Herhangi bir sorunuz varsa yorum bırakmaktan çekinmeyin.

ubuntu vnc