Verwenden Sie mosh mit einer Remote-Vagrant-Box ohne öffentliches Netzwerk

503
filaton

Bei der Arbeit habe ich eine leistungsfähige Maschine, auf der Debian Linux ausgeführt wird, aber leider habe ich keine Administratorrechte auf dieser Maschine. Daher ist es unter anderem schwierig, Pakete zu aktualisieren oder zu installieren. Trotzdem habe ich Vagrant installiert (v.1.6.5, so alt ...) und ich möchte damit die Arbeit mit dieser Maschine vereinfachen.

Ich kann jetzt folgendes tun:

  • Wenn ich renne ssh jdoe@my-server.net, meldet es mich beim Debian-Host an
  • Wenn ich renne ssh -p 2222 -o HostKeyAlias='alias' -o CheckHostIP='no' vagrant@my-server.net, meldet es mich bei einer Vagrant-Box an, die auf meinem Debian-Host ausgeführt wird. Dort habe ich höhere Berechtigungen und kann installieren, was ich will

Ich habe das einfach erreicht, indem ich Portweiterleitung benutzt habe Vagrantfilemit:

config.vm.network :forwarded_port, guest: 22, host: 2222, host_ip: "0.0.0.0", id: "ssh", auto_correct: true 

Es funktioniert gut, außer wenn ich nicht physisch im Büro bin, dann ist das Tippen extrem langsam usw. Daher möchte ich mosh anstelle von SSH verwenden, kann aber keinen Weg finden, es zu tun.

Ich habe versucht:

  • mosh --ssh="ssh -p 2222 -o HostKeyAlias='alias' -o CheckHostIP='no'" vagrant@my-server.netIch nehme an, dass ich keine Nachrichten zurückerhalten kann mosh-serverund mir die Nachricht "mosh: Nothing from server" am UDP-Port 60001 gibt.
  • Port vom Vagrant-Gast an den Debian-Host weiterleiten, socat UDP4-RECVFROM:60001,fork UDP4-SENDTO:10.205.129.26:60001aber dann meldet der vorherige mosh-Befehl den verwendeten Port 60001 und wählt den Port 60002 aus
  • Konfigurieren eines privaten Netzwerks für meine Vagrant-Box: Es hat sich nichts geändert

Bedarf:

  • Ich kann keinen anderen Hostnamen und eine andere IP-Adresse als die IP-Adresse von "my-server.net" verwenden. Daher kann ich die öffentliche Netzwerkfunktion von Vagrant nicht verwenden
  • Ich kann auf dem Debian-Host keine Befehle als Administrator ausführen. Daher kann ich keine neuen Pakete installieren oder vorhandene Pakete aktualisieren

Dinge, die ich kenne:

  • Ich weiß, dass Mosh keine SSH-Portweiterleitung unterstützt, aber ich bin mir nicht sicher, ob es in meinem Fall zutrifft
  • Ich weiß, dass Vagrant-Boxen keine umgekehrte Portweiterleitung vom Gast zum Host unterstützen

Meine Hauptfrage lautet: "Was kann ich überhaupt tun?" und wenn ja: "Was fehlt mir?" Wenn Sie einen anderen Weg finden, um das größere Problem zu lösen (verbinden Sie sich remote mit einer VM / einem Container, der auf einer Maschine läuft, auf der Sie nicht administriert sind), bin ich froh, Ihre Vorschläge zu lesen.

0

0 Antworten auf die Frage