Cara Install Remote Desktop GNOME dan VNC Server di Ubuntu 24.04 LTS

Remote Desktop merupakan solusi praktis bagi administrator server dan pengembang yang membutuhkan antarmuka grafis (GUI) pada server Linux Ubuntu untuk menjalankan aplikasi desktop seperti peramban web (browser), IDE, atau tool berbasis grafis lainnya.

Pada panduan ini, kita akan membahas cara melakukan instalasi dan konfigurasi Remote Desktop berbasis GNOME menggunakan VNC Server (TigerVNC) pada sistem operasi Ubuntu 24.04 LTS (Noble Numbat), termasuk penyesuaian port kustom, auto-start sistem (systemd), serta solusi kompatibilitas browser Google Chrome dan Mozilla Firefox.


Mengapa Menggunakan TigerVNC untuk GNOME di Ubuntu 24.04?

Pada Ubuntu 24.04 LTS dengan lingkungan GNOME 46 modern, paket tightvncserver versi lawas (TightVNC 1.3) tidak mendukung ekstensi grafis modern X11 seperti RANDR (Resize and Rotate) dan GLX, yang kerap mengakibatkan kendala layar hitam (black screen) atau crash.

Oleh karena itu, kami merekomendasikan penggunaan backend tigervnc-standalone-server. TigerVNC stabil, memiliki performa tinggi, dan tetap 100% kompatibel diakses menggunakan aplikasi TightVNC Viewer, RealVNC Viewer, maupun client VNC lainnya pada komputer Anda.


1. Update Sistem dan Instalasi Paket GNOME & VNC

Langkah pertama adalah memperbarui repositori server dan memasang paket desktop minimal GNOME, D-Bus X11, serta TigerVNC Server.

sudo apt update
sudo DEBIAN_FRONTEND=noninteractive apt install -y ubuntu-desktop-minimal gnome-session dbus-x11 tigervnc-standalone-server tigervnc-common xterm

 

2. Mengatur Password Akses VNC

Buat folder konfigurasi ~/.vnc dan tentukan password yang akan digunakan saat menghubungkan ke VNC Server.

mkdir -p ~/.vnc
vncpasswd

 

Masukkan password baru Anda (maksimal 8 karakter untuk enkripsi standar VNC) dan konfirmasi. Jika muncul pertanyaan untuk membuat view-only password, Anda dapat memilih n (No).

Pastikan hak akses file password diatur dengan aman:

chmod 600 ~/.vnc/passwd

 

3. Membuat File Startup Sesi GNOME (xstartup)

File xstartup berfungsi untuk memulai sesi antarmuka desktop GNOME saat server VNC dijalankan.

Buka file ~/.vnc/xstartup:

nano ~/.vnc/xstartup

 

Isi file tersebut dengan konfigurasi berikut:

#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
export XDG_SESSION_TYPE=x11
export XDG_CURRENT_DESKTOP=ubuntu:GNOME
export XDG_SESSION_DESKTOP=ubuntu
export GNOME_SHELL_SESSION_MODE=ubuntu
export DESKTOP_SESSION=ubuntu

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
vncconfig -iconic &
exec dbus-launch --exit-with-session gnome-session

 

Simpan file tersebut (tekan CTRL + O lalu Enter, dan CTRL + X untuk keluar), kemudian berikan izin eksekusi:

chmod +x ~/.vnc/xstartup

 

4. Konfigurasi Systemd Service & Port Kustom

Agar VNC Server berjalan otomatis setiap kali server dinyalakan (booting) dan dapat dikelola dengan mudah melalui systemctl, buat unit service systemd. Pada contoh ini, kita menggunakan port kustom 2500 menggunakan parameter -rfbport 2500.

Buat file service /etc/systemd/system/vncserver.service:

sudo nano /etc/systemd/system/vncserver.service

 

Salin dan tempel konfigurasi berikut (sesuaikan User dan WorkingDirectory jika tidak menggunakan user root):

[Unit]
Description=TigerVNC Server with GNOME Desktop (Port 2500)
After=syslog.target network.target

[Service]
Type=forking
User=root
WorkingDirectory=/root
PIDFile=/root/.vnc/%H:1.pid
ExecStartPre=-/usr/bin/tigervncserver -kill :1
ExecStart=/usr/bin/tigervncserver :1 -geometry 1920x1080 -depth 24 -localhost no -rfbport 2500
ExecStop=/usr/bin/tigervncserver -kill :1
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target

 

Muat ulang konfigurasi daemon systemd, aktifkan auto-start saat boot, dan jalankan service VNC:

sudo systemctl daemon-reload
sudo systemctl enable vncserver.service
sudo systemctl start vncserver.service

 

Periksa status service untuk memastikan VNC Server sudah aktif dan berjalan:

sudo systemctl status vncserver.service

 

Pastikan port 2500 sudah berada dalam status LISTEN:

ss -tulpn | grep 2500

 


5. Penyesuaian Aplikasi Peramban Web (Google Chrome & Firefox)

Jika Anda menjalankan sesi desktop sebagai user root, terdapat beberapa penyesuaian khusus pada browser agar dapat dibuka secara normal:

A. Instalasi Google Chrome

Unduh paket resmi Chrome dan tambahkan parameter --no-sandbox pada konfigurasi desktop entry:

wget -q https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo apt install -y ./google-chrome-stable_current_amd64.deb
rm -f ./google-chrome-stable_current_amd64.deb

sudo sed -i 's|Exec=/usr/bin/google-chrome-stable %U|Exec=/usr/bin/google-chrome-stable --no-sandbox %U|g' /usr/share/applications/google-chrome.desktop
sudo sed -i 's|Exec=/usr/bin/google-chrome-stable$|Exec=/usr/bin/google-chrome-stable --no-sandbox|g' /usr/share/applications/google-chrome.desktop

 

B. Instalasi Mozilla Firefox (Native .deb dari Mozilla)

Versi default Firefox pada Ubuntu 24.04 berbasis Snap yang secara otomatis memblokir eksekusi di bawah user root. Solusinya adalah menggunakan paket Native .deb resmi dari repositori Mozilla:

sudo snap remove firefox 2>/dev/null || true
sudo apt remove -y firefox 2>/dev/null || true

sudo install -d -m 0755 /etc/apt/keyrings
wget -q https://packages.mozilla.org/apt/repo-signing-key.gpg -O- | sudo tee /etc/apt/keyrings/packages.mozilla.org.asc > /dev/null

echo "deb [signed-by=/etc/apt/keyrings/packages.mozilla.org.asc] https://packages.mozilla.org/apt mozilla main" | sudo tee /etc/apt/sources.list.d/mozilla.list > /dev/null

cat << 'EOF' | sudo tee /etc/apt/preferences.d/mozilla
Package: *
Pin: origin packages.mozilla.org
Pin-Priority: 1000
EOF

sudo apt update
sudo apt install -y firefox

 

C. Membuat Shortcut di Desktop & Mengaktifkan Izin Peluncuran

Salin shortcut browser ke desktop dan tandai sebagai trusted agar tidak muncul dialog peringatan *Untrusted Desktop File*:

mkdir -p ~/Desktop
cp /usr/share/applications/google-chrome.desktop ~/Desktop/
cp /usr/share/applications/firefox.desktop ~/Desktop/
chmod +x ~/Desktop/*.desktop
gio set ~/Desktop/google-chrome.desktop 'metadata::trusted' 'true'
gio set ~/Desktop/firefox.desktop 'metadata::trusted' 'true'

 


6. Menghubungkan ke VNC Server dari Komputer Klien

Opsi 1: Koneksi Langsung (Direct VNC)

  1. Buka aplikasi TightVNC Viewer atau TigerVNC Viewer di komputer lokal Anda.
  2. Pada kolom Remote Host, masukkan alamat IP server dan port yang telah ditentukan:
    IP_SERVER_ANDA:2500
    

     

  3. Klik Connect dan masukkan password VNC yang telah Anda atur.

Opsi 2: Koneksi Aman via SSH Tunnel (Disarankan)

Jika port VNC ingin diamankan agar tidak terbuka langsung ke publik, Anda dapat mengarahkan lalu lintas melalui SSH Tunnel:

  1. Jalankan perintah berikut di terminal komputer lokal Anda:
    ssh -L 2500:localhost:2500 user@IP_SERVER_ANDA
    

     

  2. Buka TightVNC Viewer dan hubungkan ke:
    localhost:2500
    

     

  3. Masukkan password VNC Anda.

Cheatsheet Perintah Manajemen VNC

TindakanPerintah Linux
Memeriksa Status Servicesudo systemctl status vncserver
Merestart VNC Serversudo systemctl restart vncserver
Menghentikan VNC Serversudo systemctl stop vncserver
Menjalankan VNC Serversudo systemctl start vncserver
Mengubah Password VNCvncpasswd
Optimasi CPU (Nonaktifkan Animasi)gsettings set org.gnome.desktop.interface enable-animations false
💡 Tips Optimasi Performa
Pada VPS atau cloud server yang tidak memiliki Dedicated GPU, antarmuka grafis GNOME dirender sepenuhnya menggunakan CPU (software rendering). Menutup aplikasi yang terus-menerus me-refresh tampilan layar secara konstan (seperti htop di jendela terminal GUI) dan menonaktifkan animasi desktop akan menghemat penggunaan CPU secara signifikan.
📞 Butuh Bantuan?
Jika Anda menggunakan layanan Cloud VPS Hosterbyte dan membutuhkan bantuan terkait setup Remote Desktop, pembukaan port firewall, atau konfigurasi server, silakan hubungi tim Support Hosterbyte melalui tiket bantuan di Client Area. Tim teknis kami siap membantu 24/7.

Related Post

Leave a Comment