Virtual Network Computing (VNC) bekerja dengan menangkap frame buffer layar dan membuatnya tersedia di seluruh jaringan. Postingan ini menunjukkan kepada Anda cara menginstal TigerVNC dan mengonfigurasinya untuk memberikan akses pengguna jarak jauh ke lingkungan desktop grafis mereka seolah-olah mereka secara fisik berada di depan sistem.
Sebagai contoh pada postingan kali ini kita akan menggunakan server CentOS 7 sebagai server VNC dan komputer lokal dengan klien VNC untuk menghubungkannya. Diasumsikan bahwa sistem jarak jauh menjalankan server OpenSSH SSH dan lingkungan desktop grafis seperti GNOME atau KDE. Anda dapat merujuk posting “CentOS / RHEL 7 :Cara Memasang GUI” untuk menginstal lingkungan Grafis sebelum melanjutkan.
Menginstal server VNC
1. Pastikan Anda memiliki akses ke repositori yum lokal atau jarak jauh untuk menginstal paket yang diperlukan.
# yum repolist
2. Instal paket desktop GUI jika belum diinstal untuk memiliki akses GUI ke server VNC.
# yum groupinstall "Server with GUI"
3. Di server VNC, instal paket server TigerVNC:
# yum install tigervnc-server
Mengonfigurasi server VNC
Salin file konfigurasi, /lib/systemd/system/[email protected] , ke direktori /etc/systemd/system/ mengikuti penamaan ‘vncserver_[nama pengguna]@:[port].service '. Misalnya:
# cp /lib/systemd/system/[email protected] /etc/systemd/system/vncserver_root@:2.service # cp /lib/systemd/system/[email protected] /etc/systemd/system/vncserver_oracle@:3.serviceCatatan :Adalah umum untuk membuat file konfigurasi yang berbeda untuk setiap pengguna. Sebagai praktik terbaik, kami dapat menambahkan nama pengguna ke file konfigurasi karena ini akan membantu mengidentifikasi file mana yang menjadi milik setiap pengguna. Ini tidak diperlukan.
3. Ubah file konfigurasi yang telah dibuat untuk setiap pengguna (Dalam contoh ini kita akan menggunakan root dan oracle):
A. Ganti placeholder <USER> dengan pengguna “root” yang muncul di [Layanan] untuk file “vncserver_root@:2.service” dan “oracle” untuk file “vncserver_oracle@:3.service” dengan vi.
# vi /etc/systemd/system/vncserver_root@:2.service # vi /etc/systemd/system/vncserver_oracle@:3.service
Anda juga dapat menggunakan “sed” untuk melakukan penggantian nama pengguna secara otomatis:
# sed -i 's/<USER>/root/g' /etc/systemd/system/vncserver_root@:2.service # sed -i 's/<USER>/oracle/g' /etc/systemd/system/vncserver_oracle@:3.service
B. Tambahkan juga geometri ke file konfigurasi untuk setiap pengguna. Dalam contoh ini kita akan menambahkan “-geometry 800×800 ” ke file konfigurasi. Ini akan berada di akhir baris yang dimulai dengan “ExecStart”.
# vi /etc/systemd/system/vncserver_root@:2.service # vi /etc/systemd/system/vncserver_oracle@:3.service
4. Setelah melakukan modifikasi pada langkah A dan B, baris yang telah kita modifikasi di bawah file konfigurasi akan terlihat seperti ini:
Untuk file “vncserver_root@:2.service ”
[Unit] Description=Remote desktop service (VNC) After=syslog.target network.target [Service] Type=forking User=root # Clean any existing files in /tmp/.X11-unix environment ExecStartPre=-/usr/bin/vncserver -kill %i ExecStart=/sbin/runuser -l root -c "/usr/bin/vncserver %i -geometry 800x800" PIDFile=/home/root/.vnc/%H%i.pid ExecStop=-/usr/bin/vncserver -kill %i [Install] WantedBy=multi-user.target
Untuk File “vncserver_oracle@:3.service ”
[Unit] Description=Remote desktop service (VNC) After=syslog.target network.target [Service] Type=forking User=oracle # Clean any existing files in /tmp/.X11-unix environment ExecStartPre=-/usr/bin/vncserver -kill %i ExecStart=/sbin/runuser -l oracle -c "/usr/bin/vncserver %i -geometry 800x800" PIDFile=/home/oracle/.vnc/%H%i.pid ExecStop=-/usr/bin/vncserver -kill %i [Install] WantedBy=multi-user.target
Perintah yang ditentukan dalam ExecStart entri dipanggil ketika kita memulai server menggunakan systemctl start; ia menggunakan runuser untuk menjalankan TigerVNC di bawah akun pengguna. -l argumen memberikan nama pengguna dan -c menentukan perintah dan argumennya yang akan dijalankan oleh runuser. PIDFile entri menentukan direktori tempat proses yang berjalan akan melacak ID prosesnya.
Catatan :Dimulai dengan RHEL7.4, opsi server yang didukung untuk diteruskan ke vncserver setelah pemanggilan telah dipindahkan ke file baru bernama 'config' di direktori ~/.vnc/. Jadi tidak perlu menambahkan opsi itu di baris ExecStart.Konfigurasi firewalld
1. Lalu lintas untuk port terkait tampilan harus diizinkan oleh firewall. Tampilan 0 menggunakan port 5900, tampilan 1 menggunakan port 5901, tampilan 2 menggunakan port 5902, dan seterusnya. Jika Anda menggunakan FirewallD, layanan vnc-server yang telah ditentukan akan membuka port 5900-5903:
# firewall-cmd --zone=public --permanent --add-service=vnc-server
Jika Anda memerlukan port tambahan atau jika Anda tidak perlu membuka seluruh rentang, Anda dapat membuka apa yang Anda perlukan menggunakan –add-port:
# firewall-cmd --zone=public --permanent --add-port=5901/tcp
2. Muat ulang firewall untuk membuat aturan firewall efektif.
# firewall-cmd --reload
3. Muat ulang konfigurasi:
# systemctl daemon-reload
Mulai Layanan dan atur kata sandi
1. Kami sekarang akan mengaktifkan layanan vncserver untuk setiap pengguna pada port yang dipilih, ini juga akan mengaktifkan autostart pada boot sistem, dengan perintah di bawah ini:
# systemctl enable vncserver_root@:2.service Created symlink from /etc/systemd/system/multi-user.target.wants/vncserver_root@:2.service to /etc/systemd/system/vncserver_root@:2.service.
# systemctl enable vncserver_oracle@:3.service Created symlink from /etc/systemd/system/multi-user.target.wants/vncserver_oracle@:3.service to /etc/systemd/system/vncserver_oracle@:3.service.
2. Muat ulang konfigurasi systemd untuk membuatnya mengetahui file unit baru:
# systemctl daemon-reload
3. Konfigurasikan kata sandi untuk setiap pengguna yang akan digunakan dengan vncserver.
# vncpasswd root Password: Verify: Would you like to enter a view-only password (y/n)? n
# vncpasswd oracle Password: Verify: Would you like to enter a view-only password (y/n)? n
4. Anda harus menjalankan “vncserver ” di baris perintah saat masuk sebagai pengguna. Ini akan secara otomatis meminta Anda untuk membuat kata sandi baru untuk pengguna.
# vncserver You will require a password to access your desktops. Password: Verify: Would you like to enter a view-only password (y/n)? n xauth: file /root/.Xauthority does not exist New 'geeklab:1 (root)' desktop is geeklab:1 Creating default startup script /root/.vnc/xstartup Creating default config /root/.vnc/config Starting applications specified in /root/.vnc/xstartup Log file is /root/.vnc/geeklab:1.log
Mengakses server VNC dengan penampil VNC
Anda dapat menginstal perangkat lunak penampil VNC apa pun di mesin klien Anda untuk mengakses server VNC. Saya menggunakan perangkat lunak realVNC di MAC saya untuk mengakses server VNC. Anda dapat menggunakan salah satu software VNC viewer di bawah ini sesuai dengan OS yang Anda gunakan.
1. TigerVNC :http://tigervnc.org
2. KetatVNC :https://www.tightvnc.com/download.php
3. RealVNC :https://www.realvnc.com/en/connect/download/viewer
Gunakan tampilan VNC :1 untuk menghubungkan server VNV.
Anda disana!!! Anda sekarang terhubung ke server VNC.
Cara mengkonfigurasi Server VNC di CentOS/RHEL 6