Amankan Traffik Web via SSH tunnel

Kali ini saya bereksperimen dengan SSH Tunnel. Istilah tunnel mungkin dapat dianalogikan seperti ‘pembungkus‘.  Saya punya  handphone dan ingin kirim ke luar kota. Namun aturan kantor pos tidak mengijinkan kirim paket handphone, tetapi mengijinkan paket berupa buku tulis. Oleh karena itu saya bungkus handphone tadi dgn kotak bagus dan ditulisi “buku tulis”.

Ada beberapa alasan mengapa menggunakan SSH Tunnel, yaitu :

1).  Mengamankan trafik lalu lintas data (web, smtp, ftp , VPN, dll ) dari komputer kita keluar / ke host tujuan

2).  Mem- by pass aturan firewall di tempat kita. Misal, di tempat kita tidak mengijinkan akses ke situs http://www.dilarang.com .

3).  Quota langganan ke provider internet telah habis dan kebetulan provider mengijinkan port 22 (SSH) keluar.

Alasan no 2 dan 3 , yang paling banyak menjadi motivasi orang😀

SSH ( Secure Shell ) merupakan salah satu program di linux yg berfungsi untuk remote komputer / host. Ada SSH Client dan SSH Server. SSH Server harus terinstall computer Linux. Sedangkan untuk me-remote server Linux boleh dari PC Linux atau Windows. Di Windows , kita dapat menggunakan program PUTTY, sebagai SSH client.

OpenSSH server adalah salah satu SSH server yang mendukung port forwarding.  Feature inilah yang akan kita manfaatkan untuk

‘membungkus’ dan meneruskan paket data dari traffik data lain, misal www, ftp, vpn , dll. Ada beberapa tipe port forwarding: Local, remote dan Dynamic. Penjelasan mengenai tipe-tipe ini, silahken di-google aja, yach..

 

Pada eksperimen kali ini, kita akan mengakses halaman web di Internet melalui SSH Tunnel.

Dalam eksperimen ini ,  kita asumsikan  ;

1).  program SSH Server sudah berjalan di remote host ( di kantor, kampus, sewa atau pinjam ). Dan tentunya , kita punya account disitu.

2).  Di komputer kita ada program ssh client. Pengguna Windows dapat pakai PUTTY.  Tetapi saya akan pakai SSH Client – Linux.

3).  Menggunakan mode Dynamic port forwarding.

Untuk membantu gambaran dari dynamic port forwarding, berikut ini ilustrasinya;

dynamic port forwarding

 

 

Berikut langkah – langkah untuk akses web melalui SSH Tunnel

I. Konfigurasi di mesin SSH Server, agar mendukung TCP Port Forwarding. Lakukan ini di mesin remote ( SSH Server).

a).  Edit file  /etc/ssh/sshd_config. Pastikan

AllowTcpForwarding yes

jangan lupa restart SSH servernya.

II.  Di komputer client( saya pakai Linux ). Ketikan perintah :

  ssh -C -D 1080 <IP SSH server>

opsi  ‘-C’ , untuk mengkompress data paket, biar agak cepat dikit.

Opsi ‘-D 1080’  , untuk membuat SOCK proxy pada port 1080, di localhost.

opsi  ‘<IP SSH Server>’ ,  isikan IP address dari remote host / SSH server tadi. Boleh juga pakai hostname daripada IP address.

Contoh:   ssh -C -D 1080 222.1.1.1

Periksa apakah tunnel sudah aktif pada port 1080 . Gunakan perintah ini

netstat -tulpn |grep "ssh"

III. Langkah berikutnya, mengatur konfigurasi browser kita, misal FIREFOX, agar koneksi menggunakan SOCK proxy.

a). Dari menu Edit -> Preferences ->  Advanced  -> Network -> Settings

b).  Selanjutnya, pilih ‘Manual proxy configuration:’

c).  Isi kotak ‘ SOCK host:’ 127.0.0.1   dan port : 1080.    Kotak isian lainnya blank / kosongkan.

IV. Selesai. Silahkan bebas browsing….😀

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: