0%

SSH 连接保持与重用

免责声明:本人所转载内容,均来自于网络,并不代表本人观点、立场,本人也不为其真实性负责,只为传播网络信息为目的,如有异议请及时联系,本人将予以删除

保持,避免超时自动断开连接

方法一:修改server端的配置文件/etc/ssh/sshd_config

1
2
3
4
5
# 每 60s 给客户端发送一个请求,避免因空闲超时而断开连接
ClientAliveInterval 60

# 客户端未响应的次数达到 86400 次的时候就断开连接
ClientAliveCountMax 86400

方法二:修改client端的配置文件/etc/ssh/ssh_config 或 ~/.ssh/config

1
2
3
4
5
# 每 60s 给服务端发送一个 KeepAlive 请求,避免因空闲超时而断开连接
ServerAliveInterval 60

# 服务端未响应的次数达到 86400 次的时候就断开连接
ServerAliveCountMax 86400

方法三:在命令参数里

1
ssh -o ServerAliveInterval=60 

重用,避免输入繁琐的用户名和密码

SSH 提供了连接重用功能,这个功能的原理很简单,开一个 SSH 连接放在后台,以后再需要用 SSH 到同样的远程主机时,SSH 会直接用这个连接的 Socket 文件,不再创建新的连接了,也不需要进行用户身份验证了。

编辑文件 ~/.ssh/config,加入下面的内容:

1
2
3
Host *
ControlMaster auto
ControlPath ~/.ssh/master-%r@%h:%p

保存后,在终端 SSH 登录远程主机后,会在~/.ssh下留下很多master-username@hostname文件,道理不言而喻。