Je suis de plus en plus fan de mosh et je l'utilise de plus en plus lorsque j'ai des liens wifi peu fiables. Ce que j'essaie de comprendre, c'est comment construire un tunnel à travers un serveur qui est dans une DMZ (connecté à Internet et à un réseau pare-feu).
Ma solution actuelle avec ssh est d'éditer .ssh / config pour inclure des lignes comme:
Host server-behind-firewall
ProxyCommand ssh server-in-dmz nc %h %p
J'ai également compris comment utiliser ssh pour faire une jambe et l'autre:
ssh -t server-in-dmz mosh server-behind-firewall
Entre server-in-dmz et server-behind-firewall, j'ai organisé une session mosh en utilisant un écran.
Mais ce que j'aimerais vraiment utiliser de bout en bout. Je suppose que je devrais configurer le serveur-en-dmz pour écouter un mosh-server. Mais la page de manuel de mosh-server dit "Il se fermera si aucun client ne l'a contacté dans les 60 secondes".
En bref, la question est: comment construire un tunnel mosh avec plusieurs hôtes?
Réponses:
Vous voudrez peut-être essayer Stone , qui est un répéteur de paquets TCP et UDP. Cela signifie essentiellement que vous pouvez avoir la configuration suivante:
Vous <---> Stone sur server-in-dmz <---> server-behind-firewall
En d'autres termes, faites en sorte que server-in-dmz écoute sur le port X les paquets SSH à transférer vers le serveur derrière le pare-feu, ainsi qu'un autre port, le port Y, pour les paquets UDP vers le port 60000 sur le serveur derrière le pare-feu pour mosh-server.
Vous devrez vous connecter à mosh à l'aide de la commande suivante:
la source
Au lieu de transférer le trafic sur la couche application, comme suggéré par @Hengjie, vous pouvez également utiliser iptables (sur server-in-dmz):
Ensuite, vous vous connectez en utilisant
mosh -p 60159 --ssh='ssh -p 11559' server-in-dmz
Remarque:
la source