Saya mencoba memahami perbedaan antara "penerusan port lokal" dan "penerusan port dinamis".
Dalam perintah ssh untuk "penerusan port lokal", apakah selalu diperlukan untuk menentukan host tujuan?
Apakah "dinamis" dalam "penerusan port dinamis" berarti bahwa, dalam perintah ssh untuk "penerusan port dinamis", tidak perlu menentukan host tujuan? jika ya, kapan tujuan ditentukan?
ssh
port-forwarding
Tim
sumber
sumber
Jawaban:
Ya, Anda harus menentukan IP dan port tujuan saat menggunakan penerusan lokal. Dari
man ssh
:Jelas, hanya alamat bind yang opsional.
Tidak, Anda tidak dapat menentukan host tujuan atau port saat menggunakan penerusan dinamis. Dalam penerusan dinamis, SSH bertindak sebagai proxy SOCKS. Lagi dari halaman manual (penekanan milikku):
Dengan
-L
, SSH tidak berusaha memahami lalu lintas. Itu hanya mengirim semua yang diterimanya di port lokal ke port target - Anda menentukan port target pada saat koneksi dibuat. Dengan-D
, SSH bertindak sebagai server proxy, dan karenanya dapat menangani koneksi dari beberapa port (misalnya, browser yang dikonfigurasi untuk menggunakannya sebagai proxy SOCKS kemudian dapat mengakses HTTP, HTTPS, FTP, dll. Melalui koneksi yang sama). Dan seperti dengan server proxy lainnya, ia akan menggunakan lalu lintas untuk menentukan tujuan.sumber
-D
, ia harus , untuk memahami ke mana harus mengirim data.Cara lain untuk mempelajari konsep ini adalah dengan melihat bagaimana klien terhubung ke klaster peta pengurangan elastis (EMR) amazon. ESDM memiliki banyak aplikasi lokal yang diekspos dan ini biasanya diakses melalui terowongan SSH.
Ada 2 opsi untuk klien: A) Perintah SSH penerusan port lokal: ssh -i key.pem -L 8157: abcd: 8088 hadoop @ abcd
Di sini klien mengatakan misalnya, bahwa 8157 pada localhost akan diteruskan ke abcd: 8088 Klien harus membuat permintaan ke localhost: http: // localhost: 8157 Aplikasi lain dapat mendengarkan pada port seperti 8089.8080, dan klien harus membuat koneksi ssh untuk masing-masingnya.
B) Dynamic port forward Di sini satu perintah SSH digunakan: ssh -i key.pem -D 8157 hadoop @ abcd
Lalu lintas apa pun yang masuk pada port 8157 akan dialihkan melalui terowongan ssh. Tujuan lalu lintas akan menjadi tujuan URL. Misalnya, Anda dapat menggunakan proksi-klien di server web Anda dan mengalihkan beberapa http URI untuk menggunakan proksi. Anda dapat mengakses semua aplikasi Anda di 8089.808 melalui satu perintah.
Untuk referensi, lihat dokumen ini: https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-web-interfaces.html
sumber