Skip to main content
  1. Posts/

SSH Tunneling

·2 mins·
openssh linux openssh
Table of Contents

SSH Tunneling atau biasa disebut SSH port forwarding merupakan mekanisme di SSH untuk melakukan tunneling port aplikasi dari mesin lokal ke server remote, atau sebaliknya. Ini dapat digunakan untuk menambahkan enkripsi ke aplikasi atau untuk mengakses service tertentu secara private dan aman.

Dalam SSH tunneling, ada dua jenis forwarding yang umum digunakan yaitu remote forwarding dan local forwarding.

  • Remote Forwarding: Misalnya, Anda dapat menggunakan remote forwarding untuk mengakses layanan web (misalnya, web server Apache) yang berjalan di komputer lokal Anda melalui SSH ke server jauh. Ini akan membuat layanan web lokal Anda tersedia di server jauh.
  • Local Forwarding: Sebaliknya, Anda dapat menggunakan local forwarding untuk mengakses layanan database yang berjalan di server jauh dari aplikasi Anda yang berjalan di komputer lokal Anda. Dengan local forwarding, Anda membuat port lokal Anda tersedia di server jauh

Local Forwarding
#

Untuk mengakses layanan internal di server jauh gunakan perintah.

ssh [email protected] -L 5432:localhost:5432 -N -v
  • 5432: Port yang akan dibuat di mesin lokal
  • localhost:5432: Port di server remote yang ingin diakses

Perintah tersebut akan membuat tunnel ke port PostgreSQL (5432) agar dapat diakses dengan IP localhost di mesin lokal.

psql -h 127.0.0.1 -U username -d application_db

Anda juga bisa melakukan forward Soket Unix dengan perintah.

ssh -L /tmp/local.sock:/var/run/remote.sock [email protected]
  • /tmp/local.sock: Soket yang akan dibuat di mesin lokal.
  • /var/run/remote.sock: Soket di server remote yang ingin diakses.

Remote Forwarding
#

Untuk menggunakan remote forwarding agar layanan internal di mesin lokal dapat tersedia di server jauh gunakan perintah.

ssh [email protected] -R 5432:localhost:5432 -N -v

Selanjutnya cek apakah port PostgreSQL (5432) berhasil listen di server jauh.

# netstat -plntu | grep -i 5432
tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN      3933/sshd: root
tcp6       0      0 ::1:5432                :::*                    LISTEN      3933/sshd: root

Atau Anda dapat mengetesnya langsung menggunakan psql

psql -h 127.0.0.1 -U username -d application_db

Related

Install Redis di Linux
·1 min
linux php linux
Install Memcached di Linux
·1 min
linux php linux
Install APCu di Linux
·1 min
linux php linux
Cara Mengecek Vendor dari MAC Address
·1 min
tips linux tips
Access File Share with smbclient
·1 min
linux linux
Configure Scheduling Class and Priority Disk I/O in Linux
·2 mins
linux linux