在mac下使用securecrt通过ssh连接远程服务器时,总会一段时间没有动作后,ssh被自动断开。在windows下用xmanager貌似没有遇到过这个问题。

在网上找了解决方法如下:
客户端配置:
Global.ini文件中将D:"Disconnect After Resume Timeout"=00000000改为D:"Disconnect After Resume Timeout"=FFFFFFFF
securecrt界面上配置:send string \n every 600 seconds或send protocol no-op every 600 seconds
服务端配置:
/etc/profile文件中配置TMOUT=0
然而在securecrt中试验发现无效,可能的原因有:多人反应securecrt的mac版有这个问题,mac的wifi断开导致(wifi断开的原因有多种,例如离开wifi的区域,mac休眠自动断开wifi等)。

在网上搜了一遍mac下流行的ssh工具,有securecrt、iterm2、telnet lite等,下下来试了一下,iterm2的界面和体验最好,于是决定放弃securecrt,改用iterm2。
在iterm2中仍然发现了ssh自动断开的问题,于是又开始了漫长的寻找方法和试验的过程。
网上有人给出解决方法是:
在客户端:~/.ssh/config文件(若没有则新建)中添加如下内容:
Host *
     ServerAliveInterval 60
意思是每60s发送一次以保持连接。
注意:在ssh客户端改,不要在服务端改(ClientAliveInterval 60, ClientAliveCountMax 100),不安全

按照这个方法在iterm2和自带终端上试验
1. 服务端设置TMOUT=0,客户端设置ServerAliveInterval 60,不会断
    服务端设置TMOUT=900,客户端设置ServerAliveInterval 60,900s后立即断,并有提示断开
2. 服务端设置TMOUT=0,客户端不配ServerAliveInterval 60,半小时后终端没反应,也没提示断开
    服务端设置TMOUT=900,客户端不配ServerAliveInterval 60,半小时后终端没反应,也没提示断开

于是最终方案:
1. 使用自带终端或iterm2,iterm2界面和用户体验更好一点
2. 服务端:/etc/profile文件中配置TMOUT=0,source /etc/profile生效,重新登录用户
3. 客户端:~/.ssh/config文件中配置
Host *
     ServerAliveInterval 60

参考:
https://ztgame.shenyu.me/linux/ssh-config.html
http://bluebiu.com/blog/iterm2-ssh-session-idle.html
http://bluebiu.com/blog/linux-ssh-session-alive.html

Mac下ssh连接远程服务器时自动断开问题的更多相关文章

  1. mac下ssh到远程服务器时中文乱码

    前言:mac本地的语言环境为英文,远程是支持中文的, 问题: 一开始是在iterm2下登录远程服务器更新数据库时发现中文注释不能正常显示,以为是iterms2下设置有问题,使用系统自带的termina ...

  2. Mac使用SSH连接远程服务器

    1. 终端通过 ssh 连接远程服务器 ssh -p 36622 root@localhost 2. 文件上传下载 上传 scp 下载 scp 3. 客户端 FinalShell(推荐) FileZi ...

  3. 解决mac下ssh空闲一段时间自动断开的问题

    之前在公司就遇到过这种问题,使用ssh登录linux服务器后,在后台放置一段时间,会发现会自动断开,解决的方法很简单: vim /etc/ssh/ssh_config 添加这2句即可 ServerAl ...

  4. Mac下如何连接linux服务器(SSH)-比较好用的SSH工具推荐

    Mac下如何连接linux服务器(SSH) 1.用mac自带终端连接 步骤如下: 打开终端,在顶部shell菜单中选择新建远程连接 在右侧服务器窗口点击+号,添加服务器,输入IP等信息 输入用户名,点 ...

  5. [转]学习win10的bash使用ssh连接远程服务器

    1. 前言 微软已经在Win10一周年更新预览版中加入了Ubuntu Bash命令支持,相当于一个小型的linux系统,本来连接远程服务器的话,要使用putty啥的,现在可以用这个直接连接,我来讲讲步 ...

  6. VsCode通过SSH连接远程服务器开发

    前言 nil 正文 安装插件 安装VsCode官方插件 Remote - SSH Remote - SSH: Editing Configuration Files WSL(远程桌面连接需要Remot ...

  7. Python实现SSH连接远程服务器

    首先需要安装paramiko模块 #-*- coding:utf-8 -*- __author__ = "MuT6 Sch01aR" import paramiko ssh = p ...

  8. (原)Ubuntu连接远程服务器时connection reset by peer

    转载请注明出处: https://www.cnblogs.com/darkknightzh/p/11086935.html 最近使用ubuntu通过ssh连接服务器时,由于密码错误,多次连接失败后,在 ...

  9. mac 终端下ssh 登录远程服务器不发输入中文

    转:https://segmentfault.com/q/1010000000150673 用Mac的iterm2 ssh连上去,终端显示中文乱码,也不能输入中文,然而本地终端可以显示和输入. 解决方 ...

随机推荐

  1. 使用spring的JavaMailSender发送邮件

    一:pom.xml <!-- java邮件 -->      <dependency>          <groupId>javax.mail</group ...

  2. 建立、配置和使用Activity——启动其他Activity并返回结果

    Activity还提供了一个startActivityForResult(Intent intent,int requestCode)方法来启动其他Activity.该方法用于启动指定Activity ...

  3. 安装使用GYP,并编译libpomelo2

    1.然后是下载GYP,它是由 Chromium 团队开发的跨平台自动化项目构建工具,安装后可以使用其构建出libpomelo的vs工程项目,再而进行编译,这步先下载,地址: http://code.g ...

  4. Recurrent Neural Network系列2--利用Python,Theano实现RNN

    作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...

  5. nw.js桌面程序自动更新(node.js表白记)

    Hello Google Node.js 一个基于Google V8 的JavaScript引擎. 一个伟大的端至端语言,或许我对你的热爱源自于web这门极富情感的技术吧! 注: 光阴似水,人生若梦, ...

  6. js实现360度图片旋转

    ▓▓▓▓▓▓ 大致介绍 这次是一个简单的效果,就是思路的问题 效果: ▓▓▓▓▓▓ 思路 旋转的效果就是根据鼠标的的移动距离来显示不同的图片,形成视觉差,仿佛就是在正真的旋转 由于效果是根据鼠标的移动 ...

  7. [CSS3] 学习笔记-CSS动画特效

    在CSS3中,出现了很多出彩的效果,例如2D.3D以及过度.动画和多列等.这些效果为页面设计添加了很多的可选设计. 1.2D.3D转换 转换,是使元素改变尺寸.形状.位置的一种效果:通过CSS3转换, ...

  8. Syslog4j如何实现接收日志

    1.Syslog4j是一个实现Syslog(RFC3164)协议的Java开源类库包括客户端与服务器端.通过 UDP/IP, TCP/IP, TCP/IPover SSL/TLS, Unix Sysl ...

  9. Vuex 模块化与项目实例 (2.0)

    Vuex 强调使用单一状态树,即在一个项目里只有一个 store,这个 store 集中管理了项目中所有的数据以及对数据的操作行为.但是这样带来的问题是 store 可能会非常臃肿庞大不易维护,所以就 ...

  10. JS验证电话号是否合法

    /******************** 函数名称:IsTelephone 函数功能:固话,手机号码检查函数,合法返回true,反之,返回false 函数参数:obj,待检查的号码 检查规则: (1 ...