gravitational / teleport

The easiest, and most secure way to access and protect all of your infrastructure.
https://goteleport.com
GNU Affero General Public License v3.0
16.97k stars 1.71k forks source link

Mosh Everywhere #1595

Open tomberek opened 6 years ago

tomberek commented 6 years ago

This is to start discussion about implementing the use of mosh throughout teleport. Pros:

Cons:

klizhentas commented 6 years ago

I think SSP is a really smart protocol and mosh solves an important problem, but for exactly the cons you have mentioned, this is out of scope of teleport - at least for now.

I'm keeping the door (and issue) open, as I think at some point teleport should promote innovative solutions for the problems folks are facing when working with remote terminals. So folks who care, use this ticket to post your thoughts and feedback here, we'll use it as a reference.

remingtonc commented 6 years ago

Huge fan. Hate it when I'm in transit with low-bandwidth or my VPN decides it's time to reconnect and my SSH sessions break. Mosh is absolutely seamless in these scenarios. No idea on the level of difficulty, unfortunately.

dadicool commented 4 years ago

Just faced a situation where mosh + teleport would have made my life much less miserable: I've been trying to connect to k8s pod over a vpn connection over 4G while traveling on a fast moving train. Needless to say, I couldn't really fix the problem. I would love to see this implemented!

Curtingham commented 4 years ago

Just want to throw in a +1 for this - I use mosh for every host that I connect to for shell access. I'm looking to improve my security, and Teleport has been the most enticing solution I have found. Mosh compatibility was the very first thing I looked up after reading the Quick Start and Architecture guides - This looks like a no-brainer solution to security concerns about SSH (mainly for me, it's the widespread use of SSH keys), but the lack of mosh support has me seriously torn about whether or not I want to implement Teleport.

All in all though, a big thanks to everyone involved for developing what looks like a truly awesome SSH management solution!

shaneshort commented 4 years ago

I would also love to see mosh support. I'm very often on poor connections (loss/latency) and it's a life saver for me. I also love the statelessness of it, having your WAN link drop and the session just blissfully resume is amazing.

keenan-v1 commented 2 years ago

Without support, is there a mosh workaround that people have found by chance?

Also +1 for mosh support from 2021 :) 👍

vikashch commented 2 years ago

+1 for mosh support.

eggbean commented 2 years ago

Came here looking to find out if Teleport supported mosh. Very much looking forward to it being added, as it's something I have been using for years and I've come to depend on it when working remotely, just to connect to my bastion host. I'll probably be using Teleport mainly for server webpage access for the time being.

jurajmasar commented 2 years ago

+1 🙏

james-lawrence commented 2 years ago

@klizhentas sorry for the bump but teleport might want to consider the quic protocol for transport vs mosh's ssp. It doesn't come with everything but in theory it'd help with the poor connection, roaming and latency issues and can be done fairly transparently and should be fairly trivial to seamlessly upgrade servers.

BinaryPaean commented 2 years ago

+1 🙏 Would love to have both "tsh ssh X" and "tsh mosh X" do what you'd expect.

cwegener commented 1 year ago

I've been reading through comments and most people seem to be highlighting the "slow or unreliable carrier" scenario.

What about the speed of light scenario?

Is nobody using mosh for the local echo feature when the photons need to travel a long distance (tens of thousands of kilometers)?

eggbean commented 1 year ago

@cwegener A couple of years ago there was a digital nomad on reddit saying that it was very difficult to access his servers in the USA from Thailand, so I told him about mosh and he thought it was magic.

shaneshort commented 1 year ago

.. I opened this page to check on it not an hour ago and now there's activity!

I agree, some kind of session resumption and local echo like mosh makes long distance SSH actually bearable and would be an excellent addition. Either implementing the features mosh needs in order to orchestrate the udp connection, or implementing it inside teleport would be nice.

cwegener commented 1 year ago

I think in summary there are few main use cases then:

  1. Regular normal SSH duties from a reliable and fast last mile hookup, involving SSH hosts that are "far away" (@eggbean's Digital Nomad is one example. But other "far away" scenarios do exist that don't involve digital nomads)
  2. Occasional duties where the last mile hookup (on either side) has poor performance qualities (high jitter, high packet loss), e.g. urgent SSH access while being on-call using mobile internet.
  3. (Somewhat reverse of 3) Urgent or not so urgent SSH access while being on a high quality local last mile hookup but the remote SSH host is on either a poor quality last mile hookup or an unreliable last mile hookup. E.g. IoT devices

I think all three above uses cases can also be combinations of each other.

The two main features from mosh that are relevant to these use cases are:

I have no idea which one of these use cases would be the most valuable for the wider Teleport community to implement.

In general though, I think that think in terms of the two distinct features and how they relate to use cases would be the best in order to reinvigorate this discussion.

alexlyee commented 10 months ago

+1 🙏 this would make working on infra with a spotty connection so much better

nilx commented 8 months ago

+1 here

in both situations above, mosh is wonderful

nilx commented 6 months ago

What would it take to add mosh+teleport support?

ping @achernya @keithw @cgull for https://github.com/mobile-shell/mosh

timiwahalahti commented 2 weeks ago

Giving one more +1 here from a person who commutes often and sometimes needs to work via SSH connection during transit.