Cara Menggunakan Tunneling SSH untuk Mengakses Server yang Dibatasi dan Menjelajah dengan Aman

Jul 12, 2025
Privasi dan Keamanan

Klien SSH terhubung ke Server Secure Shell , yang memungkinkan Anda menjalankan perintah terminal seolah-olah Anda sedang duduk di depan komputer lain. Tetapi klien SSH juga memungkinkan Anda untuk "terowongan" port antara sistem lokal Anda dan server SSH jarak jauh.

Ada tiga jenis tunneling SSH, dan semuanya digunakan untuk tujuan yang berbeda. Masing-masing melibatkan penggunaan server SSH untuk mengarahkan lalu lintas dari satu port jaringan ke port lain. Lalu lintas dikirim melalui koneksi SSH yang dienkripsi, sehingga tidak dapat dipantau atau diubah saat transit.

Anda dapat melakukan ini dengan ssh perintah yang disertakan di Linux, macOS, dan lainnya Seperti UNIX sistem operasi. Pada Windows, yang tidak menyertakan perintah ssh bawaan, kami merekomendasikan alat gratis PuTTY untuk terhubung ke server SSH. Ini mendukung tunneling SSH juga.

Penerusan Port Lokal: Jadikan Sumber Daya Jarak Jauh Dapat Diakses di Sistem Lokal Anda

“Penerusan porta lokal” memungkinkan Anda mengakses sumber daya jaringan lokal yang tidak terpapar ke Internet. Misalnya, Anda ingin mengakses server database di kantor Anda dari rumah. Untuk alasan keamanan, server database tersebut hanya dikonfigurasi untuk menerima koneksi dari jaringan kantor lokal. Tetapi jika Anda memiliki akses ke server SSH di kantor, dan server SSH tersebut mengizinkan koneksi dari luar jaringan kantor, maka Anda dapat menyambung ke server SSH tersebut dari rumah dan mengakses server basis data seolah-olah Anda sedang berada di kantor. Hal ini sering terjadi, karena lebih mudah mengamankan satu server SSH dari serangan daripada mengamankan berbagai sumber daya jaringan yang berbeda.

Untuk melakukannya, Anda membuat koneksi SSH dengan server SSH dan memberi tahu klien untuk meneruskan lalu lintas dari port tertentu dari PC lokal Anda — misalnya, port 1234 — ke alamat server basis data dan portnya di jaringan kantor. Jadi, ketika Anda mencoba mengakses server database di port 1234 PC Anda saat ini, "localhost", lalu lintas tersebut secara otomatis "disalurkan" melalui koneksi SSH dan dikirim ke server database. Server SSH berada di tengah, meneruskan lalu lintas bolak-balik. Anda dapat menggunakan baris perintah atau alat grafis untuk mengakses server database seolah-olah itu berjalan di PC lokal Anda.

Untuk menggunakan penerusan lokal, sambungkan ke server SSH secara normal, tetapi juga berikan -L argumen. Sintaksnya adalah:

ssh -L local_port: remote_address: remote_port [email protected]

Misalnya, server database di kantor Anda berada di 192.168.1.111 di jaringan kantor. Anda memiliki akses ke server SSH kantor di ssh.youroffice.com , dan akun pengguna Anda di server SSH adalah bob . Dalam hal ini, perintah Anda akan terlihat seperti ini:

ssh -L 8888:192.168.1.111:1234 [email protected]

Setelah menjalankan perintah itu, Anda akan dapat mengakses server database di port 8888 di localhost. Jadi, jika server database menawarkan akses web, Anda dapat memasang http: // localhost: 8888 ke browser web Anda untuk mengaksesnya. Jika Anda memiliki alat baris perintah yang memerlukan alamat jaringan dari database, Anda harus mengarahkannya ke localhost: 8888. Semua lalu lintas yang dikirim ke port 8888 di PC Anda akan disalurkan ke 192.168.1.111:1234 di jaringan kantor Anda.

Ini sedikit lebih membingungkan jika Anda ingin terhubung ke aplikasi server yang berjalan pada sistem yang sama dengan server SSH itu sendiri. Misalnya, Anda memiliki server SSH yang berjalan pada port 22 pada komputer kantor Anda, tetapi Anda juga memiliki server basis data yang berjalan pada port 1234 pada sistem yang sama dengan alamat yang sama. Anda ingin mengakses server database dari rumah, tetapi sistem hanya menerima koneksi SSH pada port 22 dan firewall-nya tidak mengizinkan koneksi eksternal lainnya.

Dalam kasus ini, Anda dapat menjalankan perintah seperti berikut:

ssh -L 8888: localhost: 1234 [email protected]

Ketika Anda mencoba mengakses server database di port 8888 pada PC Anda saat ini, lalu lintas akan dikirim melalui koneksi SSH. Ketika tiba di sistem yang menjalankan server SSH, server SSH akan mengirimkannya ke port 1234 di "localhost", yang merupakan PC yang sama yang menjalankan server SSH itu sendiri. Jadi "localhost" pada perintah di atas berarti "localhost" dari perspektif server jarak jauh.

Untuk melakukan ini pada aplikasi PuTTY pada Windows, pilih Sambungan> SSH> Tunnels. Pilih opsi "Lokal". Untuk "Port Sumber", masukkan porta lokal. Untuk “Tujuan”, masukkan alamat tujuan dan port dalam bentuk remote_address: remote_port.

Misalnya, jika Anda ingin menyiapkan terowongan SSH yang sama seperti di atas, Anda akan masuk 8888 sebagai port sumber dan localhost:1234 sebagai tujuan. Klik "Add" setelahnya dan kemudian klik "Open" untuk membuka koneksi SSH. Anda juga perlu memasukkan alamat dan port server SSH itu sendiri di layar "Sesi" utama sebelum menghubungkan, tentunya.

Penerusan Port Jarak Jauh: Membuat Sumber Daya Lokal Dapat Diakses pada Sistem Jarak Jauh

"Penerusan port jarak jauh" adalah kebalikan dari penerusan lokal, dan tidak sering digunakan. Ini memungkinkan Anda untuk membuat sumber daya di PC lokal Anda tersedia di server SSH. Misalnya, Anda menjalankan server web di PC lokal yang Anda duduki di depannya. Namun PC Anda berada di belakang firewall yang tidak mengizinkan lalu lintas masuk ke perangkat lunak server.

Dengan asumsi Anda dapat mengakses server SSH jarak jauh, Anda dapat tersambung ke server SSH tersebut dan menggunakan penerusan port jarak jauh. Klien SSH Anda akan memberi tahu server untuk meneruskan port tertentu — katakanlah, port 1234 — di server SSH ke alamat dan port tertentu pada PC atau jaringan lokal Anda saat ini. Ketika seseorang mengakses port 1234 di server SSH, lalu lintas tersebut secara otomatis akan "disalurkan" melalui koneksi SSH. Siapapun yang memiliki akses ke server SSH akan dapat mengakses server web yang berjalan di PC Anda. Ini secara efektif merupakan cara untuk membuat terowongan melalui firewall.

Untuk menggunakan penerusan jarak jauh, gunakan ssh perintah dengan -R argumen. Sintaksnya sebagian besar sama dengan penerusan lokal:

ssh -R remote_port: local_address: local_port [email protected]

Misalkan Anda ingin membuat aplikasi server yang mendengarkan di port 1234 di PC lokal Anda tersedia di port 8888 di server SSH jarak jauh. Alamat server SSH adalah ssh.youroffice.com dan nama pengguna Anda di server SSH adalah bob . Anda akan menjalankan perintah berikut:

ssh -R 8888: localhost: 1234 [email protected]

Seseorang kemudian dapat terhubung ke server SSH di port 8888 dan koneksi itu akan disalurkan ke aplikasi server yang berjalan di port 1234 di PC lokal tempat Anda membuat koneksi.

Untuk melakukan ini di PuTTY pada Windows, pilih Sambungan> SSH> Tunnels. Pilih opsi "Remote". Untuk "Port Sumber", masukkan port jarak jauh. Untuk “Tujuan”, masukkan alamat tujuan dan port dalam format local_address: local_port.

Misalnya, jika Anda ingin menyiapkan contoh di atas, Anda akan memasukkan 8888 sebagai port sumber dan localhost:1234 sebagai tujuan. Klik "Add" setelahnya dan kemudian klik "Open" untuk membuka koneksi SSH. Anda juga perlu memasukkan alamat dan port server SSH itu sendiri di layar "Sesi" utama sebelum menghubungkan, tentunya.

Orang-orang kemudian dapat terhubung ke port 8888 di server SSH dan lalu lintas mereka akan disalurkan ke port 1234 di sistem lokal Anda.

Secara default, server SSH jarak jauh hanya akan mendengarkan koneksi dari host yang sama. Dengan kata lain, hanya orang-orang di sistem yang sama dengan server SSH itu sendiri yang dapat terhubung. Ini untuk alasan keamanan. Anda harus mengaktifkan opsi "GatewayPorts" di sshd_config di server SSH jarak jauh jika Anda ingin mengganti perilaku ini.

Penerusan Port Dinamis: Gunakan Server SSH Anda sebagai Proksi

TERKAIT: Apa Perbedaan Antara VPN dan Proksi?

Ada juga "penerusan port dinamis", yang berfungsi mirip dengan proxy atau VPN. Klien SSH akan membuat file Proksi SOCKS Anda dapat mengkonfigurasi aplikasi yang akan digunakan. Semua lalu lintas yang dikirim melalui proxy akan dikirim melalui server SSH. Ini mirip dengan penerusan lokal — ini mengambil lalu lintas lokal yang dikirim ke port tertentu pada PC Anda dan mengirimkannya melalui koneksi SSH ke lokasi yang jauh.

TERKAIT: Mengapa Menggunakan Jaringan Wi-Fi Publik Bisa Berbahaya, Bahkan Saat Mengakses Situs Web Terenkripsi

Misalnya, Anda menggunakan jaringan Wi-Fi publik. Yang kamu ingin menjelajah dengan aman tanpa mengintip . Jika Anda memiliki akses ke server SSH di rumah, Anda dapat menyambungkannya dan menggunakan penerusan port dinamis. Klien SSH akan membuat proxy SOCKS di PC Anda. Semua lalu lintas yang dikirim ke proxy itu akan dikirim melalui koneksi server SSH. Tidak seorang pun yang memantau jaringan Wi-Fi publik akan dapat memantau penjelajahan Anda atau menyensor situs web yang dapat Anda akses. Dari sudut pandang situs web mana pun yang Anda kunjungi, Anda seolah-olah sedang duduk di depan PC Anda di rumah. Ini juga berarti Anda dapat menggunakan trik ini untuk mengakses situs web khusus AS saat berada di luar AS — dengan asumsi Anda memiliki akses ke server SSH di AS, tentunya.

Sebagai contoh lain, Anda mungkin ingin mengakses aplikasi server media yang Anda miliki di jaringan rumah Anda. Untuk alasan keamanan, Anda mungkin hanya memiliki server SSH yang terekspos ke Internet. Anda tidak mengizinkan koneksi masuk dari Internet ke aplikasi server media Anda. Anda dapat mengatur penerusan port dinamis, mengkonfigurasi browser web untuk menggunakan proxy SOCKS, dan kemudian mengakses server yang berjalan di jaringan rumah Anda melalui browser web seolah-olah Anda sedang duduk di depan sistem SSH Anda di rumah. Misalnya, jika server media Anda terletak di port 192.168.1.123 di jaringan rumah Anda, Anda dapat memasukkan alamatnya 192.168.1.123 ke dalam aplikasi apa pun yang menggunakan proxy SOCKS dan Anda akan mengakses server media seolah-olah Anda berada di jaringan rumah.

Untuk menggunakan penerusan dinamis, jalankan perintah ssh dengan -D argumen, seperti ini:

ssh -D local_port [email protected]

Misalnya, Anda memiliki akses ke server SSH di ssh.yourhome.com dan nama pengguna Anda di server SSH adalah bob . Anda ingin menggunakan penerusan dinamis untuk membuka proxy SOCKS di port 8888 pada PC saat ini. Anda akan menjalankan perintah berikut:

ssh -D 8888 [email protected]

Anda kemudian dapat mengkonfigurasi browser web atau aplikasi lain untuk menggunakan alamat IP lokal Anda (127.0.01) dan port 8888. Semua lalu lintas dari aplikasi itu akan dialihkan melalui terowongan.

Untuk melakukan ini di PuTTY pada Windows, pilih Sambungan> SSH> Tunnels. Pilih opsi "Dinamis". Untuk "Port Sumber", masukkan porta lokal.

Misalnya, jika Anda ingin membuat proxy SOCKS di port 8888, Anda akan memasukkan 8888 sebagai port sumber. Klik "Add" setelahnya dan kemudian klik "Open" untuk membuka koneksi SSH. Anda juga perlu memasukkan alamat dan port server SSH itu sendiri di layar "Sesi" utama sebelum menghubungkan, tentunya.

Anda kemudian dapat mengkonfigurasi aplikasi untuk mengakses proxy SOCKS di PC lokal Anda (yaitu, alamat IP 127.0.0.1, yang mengarah ke PC lokal Anda) dan menentukan porta yang benar.

TERKAIT: Cara Mengkonfigurasi Server Proxy di Firefox

Misalnya, Anda bisa konfigurasikan Firefox untuk menggunakan proxy SOCKS . Ini sangat berguna karena Firefox dapat memiliki setelan proxy sendiri dan tidak harus menggunakan setelan proxy di seluruh sistem. Firefox akan mengirimkan lalu lintasnya melalui terowongan SSH, sementara aplikasi lain akan menggunakan koneksi Internet Anda secara normal.

Saat melakukan ini di Firefox, pilih "Konfigurasi proxy manual", masukkan "127.0.0.1" ke dalam kotak host SOCKS, dan masukkan port dinamis ke kotak "Port". Biarkan kotak HTTP Proxy, SSL Proxy, dan FTP Proxy kosong.

Terowongan akan tetap aktif dan terbuka selama Anda memiliki koneksi sesi SSH yang terbuka. Saat Anda mengakhiri sesi SSH dan memutuskan sambungan dari server, terowongan juga akan ditutup. Cukup sambungkan kembali dengan perintah yang sesuai (atau opsi yang sesuai di PuTTY) untuk membuka kembali terowongan.

How To Use SSH Tunneling To Access Restricted Servers And Browse Securely

SSH Tunneling Explained

How To Access Your Computer From Anywhere With VNC | SSH Tunneling

Tunneling Web Traffic Through SSH

SSH Tunneling: Bypass Your ISPs

Bypassing Firewalls Using SSH Tunneling

How To Use SSH Public Key Authentication

BASH Tutorial - SSH Tunneling With Firefox

Secure Your Web Traffic Without VPN Or Proxy - Using SSH Tunneling

SSH On The Command Line -- 3: Using SSH To Browse The Web Safely

SSH Tunneling - Local & Remote Port Forwarding (by Example)


Privasi dan Keamanan - Artikel Terpopuler

Bagaimana Melindungi Identitas Anda Secara Online

Privasi dan Keamanan Sep 25, 2025

KONTEN TIDAK CACHED ANDRANIK HAKOBYAN / Shutterstock.com Saat Sandra Bullock membintangi Net pada tahun 1995, pencurian identita..


Cara Mengunci PC Windows 10 Anda dari Jarak Jauh

Privasi dan Keamanan Jan 29, 2025

KONTEN TIDAK CACHED Android dan Apple telah lama memberi orang cara untuk melacak dan menonaktifkan gadget Anda dari jarak jauh. Microsoft juga telah bergabung dengan klub dengan ..


Apa yang Harus Dilakukan jika Anda Kehilangan Kunci U2F

Privasi dan Keamanan Oct 3, 2025

KONTEN TIDAK CACHED U2F secara luas dianggap sebagai cara terbaik untuk mengamankan akun penting Anda karena bergantung pada akses ke kunci fisik sebelum akun dibuka kuncinya. Tet..


Cara Menjadikan Transaksi Venmo Anda Pribadi

Privasi dan Keamanan Aug 31, 2025

Tahukah Anda Venmo transaksi publik secara default? Semua orang di Internet dapat melihat nama Anda, nama penerima, pesan yang Anda kirim, dan setiap komentar. Mereka..


Cara Cepat Menyesuaikan Notifikasi Facebook yang Anda Lihat

Privasi dan Keamanan Feb 24, 2025

KONTEN TIDAK CACHED Pemberitahuan adalah salah satu hal terburuk tentang ponsel cerdas. Mendapatkan pemberitahuan untuk hal-hal yang Anda inginkan, seperti pesan teks adalah satu ..


Cara Menghapus Perangkat iOS Anda Setelah Terlalu Banyak Upaya Kode Sandi yang Gagal

Privasi dan Keamanan Jul 28, 2025

KONTEN TIDAK CACHED Ketika seseorang mencoba mengakses iPhone atau iPad Anda dengan menebak kode sandi, itu pada awalnya akan menguncinya, meningkatkan setiap interval dengan seti..


Manakah Protokol VPN Terbaik? PPTP vs. OpenVPN vs. L2TP / IPsec vs. SSTP

Privasi dan Keamanan Apr 4, 2025

Ingin menggunakan VPN ? Jika Anda mencari penyedia VPN atau menyiapkan VPN Anda sendiri, Anda harus memilih protokol. Beberapa penyedia VPN bahkan mungkin memberi And..


Miliki Nama Domain Anda & Agregasikan Semua Akun Sosial Anda dengan Chi.mp

Privasi dan Keamanan Jul 7, 2025

KONTEN TIDAK CACHED Catatan Editor: Chi.mp adalah layanan gratis, dan kami sangat menyukainya, tetapi ini tidak boleh dianggap sebagai dukungan resmi How-To Geek. Apakah A..


Kategori