听说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使用笔记的更多相关文章

  1. [读书笔记]C#学习笔记八:StringBuilder与String详解及参数传递问题剖析

    前言 上次在公司开会时有同事分享windebug的知识, 拿的是string字符串Concat拼接 然后用while(true){}死循环的Demo来讲解.其中有提及string操作大量字符串效率低下 ...

  2. 《learning hard C#学习笔记》读书笔记(19)多线程

    19.1 多线程编程知识 19.1.1 进程与线程的概念 进程: 可以理解为一块包含某些资源的内存区域,操作系统通过进程方式把它工作划分为不同的单元. 一个应用程序可以对应多个进程. 线程: 线程是进 ...

  3. 面向小白的JS笔记 - #Codecademy#学习笔记

    前言 最初浏览过<JavaScript秘密花园>,前一段时间读过一点点<JavaScript语言精粹>和一点点<JavaScript高级程序设计>(一点点是指都只是 ...

  4. [读书笔记]C#学习笔记一: .Net Framwork

    前言: 一次偶然的机会  在园子里看到@Learning hard 出版的一本书: <<C#学习笔记>>, 然后买来 一直到现在读完, 感觉很不错, 适合入门, 书中内容是从C ...

  5. 2016年第2周读书笔记与工作笔记 scrollIntoView()与datalist元素

    这一周主要是看了html5网页开发实例与javascript 高级程序设计,供以后翻阅查找.  html5网页开发实例第1章与第二章的2.1部分: 第1章内容: html5在w3c的发展史. 浏览器的 ...

  6. [读书笔记]C#学习笔记三: C#类型详解..

    前言 这次分享的主要内容有五个, 分别是值类型和引用类型, 装箱与拆箱,常量与变量,运算符重载,static字段和static构造函数. 后期的分享会针对于C#2.0 3.0 4.0 等新特性进行. ...

  7. contiki-main.c 中的process系列函数学习笔记 <contiki学习笔记之六>

    说明:本文依然依赖于 contiki/platform/native/contiki-main.c 文件. ---------------------------------------------- ...

  8. Python学习笔记2-flask-sqlalchemy 简单笔记

    flask-sqlalchemy 简单笔记 字数 阅读 评论 喜欢 flask-sqlalchemy SQLAlchemy已经成为了python世界里面orm的标准,flask是一个轻巧的web框架, ...

  9. spring笔记----看书笔记

    上周末看了一章以前javaee轻量级的书spring部分,简单做了一些笔记 // ApplicationContext ac=new ClassPathXmlApplicationContext(&q ...

随机推荐

  1. Android实现时间轴

    昨天群里有讨论时间轴的项目,没有接触过,以为非常吊,研究之后才知道表面都是忽悠人的,使用listview就能实现了,也没有什么新奇的东西 废话少说,直接上图 图片和文字都能够私人订制 没什么好说的,直 ...

  2. QTreeWidget 获取被双击的子项的层次路径

    from PyQt5.QtWidgets import (QApplication, QWidget, QHBoxLayout, QTreeWidget, QTreeWidgetItem, QGrou ...

  3. 在ChemDraw中如何使用ChemACX

    ChemACX是一款功能强大的化学品比价数据库,可与E-Notebook和ChemDraw整合使用,极大地方便生化科学家们采购化学品.那么很多用户就会开始疑惑该如何在ChemDraw化学绘图软件调用C ...

  4. 深入理解JS之Scope链

    JS被很多人认为是『拙劣的语言』,被这门语言里的各种离奇的事情整的团团转,这篇文章主要来讲讲JS中的Scope链,其主要是影响JS中的变量作用域. 注:本文适合稍有一定JS基础的同学 目录: 初步认识 ...

  5. Angular2 组件与模板 -- 输入和输出属性

    Input and Output properties 输入属性是一个带有@Input 装饰器的可设置属性,当它通过属性绑定的形式被绑定时,值会"流入"到这个属性. 输出属性是一个 ...

  6. ielowutil.exe应用程序错误解决方法

    转载: http://wenda.so.com/q/1484111785202192 控制台方法: .按住“Window”+“R”->输入“cmd”->确定 .输入“ ”->回车-& ...

  7. Android 网卡地址Mac Wifi文件

    1./system/etc/firmware/ti-connectivity/wl1271-nvs.bin的文件 2./data/etc/wifi/fw文件 3./data/nvram/APCFG/A ...

  8. C语言函数的概念

    在<我们对函数进行了简单的解释,函数(Function)是一段可以重复使用的代码,这是从整体上对函数的认识. C语言本身带了很多库函数,并分门别类地放在了不同的头文件中,使用时只要引入对应的头文 ...

  9. 如何用Project2010制作WBS

    如何用Project2010制作WBS: http://www.projectup.net/blog/index.php?option=com_content&view=article& ...

  10. mac java环境

    1.java运行环境jre:http://www.java.com/zh_CN/ 2.jdk:http://www.oracle.com/technetwork/java/javase/downloa ...