gar*_*les 15 linux ssh fedora timeout mac-osx
当我从家里通过 ssh 连接到我们的一台办公室服务器(运行 Fedora 10)时,我的会话在相当短的活动时间(5 分钟左右)后超时。我试过TcpKeepAlive
在客户端使用,没有效果。
我不明白的是,如果我在公司 LAN 上的办公室,我可以让会话整天处于非活动状态而不会超时,因此这种行为似乎取决于我的位置。
任何想法为什么会发生这种情况以及如何在我不在 LAN 上时防止超时?如果有帮助,我正在 Mac OSX 上使用终端客户端。
更新- 戴夫·德拉格 (Dave Drager) 建议使用ServerAliveInterval
非零设置TcpKeepAlive=no
对我有用。关于其他一些答案,ClientAlive
Mac OSX SSH 客户端不接受 ... 设置。
有关于这个问题的好书面记录在这里。
他们建议:
ssh -o TCPKeepAlive=yes
Run Code Online (Sandbox Code Playgroud)
或者:
ssh -o TCPKeepAlive=no -o ServerAliveInterval=15
Run Code Online (Sandbox Code Playgroud)
但是,我在我的工作现场确实遇到了一个问题,我与会话断开连接,而在家里他们很好。我相信我的防火墙 (SonicWall) 可能因为 TCPKeepAlive 出现故障,可能是因为 NAT。
幸运的是,我的 SSH 客户端 SecureCRT 有一个“NO-OP”协议选项,我相信它基本上发送了一个对服务器没有任何作用的命令。通过手动启用此功能,我可以保持连接。不确定 MacOSX 终端客户端有什么类似的。有一篇关于如何在命令行上实现“NO-OP”的文章。
最后,您可能希望使用 Wireshark 或其他嗅探器来观察您的实际 TCP 连接,以了解它发生了什么。这将是查看为什么它仍然偶尔断开连接的最后方法。
归档时间: |
|
查看次数: |
9872 次 |
最近记录: |