Mengakses Komputer Host dari Komputer Remote dengan SSH Tunnel

Beberapa hari yang lalu saya ingin mengoneksikan dua buah komputer yang ada di dua tempat berbeda (kedua buah komputer menggunakan sistem operasi linux). Satu ada di Jakarta, yang lainnya ada di Bandung. Tujuan saya adalah mengirim data backup dari Jakarta ke Bandung. Cuma yang menjadi masalah adalah komputer tujuan saya di Bandung tidak punya IP publik dan routernya tidak bisa diakses karena suatu sebab. Jadi satu-satunya cara adalah komputer di Bandung yang pergi mengakses ke komputer di Jakarta yang memiliki IP publik. Untuk melakukannya, saya menggunakan ssh.

Tapi melakukan ssh dari Bandung ke Jakarta saja belum cukup, karena saat Bandung berhasil konek ke Jakarta, yang terjadi adalah komputer Bandung bisa mengakses isi komputer di Jakarta tetapi komputer Jakarta tidak bisa mengakses isi komputer Bandung. Agar bisa melakukannya bolak-balik dua arah, maka dibutuhkan parameter tambahan saat melakukan koneksi ssh, yaitu dengan cara forwarding port komputer remote dengan local port di komputer host. 

Komputer Remote
IP Publik Jakarta: 10.1.1.5
Port SSH Jakarta: 22
Username Jakarta: yudha
Port number untuk forwarding: 2222

Komputer Host
Port SSH Bandung: 22
Username Bandung: hidayat
Port number local: 22

untuk melakukan koneksi ssh dari komputer Bandung:
ssh remote.username@remote.address -R remote.port.forwarding:localhost:port.local -p remote.port.ssh

kita masukkan parameter Komputer Remote dan Komputer Host untuk melakukan koneksi dari Bandung ke Jakarta:
ssh yudha@10.1.1.5 -R 2222:localhost:22 -p 22

Dengan cara tersebut maka di komputer Jakarta akan terbuka satu port baru yaitu 2222 yang akan menjadi tunnel untuk melakukan ssh balik ke komputer Bandung.

Cara yang perlu dilakukan untuk mengakses ke komputer Bandung adalah dengan melakukan ssh ke localhost port 2222 di komputer Jakarta dari komputer Jakarta:
ssh hidayat@10.1.1.5 -p 2222

Sekarang kita sudah berhasil masuk ke komputer Bandung dan bisa melakukan backup, misalkan dengan menggunakan rsync.

Komentar

Postingan populer dari blog ini

Tidak bisa delete ke Trash di Ubuntu

Memberi Warna Git Branch di Linux (Ubuntu, CentOS, dll)