Soy cada vez más fanático de mosh y lo uso cada vez más cuando tengo enlaces wifi poco confiables. Lo que estoy tratando de descubrir es cómo construir un túnel a través de un servidor que está en una DMZ (conectado a Internet y a una red cortafuegos).
Mi solución actual con ssh es editar .ssh / config para incluir líneas como:
Host server-behind-firewall
ProxyCommand ssh server-in-dmz nc %h %p
También he descubierto cómo puedo usar ssh para hacer una pierna y mosh la otra:
ssh -t server-in-dmz mosh server-behind-firewall
Entre server-in-dmz y server-behind-firewall tengo una sesión preparada usando pantalla.
Pero lo que realmente me gustaría es usar Mosh de principio a fin. Supongo que tendría que armar server-in-dmz para tener un servidor mosh escuchando. Pero la página de manual de mosh-server dice "Se cerrará si ningún cliente se ha puesto en contacto con ella en 60 segundos".
En resumen, la pregunta es: ¿cómo construir un túnel mosh con múltiples hosts?
Respuestas:
Es posible que desee probar Stone , que es un repetidor de paquetes TCP y UDP. Lo que esto significa esencialmente es que puede tener la siguiente configuración:
Usted <---> Stone en server-in-dmz <---> server-behind-firewall
En otras palabras, haga que server-in-dmz escuche en el puerto X los paquetes SSH que se enviarán al servidor detrás del firewall, y también otro puerto, el puerto Y, para los paquetes UDP que se reenvían al puerto 60000 en el servidor detrás del firewall para servidor mosh.
Tendrás que conectarte a mosh con el siguiente comando:
fuente
En lugar de reenviar el tráfico en la capa de aplicación, como lo sugiere @Hengjie, también puede usar iptables (en server-in-dmz):
Luego, te conectas usando
mosh -p 60159 --ssh='ssh -p 11559' server-in-dmz
Nota:
fuente