Saya penggemar mosh yang terus bertambah dan semakin sering menggunakannya ketika saya memiliki tautan wifi yang tidak bisa diandalkan. Apa yang saya coba cari tahu adalah bagaimana membangun terowongan melalui server yang ada di DMZ (terhubung ke internet dan jaringan firewall).
Solusi saya saat ini dengan ssh adalah mengedit .ssh / config untuk memasukkan baris seperti:
Host server-behind-firewall
ProxyCommand ssh server-in-dmz nc %h %p
Saya juga sudah tahu bagaimana saya bisa menggunakan ssh untuk melakukan satu kaki dan mosh yang lain:
ssh -t server-in-dmz mosh server-behind-firewall
Antara server-in-dmz dan server-di belakang-firewall saya memiliki sesi mosh menggunakan layar.
Tapi apa yang saya benar-benar ingin hanya menggunakan mosh dari ujung ke ujung. Saya kira saya harus memasang server-in-dmz untuk mendengarkan mosh-server. Tetapi halaman manual mosh-server mengatakan "Ini akan keluar jika tidak ada klien yang menghubunginya dalam waktu 60 detik."
Singkatnya, pertanyaannya adalah: bagaimana cara membangun mosh tunnel dengan banyak host?
Jawaban:
Anda mungkin ingin mencoba batu , yang merupakan repeater paket TCP dan UDP. Apa artinya ini pada dasarnya adalah bahwa Anda mungkin memiliki konfigurasi berikut:
Anda <---> melempari server-in-dmz <---> server-di belakang-firewall
Secara berurutan, minta server-in-dmz mendengarkan pada port X untuk paket SSH untuk diteruskan ke server-di belakang-firewall, dan juga port lain, port Y, untuk paket-paket UDP meneruskan ke port 60000 pada server-di belakang-firewall untuk mosh-server.
Anda harus terhubung ke mosh menggunakan perintah berikut:
sumber
Alih-alih meneruskan lalu lintas pada lapisan aplikasi, seperti yang disarankan oleh @ Hengjie, Anda juga dapat menggunakan iptables (di server-in-dmz):
Kemudian, Anda terhubung menggunakan
mosh -p 60159 --ssh='ssh -p 11559' server-in-dmz
catatan:
sumber