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 ...

Localhost.run : Alternatif Kedua Dari Serveo.net Untuk Reverse Tunneling

Sebagai ganti dari Server Reverse SSH Tunneling Serveo.net yang kemarin down dan sampai saat ini dikarenakan phishng, kami menemukan alternatif pengganti Serveo, yaitu https://localhost.run yang tata cara pemakaiannya pun sama dengan perintah Reverse SSH Tunneling Serveo.net. Kita hanya memerlukan aplikasi ssh yang sudah tertanam di OS GNU/Linux, tetapi untuk Windows memerlukan aplikasi Putty atau BitviseSSH Client, oke gak usah panjang lebar kita langsung saja ke tata cara pemakaian aplikasi tersebut pada konsol / CLI / Bash. 1. Pastikan anda memiliki koneksi yang terhubung ke internet. Untuk mengujinya bisa menggunakan perintah ping ke alamat 8.8.8.8 ( DNS Google ). 2. Jika sudah periksalah port service yang akan di ekspos ke Internet. 3. Selanjutnya, kita ketikkan  ssh -R 80 : localhost : 8080 ssh.localhost.run  Keterangan : Port 80 adalah port server tujuan & 8080 adalah port server lokal. Untuk mengakses server kita dari internet, tinggal copy link yang ...