Debian secara baku biasanya memasang layanan servernya, VNC, X11, MySQL, dsb. ke localhost. Artinya, sambungan dari jaringan tidak dapat dilakukan. Hal ini untuk mencegah orang ketiga menguping data yang lewat.

Bagaimana jika hendak mengakses layanan tersebut lewat jaringan?

Gampang, silakan gunakan Port Forwarding di GNU/Linux Anda.

$ ssh -L$PORT_SERVER:$IP_SERVER:$PORT_KITA $USERNAME@$IP_SERVER -p$PORT_SSH -N &

Contohnya mengakses VNC:

$ ssh -L5900:192.168.0.4:5900 akyu@192.168.0.4 -p8080 -N &
[1] 5795

Artinya:

ssh
perintah ssh.
-L5900:192.168.0.4:5900
Port 5900 server (IP-nya 192.168.0.4 diarahkan ke 5900 lokal.
akyu@192.168.0.4
Login SSH yang dipakai untuk menghubungi server.
-N
Artinya hanya lakukan Port Forwarding tanpa membuka terminal di sana.
-p8080
Biasanya ini Anda tidak perlu pakai, karena secara baku SSH berjalan di port 22. Namun, beberapa orang paranoid (baca:admin) suka menjalankan layanan-layanan pada port yang tidak baku.
&
Jalankan perintah ini di latar belakang.
[1] 5795
Ini tidak diketikkan, melainkan keluaran dari perintah tersebut.

Perhatikan bahwa saya menyertakan “[1] 5795”. Itu adalah PID aplikasi ssh yang kita jalankan di latar. PID ini dibutuhkan untuk menghentikan program ssh bila sudah selesai digunakan.

Nah, setelah ssh dijalankan, klien bisa segera menghubungi lokal saja, contohnya:

$ vncviewer localhost

Apabila sudah selesai, bunuh proses tersebut dengan menyebut PID-nya. Contoh membunuh perintah di atas:

$ kill 5795

TERBARU:

Iang memberikan alternatif untuk menggunakan parameter “-f” dan bukan “&”. Dari manual yang saya baca, “-f” cara yang lebih elegan karena ia akan menanyakan sandi Anda terlebih dahulu sebelum ssh ke latar. Hanya, cara ini tidak memberitahukan PID berapa proses ssh tersebut. Untuk menghentikan ssh, kita harus terlebih dahulu melihat PID ssh:

$ps ax | grep ssh 
9449 ?        Ss     0:00 ssh -L5900:192.168.0.4:5900 akyu@192.168.0.4 -p8080 -N -f
15237 ?        Ss     0:00 /usr/sbin/sshd

Pada perintah di atas, PID ssh adalah 9449.