Kali ini saya akan coba untuk menulis tutorial mengamankan jalur VNC, mengapa? Karena jalur ini tidak aman, pada VNC dibawah versi 4.0 tidak terenkripsi, sedangkan versi 4.0 telah terenkripsi namun sangat mudah di crack.
The session password for a VNC connection does not go out over the
Internet, but the traffic generated by the session itself is not
encrypted and, therefore, is susceptible to sniffing, hijacking and
having commands inserted into the stream. It is therefore recommended
that an ssh tunnel be used to encrypt the session traffic. (realvnc.com)
Lalu bagaimana solusi untuk mengamankan jalur VNC? Tutorial ini sangat dikhususkan untuk para pemakai VNC atau yang dengan terpaksa harus menggunakan VNC sebagai remote software.
Jawaban untuk mengamankan jalur VNC adalah dengan cara melempar jalur VNC tersebut ke jalur teraman, yaitu jalur SSH, bahasa kerennya “tunneling VNC over SSH”. Skenarionya adalah saya hendak me-remote server Linux yang terinstall VNC dan mengamankan jalurnya lewat SSH. Persiapannya sebagai berikut pada distro Slackware:
Persiapkan SSH Server di Linux, yang paling terkenal OpenSSH server.
Putty untuk SSH Client
TightVNC server (di Linux) dan viewer untuk Windows (bisa didownload disitusnya)
Tahap 1. Jalankan SSH server di komputer Linux.
Menjalankan server SSH dengan mengetikkan:
[t0m@gw t0m]$ sudo /etc/rc.d/rc.sshd start
Tahap 2. Menginstall tightvncserver
Silakan mendownload di Linuxpackages.net, atau klik disini
Setelah didownload lakukan instalasi dengan mengetik:
[t0m@gw t0m]$ installpkg tightvnc-1.3.9-i486-1kjz.tgz
Tahap 3. Menjalankan VNC Server
Jalankan VNC server dengan cara:
[t0m@gw t0m]$ vncserver :20 -depth 16 -geometry 800x600 -name t0m-vnc-secure
vncserver = program vncserver
:20 = nomor display
-depth 16 = ketajaman display
-geometry = ukuran resolusi display
-name = nama koneksi
Kurang lebih ketika dijalankan akan seperti ini:
[t0m@gw t0m]$ vncserver :20 -depth 16 -geometry 800x600 -name t0m-vnc-secure You will require a password to access your desktops. Password: ******** [Masukkan password Anda] Verify: ******** Would you like to enter a view-only password (y/n)? y Password: ******** [Masukkan password Anda] Verify: ******** New 't0m-vnc-secure' desktop is gw:20 Starting applications specified in /home/t0m/.vnc/xstartup Log file is /home/t0m/.vnc/gw:20.log [t0m@gw t0m]$
Tahap 4. Port Forwarding di Putty
Silakan ke putty (saya pakai Putty versi 0.60), dan lihat bagian sebelah kiri, lalu klik SSH (nanti akan expand sendiri) lalu ke Tunnels.
Lalu seperti biasa, kita akan menghubungi server Linux menggunakan SSH. Ketika kita melakukan koneksi SSH ke server Linux, program Putty akan membuka port 5920 di komputer kita dan sekaligus menyuruh server Linux menerima koneksi privat antara port 5920 di komputer Linux dengan port 5920 di komputer saya. Koneksi ini “nebeng” koneksi si SSH, sehingga otomatis aliran datanya menjadi terenkripsi :D.
Tahap 5. Melakukan koneksi via TightVNC Viewer
Yang perlu diperhatikan adalah bahwa koneksi SSH yang terjadi tidak boleh terputus, karena koneksi VNC menggunakan koneksi SSH.
Jalankan TightVNC Viewer, lalu ikuti pada gambar
Selanjutnya akan ditanyakan autentikasi password, silakan masukkan..
Yup, saya telah login ke server Linux menggunakan VNC yang dibungkus dengan koneksi SSH, yang pastinya lebih aman.
Selamat mencoba ya 😉