Menggunakan SSH Tunnel untuk Akses Port Tertentu yang di Blok Firewall

Salah satu klien yang saya tanganiĀ  memiliki IP public yang portnya terbatas untukĀ  dibuka secara penuh. Atas pertimbangan efisiensi dan keterbatasan tersebut, akhirnya saya meminta mereka untuk membuka port SSH agar saya bisa melakukan akses SSH dan bekerja secara remote. Sebagian besar pekerjaan bisa dilakukan secara remote menggunakan akses SSH karena server openSUSE/SLES yang dipasang di klien secara default sudah menyediakan tools konfigurasi YAST yang bisa dijalankan dalam modus konsole. Hanya ada satu masalah yang sukar saya eliminasi, yaitu saat mengakses Zimbra Admin dalam modus web untuk mengatur integrasi domain antara Zimbra dengan Samba.

Zimbra Admin yang akan saya aksesĀ  berjalan pada salah satu server (bukan server dimana akses SSH berada). Zimbra Admin ini bekerja pada port 7071 menggunakan protokol SSL. Saya sudah mencoba mengaksesnya menggunakan text browser lynx atau w3m namun Zimbra menolak diakses oleh unsupported browser. Hal yang sama juga terjadi saat saya menggunakan akses ssh -X (koneksi ke tujuan dalam modus XWindows) dan menjalankan browser ringan midori atau kazehakase.

Saya baru bisa mengakses Zimbra Admin dengan cara menjalankan Firefox melalui akses ssh -X tapi bayangkan saja jika anda menjalankan Firefox yang cukup rakus memory dan dijalankan dalam koneksi standar ADSL. Meski bisa diakses, kecepatannya yang sangat lambreta membuat saya senewen.

Setelah menimbang-nimbang cara apa yang akan saya lakukan, akhirnya saya memutuskan model SSH tunelling yang biasanya saya gunakan untuk mempercepat akses browsing.

Berikut adalah caranya, saya lakukan pada komputer saya yang menggunakan openSUSE 11.2. Jika menggunakan sistem Windows, langkah yang sama bisa dilakukan menggunakan Putty.

  1. Buka konsole dan jalankan perintah untuk mengakses SSH tunelling ke server tujuan, misalnya :
    [code language=’cpp’]
    ssh -o “CompressionLevel=9” -C -D port-yang-diciptakan -p port-yang-dibuka-di-server-tujuan -N username@ip-tujuan
    [/code]
    Contoh :
    [code language=’cpp’]
    ssh -o “CompressionLevel=9” -C -D 9999 -p 22 -N vavai@vavai.com
    [/code]
    atau jika menggunakan IP :
    [code language=’cpp’]
    ssh -o “CompressionLevel=9” -C -D 9999 -p 22 -N vavai@208.67.222.222
    [/code]
  2. Buka browser, misalnya Firefox, masuk ke menu Edit | Preferences (kalau di Windows ada di menu Tools | Option), Advanced | Network dan ubah akses menggunakan proxy melalui protokol Socks sesuai port yang dibuka(dalam contoh adalah port 9999)

That’s it. Sekarang kita bisa menggunakan Firefox seolah-olah Firefox yang kita jalankan adalah Firefox di server tujuan. Misalnya, saya bisa mengakses Zimbra Admin di tujuan yang beralamat pada IP lokal 192.168.0.5 port 7071 dan akses SSL dengan mengetikkan alamat URL :

https://192.168.0.5:7071 pada URL browser.

Hal yang sama bisa kita lakukan untuk alamat web yang lain, misalnya akses ke http://localhost berarti akan membuka alamat web di web server tujuan (IP 208.67.222.222 alias 192.168.0.1), bukan web server lokal yang kita miliki.

3 thoughts on “Menggunakan SSH Tunnel untuk Akses Port Tertentu yang di Blok Firewall

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.