Mosh: Difference between revisions
imported>Mjlbach No edit summary |
m Fix typo in header Tags: Mobile edit Mobile web edit Visual edit |
||
| (3 intermediate revisions by 3 users not shown) | |||
| Line 1: | Line 1: | ||
[https://mosh.org/ Mosh] is an alternative SSH terminal. It has support for roaming, local echo and uses UDP for transport. It also aims to improve responsiveness on intermittent, and high latency connections. | |||
See the [https://search.nixos.org/packages?show=mosh&query=mosh mosh Package] and [https://search.nixos.org/options?query=programs.mosh mosh Options] | |||
== Installation == | |||
=== Client === | |||
Install the <code>[https://search.nixos.org/packages?show=mosh&query=mosh mosh]</code> package. | |||
=== Server === | |||
Enable the <code>[https://search.nixos.org/options?query=programs.mosh programs.mosh]</code> module. You can simply add the following into your <code>/etc/nixos/configuration.nix</code>: | |||
<syntaxhighlight lang=nix> | |||
# Enable mosh, the ssh alternative when client has bad connection | |||
# Opens UDP ports 60000 ... 61000 | |||
programs.mosh.enable = true; | |||
</syntaxhighlight> | |||
== Usage == | |||
With mosh installed on both the client and server, connect by running: | |||
<syntaxhighlight lang=console> | |||
$ mosh user@server | |||
</syntaxhighlight> | |||
Note that mosh uses SSH for authentication and initialization, so it will respect aliases and other options in <code>.ssh/config</code>. You can also specify SSH options using the <code>--ssh</code> argument. For example, to use port 1122 instead of 22, you can either use <code>Port 1122</code> in SSH config, or use mosh with the <code>--ssh</code> argument: | |||
<syntaxhighlight lang=console> | |||
$ mosh --ssh='ssh -p 1122' user@server | |||
</syntaxhighlight> | |||
More information is available at [https://mosh.org/#usage mosh.org] or using <code>[https://manpages.debian.org/bullseye/mosh/mosh.1.en.html man mosh]</code> | |||
== Troubleshooting == | == Troubleshooting == | ||
| Line 17: | Line 51: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Then reconnect with mosh. | Then reconnect with mosh. Note that lingering is enabled by default in NixOS >= 16.09. | ||
As a workaround, it is also possible to set an alias in the user's shell on the server wrapping <code>mosh-server</code> to keep the session around. | As a workaround, it is also possible to set an alias in the user's shell on the server wrapping <code>mosh-server</code> to keep the session around. | ||
| Line 39: | Line 73: | ||
== References == | == References == | ||
<references /> | <references /> | ||
[[Category:Applications]] | |||