我自己用阿里云的服务器的时候,发现ssh连上以后,一会不用就断掉了,非常不方便,服务端的系统是ubuntu. 查了些东西,原来可以去配置服务端的sshd,或者客户端的ssh,就行了.

1,配置服务器端sshd,这样所有连该服务器的会话都会产生效果

找到

/etc/ssh/sshd_config

添加一行

ClientAliveInterval  30

这样server端每30s就会向client端发送一个keep-alive包, 来保持连接

还可以加上一行,指定发送keep-alive包的最大次数

ClientAliveCountMax  

如果发送keep-alive包次数达到60, 而客户端还没有反应,则server端的sshd断开连接

也就是如果什么都不操作,这个配置可以让连接保持30*60s , 30分钟

2,如果没有服务器权限,可以配置客户端ssh,这样对这个客户端发起的所有会话都会产生效果

找到

/etc/ssh/ssh_config

同样添加上面跟上面了两个差不多的参数

ServerAliveInterval 
ServerAliveCountMax 

这样就是ssh向服务端sshd发送keep-alive包

3, 也可以指定某个特定的会话

ssh -o ServerAliveInterval=  root@192.168.12.192

ssh带上 -o 参数就可以以配置文件的参数指定这一次会话,  向上面就会一直保持这次会话.

关于SSH

SSH是Secure Shell的缩写, 是一个应用层的加密网络协议, 它不只可以用于远程登录, 远程命令执行,还可用于数据传输.

当然它由ssh Client和ssh Server端组成, 有很多实现, Ubuntu上就默认安装的OpenSSH, Client端叫做ssh, Server端叫做sshd.   OpenSSH只用来做远程登录和命令执行.

1, 把ssh server运行在特殊端口

SSH Server运行的默认端口是22,有时候内部服务器,为了防止外部尝试连接,会把sshd运行在一个陌生的端口,只对内部开放.

使用 -p

/usr/sbin/sshd -p 

或者在sshd配置文件中指定

Port  

这时SSH Client去连接也需要指定端口

ssh root@192.168.12.192  -p 

2,scp使用的是ssh协议

另外我们经常用的,用作远程加密文件传输的scp (Secure Copy), 就是使用的SSH协议

scp /home/wangyu/file root@192.168.12.192:/srv/

也就是实际上,scp会做为ssh client先和ssh server确定传输通道, 当然默认也是端口22.

如果服务端的ssh server没有运行,那scp是无法连接成功的

如下是我的测试

当然如果ssh server运行在特殊指定的端口,那scp也必须去指定这样的端口

我们把sshd运行在2222端口,那scp要通过 -P 去指定

scp -P  /home/wangyu/test root@192.168.12.192:/srv/

ssh连接linux服务器不断开- "Write failed: Broken pipe"的更多相关文章

  1. Python ssh连接Linux服务器报Incompatible ssh peer (no acceptable kex algorithm) 解决方法

    python通过ssh连接linux服务器,部分服务器出现如下异常 03:50:48.725 FAIL ftp operation failed, Incompatible ssh peer (no ...

  2. ssh连接linux服务器只显示-bash-4.1#不显示路径解决方法

    ssh连接linux服务器只显示-bash-4.1#不显示路径时,我们只需要修改  ~/.bash_profile文件,如果不存在这个文件,那么新建一个,增加内容  export PS1='[\u@\ ...

  3. mac通过自带的ssh连接Linux服务器并上传解压文件

    需求: 1:mac连接linux服务器 2:将mac上的文件上传到linux服务器指定位置 3:解压文件 mac上使用命令,推荐使用 iterm2 .当然,也可以使用mac自带的终端工具. 操作过程: ...

  4. 如何解决SSH连接Linux超时自动断开?

    最近项目开发中用到云服务器,部署了MySQL,开发团队总是反映MySQL过一会儿就断开连接了,必须手动重连才可以.反映越来越强烈,已经到了影响开发进度的高度了,必须解决! 查了资料,这个可能和SSH超 ...

  5. linux:解决SSH连接Linux超时自动断开

    用SSH登录到Linux的时候,由于默认的连接超时时间很短,经常断开! 1.修改文件 # vi /etc/ssh/sshd_config 2.重启sshd服务 # /etc/init.d/sshd r ...

  6. 通过SSH连接linux服务器

    SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定:SSH 为建立在应用层和传输层基础上的安全协议.SSH 是目前较可靠,专 ...

  7. 解决ssh连接linux服务器速度慢

    服务器端sshd配置文件 /etc/ssh/sshd_config 看是否有如下的两条配置条目 GSSAPIAuthentication no UseDNS no 如果前面带#,请把#删掉,或者新添加 ...

  8. 解决Linux下ssh登录后出现 报错 Write failed: Broken pipe 的方法

    解决也很简单,在执行 ssh 命令的时候,多加一个参数即可,如下: ssh -p 2200 -o ServerAliveInterval=60 root@8.8.8.8 #服务器 8.8.8.8 的远 ...

  9. Mac下ssh连接远程服务器时自动断开问题

    在mac下使用securecrt通过ssh连接远程服务器时,总会一段时间没有动作后,ssh被自动断开.在windows下用xmanager貌似没有遇到过这个问题. 在网上找了解决方法如下: 客户端配置 ...

随机推荐

  1. POJ-1191-棋盘分割(动态规划)

    棋盘分割 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 13593 Accepted: 4846 Description 将一个 ...

  2. pyAudio介绍

    概要 pyaudio有这么几个功能: - 提取特征 - 训练并且使用分类器 - 语音分割功能 - 内容关系可视化 python实现,好处有这么几个 - 适合做计算分析类型操作(编码少,效率不低) - ...

  3. 第一个socket服务端程序

    第一个socket服务端程序 #include <stdio.h> #include <stdlib.h> #include <string.h> #include ...

  4. xcode工程编译错误:No architectures to compile for

    问题 开发环境:xcode6,iPhone6模拟器 xcode工程编译错误:No architectures to compile for (ONLY_ACTIVE_ARCH=YES, active ...

  5. Numba:高性能Python编译器

    一.简介 Numba是一个开源JIT编译器,它将Python和NumPy代码的子集转换为快速机器代码. 二.主要特点 加速Python功能 Numba使用行业标准的LLVM编译器库在运行时将Pytho ...

  6. nodejs(三)Buffer module & Byte Order

    一.目录 ➤ Understanding why you need buffers in Node ➤ Creating a buffer from a string ➤ Converting a b ...

  7. 【剑指offer】重建二叉树

    一.题目: 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字.例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7 ...

  8. df值自由度学习[转载]

    转自:https://www.applysquare.com/topic-cn/78TAnIzZ6/ https://zhidao.baidu.com/question/175605082855699 ...

  9. Python os.path.dirname(__file__) 与 Python os.path.abspath(__file__) 与 os.system() 函数

    Python  os.path.dirname(__file__) 与 Python os.path.abspath(__file__) 的区别 os.path.abspath(__file__)返回 ...

  10. unity3d-绘制贴图

    准备贴图 在屏幕在绘制一张静态贴图,需要用到GUI.DrawTexture()方法, 该方法可以设定图片的显示位置.缩放比例和渲染混合等 /* Rect position:表示图片的绘制区域 * Te ...