Langsung ke konten utama

Jurang Pengembangan Software di Dunia Open-Source

     E ra D i srupsi      2 025 ini adalah tahun terpesat dimana dunia A rtificial I ntelligence berkembang pesat, dimana pengerjaan kode sudah terlampaui oleh sistem kecerdasan buatan ini, semua aspek komprehensif didalam dunia programming seperti syntax itu sudah terkuasai oleh data, sehingga memungkinkan penggunanya untuk cukup memerintahkan penulisan kode yang begitu sederhana. Namun, di lain waktu, cara orang untuk mempelajari bahasa pemrograman pun akan terlihat lebih sederhana karena bantuan alat kecerdasan buatan, AI .

SSH : Dynamic Port Forwarding Tunnel di GNU/Linux Debian/Ubuntu

Satu layanan pengontrol Shell Linux dengan menggunakan koneksi jaringan ini mempunyai fitur lain, yaitu adalah mentunnel koneksi dengan Dynamic Port Forwarding. Dynamic Port Forwarding adalah penerusan koneksi Server SSH ke alamat dan port dinamis ( berubah-ubah ). Tidak sama dengan halnya Local Port Port forwarding yang hanya bisa mengkoneksikan ke satu host tujuan saja, sehingga satu fitur ini lebih unggul dalam tunneling.


Do It Yourself

Dibutuhkan satu alat tempur bernama Proxychains di Linux Debian/Ubuntu agan/sister. Hingga agan butuh koneksi internet dengan kuota terlebih dahulu untuk menginstall Proxychains. Perintahkan install proxychains di Shell Linux :

sudo apt-get install proxychains

SSH Tunneling tidak dipakai sembarangan dan mesti memakai perantara untuk menjalurkannya, Proxychains berguna sebagai penyalur koneksi data SSH nanti supaya kita bisa koneksi ke server tujuan. Perintah SSH Tunneling akan membuka suatu port di komputer kita ( 127.0.0.1 / localhost ). Kita akan menggunakan alamat 127.0.0.1 dan port tertentu sebagai Server Proxy Socks5 pada Proxychains.

Kita setting IP dan Port Proxychains supaya ia bisa menjalurkan koneksi data SSH dengan memperintahkan di Shell Linux :


sudo nano /etc/proxychains.conf
Scroll ke baris paling bawah. Disana ada teks socks4 127.0.0.1 9050. Kita ubah type proxy menjadi socks5 dan tentukan portnya menurut agan/sister sendiri ( Sebagai contoh saya menggunakan port 7331 yang ada di gambar di atas ). Save settingan dengan menekan CTRL + X lalu Enter.

SSH Dynamic Port Forwarding

Kita akan mengkoneksikan ke server SSH setelah pengaturan proxychains selesai. Perintahkan di Shell Linux untuk memulai SSH Tunnel :

ssh -N -g -4 -D PORTPROXYCHAINS username@serverssh -p PORTSSH
Perintah SSH diatas memerintahkan untuk konek ke server SSH dan membuka port 7331 di alamat 127.0.0.1. Alamat 127.0.0.1:7331 adalah alamat server SSH yang telah ditanamkan di komputer kita. Dimana nanti kita akan konek ke semua host/server tujuan melewati 127.0.0.1:7331. Perintah diatas memiliki arti :
  • ssh = aplikasi ssh
  • -N = memerintahkan untuk tidak meremote shell server SSH ( karena SSH pada umumnya digunakan untuk mengontrol server lewat Shell SSH )
  • -g = Memperbolehkan server SSH supaya bisa terhubung dengan host tujuan kita
  • -4 = Tunneling dengan IPv4
  • -D = Perintah Dynamic Port Forwarding
  • PORTPROXYCHAINS = Gantikan bagian ini dengan port yang telah tercantum di settingan proxychains tadi
  • username = Gantikan dengan username SSH
  • serverssh = Gantikan dengan alamat server SSH
  • -p PORTSSH = Gantikan dengan port server SSH
Kini sudah jelas bahwa alamat 127.0.0.1:7331 bekerja sebagai proxy. Kita juga telah setting alamat tersebut di Proxychains sebelumnya.




Selancar

Untuk memulai koneksi tunneling, perintahkan di Shell Linux :

proxychains <PROGRAM>
Disini saya contohkan membuka aplikasi browser QupZilla dengan proxychains untuk browsing, lalu melihat apakah IP saya telah berubah menjadi IP server SSH. Mari kita Cek, apakah telah berhasil ditunnel ke lewat server SSH yang saya gunakan?



IP Publik telah berubah menjadi IP server SSH yang digunakan, yakni 49.213.16.205 yang berlokasi di Singapore, bukan Indonesia.


Tunneling SSH ke aplikasi curl dengan proxychains



Tunneling SSH ke aplikasi nslookup dengan proxychains


SSH Tunneling hanya support protokol TCP dan UDP saja.
Contohnya Tunneling TCP mengkoneksikan ke situs web ( Port 80 ) dengan browser dan curl seperti gambar diatas. Dan tunneling UDP ke port 53 dengan NSLOOKUP ( alat pengecek IP address host. ).
Namun SSH tidak mendukung tunnel ke paket lain, contohnya protokol ICMP dengan alat ping :


Terlihat disana ada pesan 100% packet loss, tidak ada paket yang terkirim.

Demikian adalah Tunneling menggunakan SSH dengan teknik Dynamic Port Forwarding. Selebihnya SSH Tunneling ini dapat bermanfaat untuk agan/sister, walaupun SSH Tunnel ini hanya support TCP dan UDP saja, namun kecepatan transfer datanya sangat cepat dan aman. Ingin tunnel semua protokol? Cek posting tunneling menggunakan OpenVPN 😃

Komentar

Postingan populer dari blog ini

Jurang Pengembangan Software di Dunia Open-Source

     E ra D i srupsi      2 025 ini adalah tahun terpesat dimana dunia A rtificial I ntelligence berkembang pesat, dimana pengerjaan kode sudah terlampaui oleh sistem kecerdasan buatan ini, semua aspek komprehensif didalam dunia programming seperti syntax itu sudah terkuasai oleh data, sehingga memungkinkan penggunanya untuk cukup memerintahkan penulisan kode yang begitu sederhana. Namun, di lain waktu, cara orang untuk mempelajari bahasa pemrograman pun akan terlihat lebih sederhana karena bantuan alat kecerdasan buatan, AI .

Linux NAT : Sekedar Coretan Tentang NAT

Kadang orang-orang yang sering ngulik pada konsep jaringan menemukan hal ini, NAT. Mungkin alasannya ketika ingin memblokir atau mencegah koneksi agar supaya tidak masuk ke mesin Linux yang dipakainya, atau mungkin gimana cara jaringan lokal bisa konek ke Internet lewat mesin Linux yang dipakainya. Kepanjangan NAT adalah Network Address Translation , atau bahasanya Translasi Alamat Jaringan. Ya, definisi NAT yang diambil di Wikipedia adalah "A method of remapping one IP address space into another by modifying network address information in the IP header of packets while they are in transit across a traffic routing device." Yang artinya "Sebuah metode untuk memetakan ulang satu ruang IP address ke IP address yang informasinya dimodifikasi di header paket disaat paket itu sedang transit di perangat perutean lalu lintas". NAT bisa juga dibilang salah satu fungsi dari router, karena memang fungsinya untuk mengubah informasi paket IP address, mulai dari destination ...

SSH : Reverse Tunneling

SSH Reverse Tunneling ini satu cara buat kita yang mau jadikan komputer Linux kita supaya bisa diakses lewat jaringan internet bantuan Alamat IP Public. Reverse SSH Tunneling ini sama dengan SSH Tunneling biasa. Cuma bedanya kalau Reverse SSH Tunneling ini titik aksesnya ada di server SSH itu sendiri supaya host/server tujuan itu bisa diakses di jaringan internet lewat port yang terbuka di server SSH. Reverse SSH Gratis Serveo.net Serveo ini adalah salah satu penyedia Layanan Reverse SSH yang semua orang dapat memakainya secara gratis. Layanan ini dapat kita pakai dengan perintah ssh di OS Linux dengan opsi -R .        ssh -R [Remote Port]:[Destination Address]:[Destination Port] serveo.net -p 22 Disini kita dapat menentukan Remote Port, Destination Address beserta Destination Portnya. Untuk itu, Remote Port adalah nomor port yang akan menjadi titik akses dari server. Destination Address adalah alamat tujuan ketika kita terhubung ke server SSH dengan...