SSH连接 – 一段时间后我什么都不能input

这使得我连接到的任何服务器都会发生变化。 我input:

ssh user@server 

我login,一切都可以运行几分钟。 但一段时间后,当我尝试在terminal中input任何内容时,可能会切换到其他程序(浏览器,ftp客户端等),光标在input时停止闪烁,但实际上没有任何input。 我不能执行任何命令,只能closuresterminal窗口,重新打开并重新连接。

如果它是重要的,我在本地机器上运行Ubuntu 12.04。

您的客户端和服务器之间有NAT路由器或类似的状态防火墙。 当您打开TCP会话时,防火墙会记住在您的客户端端口和服务器端口之间创build了TCP连接。 只要防火墙记住连接,它将继续在客户端和服务器之间传递数据包。

会话“中断”,因为防火墙忘记连接并阻止传递数据包。 防火墙可能会忘记连接,因为它在空闲连接上有超时。 或者它可能忘记,因为它有一个有限的内存量和太多的新连接正在创build它记住所有的人。

ssh有一些选项可以通过在连接空闲时发送定期的“保持活动”数据包来解决这个问题。 查看TCPKeepAliveServerAliveIntervalServerAliveCountMax选项。