很多时候,我的 SSH 会话不再响应(例如,当我失去互联网连接然后重新连接时)。Ctrl+ C、Ctrl+ D、Ctrl+Z和无数次按键没有任何效果。
大多数时候我已经拥有tmux
或byobu
已经运行,所以我可以启动另一个终端并重新连接。不过确实感觉很麻烦。如何断开 SSH 与当前终端的连接?
答案1
答案2
Openssh 可以配置为向另一端发送客户端或服务器活动消息。如果没有得到响应,连接将被终止。从服务器端,查看ClientAliveInterval
和ClientAliveCountMax
配置选项。从客户端,查看ServerAliveInterval
和ServerAliveCountMax
选项。TCPKeepAlive
也是一个选项,但可以欺骗,而以前的选项则不然,所以它们可能更好。
如果将这些设置为合理的值,您可能永远不会再遇到连接挂起的情况。唯一的缺点是,出于安全原因,如果您希望 ssh 连接终止,您的 ssh 连接可能会保持打开状态。
请参阅OpenSSH sshd 配置手册页和OpenSSH ssh 配置手册页欲了解更多信息。
答案3
尝试Ctrl+Break