SSH关闭失效的连接

如何关闭失效的连接

在使用 SSH 连接服务器的时候,难免会遭遇网络波动,这就有可能造成连接中断
有时候,连接虽然中断了,但是 SSH 的连接窗口却没有自动关闭,不论输入什么窗口都是无响应
通常这种情况我会直接杀死(kill)这个窗口
但这样做其实是很不好的一种习惯,但我一直没找到好的解决方法,今天正好碰到了这种情况的解决方案

SSH 转义字符

使用转义字符的方法很简单,按下回车后再输入一个 ~ 符号即可使用转义字符了
比如按下回车 + ~?,就会输出帮助菜单

1
2
3
4
5
6
7
8
9
10
11
Supported escape sequences:
~. - terminate connection (and any multiplexed sessions)
~B - send a BREAK to the remote system
~R - request rekey
~V/v - decrease/increase verbosity (LogLevel)
~^Z - suspend ssh
~# - list forwarded connections
~& - background ssh (when waiting for connections to terminate)
~? - this message
~~ - send the escape character by typing it twice
(Note that escapes are only recognized immediately after newline.)
  • ~. 终止会话
  • ~B 向远端系统发送 BREAK
  • ~R 请求重新加密连接
  • ~V/v 当写入错误写入到日志中时,下调/上调日志的详细等级
  • ~^Z 挂起 ssh 连接,可以通过 fg 命令回到连接
  • ~# 列出转发的连接
  • ~& 当等待 ssh 连接终止时,后台运行 ssh
  • ~? 打印帮助列表
  • ~~ 当连接一台主机A后,用A主机连接B主机,向B主机发送一个 ~ 符号

显然,当需要关闭失效的 ssh 连接窗口的时候,使用 ~. 转义字符就可以关闭 ssh 连接的窗口了


所以以后碰到连接无响应的时候,不用再杀死那个进程了,ssh 自带的功能就可以完成这一项任务,而且能更安全的断开这个假连接 (@ ̄ー ̄@)
使用这些转义字符还能更好的使用 ssh 这个工具,学一学新东西何乐而不为呢 ( σ’ω’)σ