Kupas Tuntas SSH Tunneling
Apa itu SSH Tunneling ?
SSH Tunneling adalah suatu teknik yang lazim digunakan oleh para hacker
untuk menembus firewall, IDS, IPS atau apapun itu di perbatasan protokol
jaringan. Intinya, how to crack behind the enemy lines.
SSH Tuneling, jika kita mencari pengertian sebenarnya dari teknik ini
adalah, ada 2 kata penting yaitu antara SSH dan Tunneling.
SSH adalah kependekan dari Secure Shell yang memungkinkan user SSH untuk
mengirimkan paket data yang telah di bungkus atau di enkapsulasi di
dalam jaringan protokol HTTP menggunakan Protokol SSL sebagai Payload.
Sedangkan Tunneling adalah mengirimkan data melalui koneksi yang telah
terbentuk. Contoh sederhananya, ketika anda membuka
http://www.paypal.com/ maka secara otomatis URL Browser anda akan
diredirect ke koneksi HTTPS. Apakah itu koneksi HTTPS ? Koneksi HTTPS
adalah koneksi HTTP biasa yang di kirimkan melalui koneksi protokol SSL,
atau istilah inggeris nya "HTTP over SSL" atau HTTP nya di bungkus
menggunakan SSL. Protokol SSL ini memerlukan public key certificate
dengan formatX.509 yang telah di authorize Certificate Authority resmi
seperti APGM, COA, CA, dll
Artikel web ini dilindungi DMCA Google harap sertakan sumber artikel:
http://www.system70mb.com/2014/02/penjelasan-lengkap-ssh-tunneling-dan.html#ixzz2t2MLwIGy
Protokol encapsulation (seterusnya saya sebut enkapsulasi biar lebih
mudah) adalah sebuah proses, dimana paket data yang di kirimkan
olehclient to client dibungkus dengan SSL sebagaipayload.
Enkapsulasi juga terjadi dalam layer modelTCP/IP, yaitu data pada layer
yang lebih atas menjadi payload dan di-enkapsulasi dengan protokol pada
layer di bawahnya. Kita ibaratkan paket data yang mau kita kirim kita
bungkus ke dalam kapsul yang agak besar, dimana di dalam kapsul tersebut
terdapat kapsul yang lebih kecil. Kapsul ini di kirimkan melalui
terowongan dengan addres tunnel endpoint yang disebut dengan
encapsulation header. Tujuan akhir tetap di paket lama, ketika sampai
pada endpoint kapsul dibuka dan mengirimkan kapsul yang lebih kecil di
dalamnya.
Berikut urutan pengiriman data melalui proses enkapsulasi :
Paket data (dalam hal ini e-mail) dalam kapsul melalui HTTP, di bungkus
dengan kapsul yang lebih besar yaitu paket kapsul SMTP (simple mail
transfer protocol) , lalu di masukkan lagi ke dalam kapsul TCP
(Transmission Transfer Protocol) lalu di masukkan lagi ke dalam kapsul
IP (Internet Protocol) dan akhirnya di masukkan kedalam kapsul yang
terbesar bernama ethernet Paket inilah yang akan di terima oleh
clienttujuan. Jika di buka maka akan ada IP -> TCP -> SMTP ->
ethernet -> paket data.
Proxy via SSH Tunnel

Dalam penerapan konsep SSH Tunneling ada sebuah istilah, jika kita mau
melakukan tunneling gunakan saja proxy ssh. Apa maksudnya ya ?
Maksudnya adalah, disaat kita mau mengakses sebuah situs tertentu tapi
situ itu di blok oleh seorang SysAdmin sebuah jaringan, maka kita bisa
menggunakan proxy sebagai jembatan untuk mengakses situs yang di blok
tersebut. Dalam proses ini, client yang request data sebelum menuju ke
situs yang di blok, terlebih dahulu melalui jembatanproxy SSH ini
melalui port tertentu yang telah di tetapkan, ya anggap saja port 1080
(port ini biasa saya pakai, hehe).
Dasar teorinya adalah akses internet anda di-"tunell" melalui saluran
SSH, lalu di remote host (host yang anda SSH kan ke sana) anda melakukan
port forwarding. Penjelasan tentang port forwarding akan dijelaskan
setelah segmen proxy ssh ini. Lalu bagaimana membuat proxy via ssh ini ?
- Silakan anda download software rs4u di situs berikut : http://download.rs4u.com/
- Install dan jalankan program tersebut.
- Lakukan konfigurasi akun SSH (catatan : anda harus mempunyai akun
SSH). Klik Tools -> Config. IsikanHost, Port, Username, dan Password
sesuai dengan akun SSH anda.
- Pada port forward definition, masukkan listen address adalah
localhost (127.0.0.1) dengan portsembarang (katakanlah port 30000) dan
pada forward address adalah proxy server ISP anda (misalnya proxy.cbn.net.id jika anda pelanggan CBN) beserta portnya (biasanya 8080).
- Setting Proxy via SSH Tunneling selesai.
- Langkah terakhir adalah arahkan proxy address browser anda ke
localhost. Berdasarkan contoh diatas, proxy address adalah
127.0.0.1:8080 . Selesai. Jika anda melakukan dengan benar, sekarang
anda bisa menge-browse internet dengan proxy ISP.
Untuk lebih jelasnya silahkan lihat gambar di bawah ini :
Sebenarnya, selain menggunakan software di atas, kita bisa menggunakan
software Bitvise sebagai SSH Client untuk menghubungkan client komputer
ke SSH Server dan dengan bantuan proxifier pula dapat mempermudah
penggunaan listen port yang akan secara otomatis me-listen port kan
browser atau aplikasi lainnya
Dari ilustrasi gambar di samping, kita melihat bahwa paket data yang di
request dari komputer client masuk ke dalam IP yang berbeda. Ini juga
berlaku dengan IP dan Port yang berbeda pula. Port Forwarding adalah
pengalihan (redirecttion) sebuah koneksi dari IP:Port asal ke IP:Port
tujuan. Misal jikalau kita telah men-set browser kita ke IP:Port
http://127.0.0.1:8080 ke IP:Port http://8.8.8.8:80 (IP Addres Google)
maka ketika kita mengarahkan browser kita URL http://127.0.0.1:8080 maka
akan terforward ke http://8.8.8.8:80.
Pada SSH port forwarding ini adalah bahasan menarik yang perlu untuk
di-eksplorasi lagi kegunaan serta fungsinya. Beberapa fungsi port
forwarding adalah Melakukan koneksi aplikasi TCP (misalnya : webserver,
mail server, FTPserver) dengan lebih secure (aman) dan juga bisa
berfungsi untuk melakukan koneksi dengan membypass (melewati) firewall
atau proxy setempat.
Local dan Remote Port Forwarding
Ada dua macam port forwarding, yakni local dan remote. Local port
forwardingterjadi apabila aplikasi klien TCP berada di komputer kita,
dan server aplikasi TCPyang kita tuju berada di sisi yang lain.
Sebaliknya, Remote Port Forwarding terjadiapabila aplikasi server TCP
adalah komputer kita, sedangkan aplikasi klien berada dikomputer yang
lain (remote computer). Local port forwarding dilakukan dengan
jalanmemanfaatkan port di komputer kita (mulai dari 1024 sampai 65535)
untuk melewatkan koneksi sebuah aplikasi TCP, kemudian komputer kita
akan membuatkoneksi ke komputer remote pada port 22 dan akan mengirimkan
data kita ke komputer tujuan melalui port 22. Demikian pula
sebaliknya,. Untuk lebih jelasnya,amati tiga gambar di bawah ini :
Praktik melakukan Port Forwarding
Sebelum melakukan praktik Port Forwarding setidaknya anda harus memenuhi
beberapa syarat berikut untuk kelancara praktik ini sendiri.
- Mutlak ! Anda harus mempunyai akun SSH yang mengizinkan untuk port forwarding ke server yang di tuju.
- Pastikan Anda mengetahui server tujuan yang akan Anda tuju untuk
melakukan bypass terhadap restriksi firewall atau proxy di institusi
Anda.Untuk kasus ini (koneksi HTTP), kita akan mencoba melewatkan data
melaluisebuah server proxy di jaringan lain yang memungkinkan kita untuk
membypass firewall di jaringan kita.
Langkah-langkahnya :
1. Lakukan autentifikasi koneksi internet anda dengan cara login ke
server SSH anda. Bisa menggunakan software rs4u yang telah di jelaskan
di atas, namun saya sarankan menggunakan bitvise ssh client
karenainterface menarik dan terdapat banyak fitur
Silahkan klik tab Service dan atur sesuai dengan gambar berikut :


Gambar diatas, menjelaskan bahwa browser akan di-listen port kan ke
127.0.0.1:1080 melalui SSH Client, jadi ketika browser mengakses URL
http://127.0.0.1:1080 maka secara otomatis ke URL tujuan dari Server
yang mau dituju.
3. Terakhir setting browser anda ke No Proxy. (saya menggunakan browser Maxthon)
4.
Coba untuk browsing. Kini Anda bisa melewati restriksi firewall
0 komentar:
Posting Komentar