[笔记]mosh使用笔记

Posted ET民工[源自火星]

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[笔记]mosh使用笔记相关的知识,希望对你有一定的参考价值。

听说mosh好使,那么怎么在Mac本下使用mosh来登录Ubuntu及AWS服务器呢?

mosh介绍

mosh官网在:https://mosh.org/
代码开源在:https://github.com/mobile-shell/mosh

卖点就是通过UDP传输,网络切换可以自动重连,不会导致执行中的命令断掉。

mosh安装

Ubuntu下安装mosh服务器:

$ sudo apt-get install mosh

Mac下安装mosh客户端:

$ brew install mosh

运行

Ubuntu下运行mosh-server:

$ mosh-server


MOSH CONNECT 60001 y8btZAE3fjpmzQu7s/4XWg

mosh-server (mosh 1.3.2) [build mosh 1.3.2]
Copyright 2012 Keith Winstein <mosh-devel@mit.edu>
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

[mosh-server detached, pid = 7195]

看到mosh-server detached不要慌,毕竟它也不监听端口。

假设服务器地址为123.123.123.123,用户名是etworker,则Mac下运行:

$ mosh etworker@123.123.123.123

如果一切顺利,连接起来就像ssh一样。
如果服务器ssh的端口是2222,则用下面的方式连接:

$ mosh --ssh="ssh -p 2222" etworker@123.123.123.123

注意

Mosh使用的UDP协议连接的,使用的端口是从60000到61000,如果开启了防火墙服务器上就需要打开相应的UDP端口。
一个Mosh连接就会打开一个UDP端口,比如建立两个连接就是60001、60002,以此类推。

假设Mosh使用60001 UDP端口,则在服务器上运行

$ iptables -I INPUT -p udp –dport 60001 -j ACCEPT

这样就在服务器上打开60001这个UDP端口。
当然,最好是把上一条命令写入服务器iptables的规则中,这样不必要每次都手动打开这个端口。

Amazon AWS

我在Amazon上的服务器是通过key文件做的鉴权,所以先说一下Mac怎么ssh上去。

先将密钥文件拷贝到Mac上,比方说文件名叫xxx.pem,然后修改权限:

$ chmod 400 xxx.pem

假设服务器地址是111.111.111.111,进到xxx.pem同目录下,ssh如下:

$ ssh -i xxx.pem ubuntu@111.111.111.111

此时在服务器上安装mosh,方式同上。
注意需要在安全组里面配置端口,开放6000-61000的UDP端口。
安全组的端口过滤方法,应该不需要再细说了吧。

接着就可以使用Mac来连接了:

$ mosh --ssh="/usr/bin/ssh -i xxx.pem" ubuntu@111.111.111.111

参考文献

以上是关于[笔记]mosh使用笔记的主要内容,如果未能解决你的问题,请参考以下文章

如何使用导航组件处理片段内的向上按钮

sh bash片段 - 这些片段大多只是我自己的笔记;我找到了一些,有些我已经找到了

[原创]java WEB学习笔记61:Struts2学习之路--通用标签 property,uri,param,set,push,if-else,itertor,sort,date,a标签等(代码片段

Oracle-常用数据库对象笔记(片段)

AngularJS的学习笔记

JSP笔记