Cara membuat terowong SSH atau penghantaran port di Linux

Cara membuat terowong SSH atau penghantaran port di Linux

SSH Tunneling (juga disebut sebagai SSH Port Forwarding) hanya mengarahkan trafik rangkaian tempatan melalui SSH ke tuan rumah jauh. Ini menunjukkan bahawa semua sambungan anda dijamin menggunakan penyulitan. Ia menyediakan cara mudah untuk menubuhkan asas VPN (Rangkaian peribadi maya), berguna untuk menyambung ke rangkaian swasta melalui rangkaian awam yang tidak selamat seperti internet.

Anda juga boleh digunakan untuk mendedahkan pelayan tempatan di belakang Nats dan firewall ke Internet melalui terowong yang selamat, seperti yang dilaksanakan di NGROK.

[Anda mungkin juga suka: Cara Mengamankan dan Mengasaskan Pelayan OpenSSH]

SSH Sesi membenarkan sambungan rangkaian terowong secara lalai dan terdapat tiga jenis port SSH yang penghantaran: tempatan, Jauh dan dinamik Port Forwarding.

Dalam artikel ini, kami akan menunjukkan bagaimana untuk menubuhkan terowong SSH dengan cepat dan mudah atau pelbagai jenis port penghantaran di Linux.

Persekitaran Ujian:

Untuk tujuan artikel ini, kami menggunakan persediaan berikut:

  1. Tuan rumah tempatan: 192.168.43.31
  2. Tuan rumah jauh: Linode CentOS 7 VPS dengan nama host Server1.Contoh.com.

Biasanya, anda boleh menyambung dengan selamat ke pelayan jauh menggunakan SSH seperti berikut. Dalam contoh ini, saya telah mengkonfigurasi log masuk SSH tanpa kata laluan antara tuan rumah tempatan dan jauh saya, jadi ia tidak meminta kata laluan pentadbir pengguna.

$ ssh [dilindungi e -mel] 
Sambungkan ssh jauh tanpa kata laluan

Pemajuan port SSH tempatan

Pemajuan port jenis ini membolehkan anda menyambung dari komputer tempatan ke pelayan jauh. Dengan mengandaikan anda berada di belakang firewall yang ketat atau disekat oleh firewall keluar dari mengakses aplikasi yang berjalan di port 3000 di pelayan jauh anda.

Anda boleh mengemukakan port tempatan (e.g 8080) yang mana anda boleh gunakan untuk mengakses aplikasi secara tempatan seperti berikut. The -L Bendera mentakrifkan port yang dikemukakan ke hos jauh dan pelabuhan jauh.

$ ssh [dilindungi e -mel] -L 8080: Server1.Contoh.com: 3000 

Menambah -N Bendera bermaksud jangan laksanakan arahan jauh, anda tidak akan mendapat cangkang dalam kes ini.

$ ssh -n [dilindungi e -mel] -l 8080: Server1.Contoh.com: 3000 

The -f suis mengarahkan SSH untuk berjalan di latar belakang.

$ ssh -f -n [dilindungi e -mel] -l 8080: Server1.Contoh.com: 3000 

Sekarang, di mesin tempatan anda, buka penyemak imbas, bukannya mengakses aplikasi jauh menggunakan alamat Server1.Contoh.com: 3000, anda hanya boleh menggunakan Localhost: 8080 atau 192.168.43.31: 8080, seperti yang ditunjukkan dalam tangkapan skrin di bawah.

Mengakses aplikasi jauh melalui penghantaran port SSH tempatan

Pemajuan port SSH jauh

Pemajuan port jauh membolehkan anda menyambung dari mesin jauh ke komputer tempatan. Secara lalai, SSH tidak membenarkan pemajuan port jauh. Anda boleh membolehkan ini menggunakan Gatewayports Arahan dalam fail konfigurasi utama SSHD anda /etc/ssh/sshd_config di hos terpencil.

Buka fail untuk mengedit menggunakan editor baris arahan kegemaran anda.

$ sudo vim/etc/ssh/sshd_config 

Cari arahan yang diperlukan, uncoment, dan tetapkan nilainya Ya, Seperti yang ditunjukkan dalam tangkapan skrin.

Gatewayports Ya 
Dayakan penghantaran port SSH jauh

Simpan perubahan dan keluar. Seterusnya, anda perlu memulakan semula SSHD untuk menerapkan perubahan baru -baru ini yang anda buat.

$ sudo Systemctl Restart SSHD atau $ Sudo Service SSHD Restart 

Seterusnya jalankan arahan berikut untuk mengemukakan port 5000 di mesin terpencil ke pelabuhan 3000 di mesin tempatan.

$ ssh -f -n [dilindungi e -mel] -r 5000: localhost: 3000 

Sebaik sahaja anda memahami kaedah terowong ini, anda boleh dengan mudah dan selamat mendedahkan pelayan pembangunan tempatan, terutamanya di belakang Nats dan firewall ke Internet melalui terowong yang selamat. Terowong seperti ngrok, PageKite, localtunnel, dan banyak lagi yang bekerja dengan cara yang sama.

Pemajuan port SSH dinamik

Ini adalah jenis pengemampihan pelabuhan ketiga. Tidak seperti tempatan dan Jauh Pemajuan Pelabuhan yang membolehkan komunikasi dengan satu port, ia memungkinkan, pelbagai komunikasi TCP di pelbagai pelabuhan. Pemajuan port dinamik menetapkan mesin anda sebagai Pelayan proksi kaus kaki yang mendengar di port 1080, Secara lalai.

Untuk permulaan, Kaus kaki adalah protokol Internet yang mentakrifkan bagaimana pelanggan boleh menyambung ke pelayan melalui pelayan proksi (SSH dalam kes ini). Anda boleh mengaktifkan penghantaran port dinamik menggunakan -D pilihan.

Perintah berikut akan memulakan proksi kaus kaki di port 1080 membolehkan anda menyambung ke hos jauh.

$ ssh -f -n -d 1080 [dilindungi e -mel] 

Mulai sekarang, anda boleh membuat aplikasi pada mesin anda menggunakan pelayan proksi SSH ini dengan mengedit tetapan mereka dan mengkonfigurasi mereka untuk menggunakannya, untuk menyambung ke pelayan jauh anda. Perhatikan bahawa Kaus kaki Proksi akan berhenti bekerja setelah anda menutup sesi SSH anda.

Baca juga: 5 cara untuk menjaga sesi SSH jauh berjalan setelah menutup SSH

Ringkasan

Dalam artikel ini, kami menjelaskan pelbagai jenis port penghantaran dari satu mesin ke mesin lain, untuk trafik terowong melalui sambungan SSH yang selamat. Ini adalah salah satu kegunaan SSH. Anda boleh menambah suara anda ke panduan ini melalui borang maklum balas di bawah.

Perhatian: Pengajuan port SSH mempunyai beberapa kelemahan yang besar, ia boleh disalahgunakan: ia boleh digunakan untuk memintas pemantauan rangkaian dan program penapisan lalu lintas (atau firewall). Penyerang boleh menggunakannya untuk aktiviti berniat jahat. Dalam artikel seterusnya, kami akan menunjukkan cara melumpuhkan SSH Local Port Forwarding. Sentiasa berhubung!