SSH是连接linux服务器,尤其是云服务器的标准方式。本文将简单介绍两个SSH的替代品(Mosh和Eternal Terminal),并对比其特点。
SSH是连接Linux服务器的标准方式,阿里云、腾讯云、AWS等云服务器提供商都建议用户用SSH访问Linux云服务器。这是因为SSH(Secure Shell)的标准化程度高、安全、可靠。
当然,SSH也有自身的不足,影响了用户体验。最常见的问题就是容易掉线。尤其在网络不好的情况下,频繁掉线让人痛苦不堪。
有哪些既能保留SSH的方便,又能避免掉线问题的替代品呢?
诞生于2012年的Mosh(Mobile Shell)是一种SSH的替代品。作为替代品,保持着和SSH几乎一样的用法。同时,作为一开始就为移动终端设计的产品,Mosh在网络连接不太好尤其是移动端使用的情况下提供了更好的用户体验。
Mosh的安装:
Mosh支持的操作系统不少,macOS、windows(Cygwin)、Linux、IOS、Android都能方便的安装。如:
brew install mosh
sudo apt install mosh
客户端和服务器端都需安装Mosh才能进行连接。同时,需确保打开服务器端UDP端口60000~60010(也可多打开一些,以便支持更多的同时连接,如60000~60100)以便正常使用。
Mosh的使用:
直接用mosh代替ssh即可。如连接服务器a.com:
mosh user@a.com
连接后操作与ssh完全相同。
Mosh的优点和不足:
Mosh从设计上考虑了移动设备不太稳定的网络条件,基本解决了频繁掉线带来的困扰。遇到客户端多次掉线、掉线后重连时IP地址变化这类情况时都能正常恢复掉线前的状态。同时,终端输入的响应速度也快了很多。
当使用移动网络连接云服务器时,通讯延迟通常较高。这时,终端输入的响应时间如果能缩短,用户体验会有明显改善。
mosh/ssh的键盘响应速度对比(图片来自mosh.org)
从图上看,平均响应时间从513毫秒降低到173毫秒,显著提升了使用体验。在实际使用中,虽然不好量化,也能明显感到响应速度有一定提升。
虽然有这些好处,但Mosh也有不足。我在使用过程中,对Mosh极差的页面回滚支持常常感到无语。
小结一下:
第一版Eternal Terminal(ET)发布于2017年。在使用上与SSH保持高度相似,仅专注解决了断线重连的问题。因此,在网络连接不太稳定的情况下,也能提供较稳定的用户体验。
ET的安装:
相对于Mosh,ET对操作系统的支持要少一些。Windows需要WSL(Linux子系统),macOS、Linux则提供原生支持:
brew install MisterTea/et/et
sudo add-apt-repository ppa:jgmath2000/et
sudo apt update
sudo apt install et
看起来比Mosh要复杂一些。
与Mosh类似,ET也需要完成服务器端的安装,并打开服务器TCP端口2022。
ET的使用:
连接方式与SSH,Mosh基本相同:
et user@a.com
连接后,按以前SSH的用法照常使用就行了。
ET的优点和不足:
与Mosh不同,ET没有改动SSH的常规操作部分,因此操作响应速度和SSH相同,这方面不能提供更好的用户体验。同时,这样也会带来兼容性的优势,比如正常的回滚支持。
SSH、Mosh、ET各有千秋。可根据实际情况选用合适的产品。
ssh,mosh,et特性对比
感谢阅读!本文介绍的两种SSH的替代品对您有帮助吗?欢迎点评,讨论。
若有其它更好的替代品,也欢迎告知。让我们一起学习,一起进步。