如何更改服务器端的 ssh 超时?

如何更改服务器端的 ssh 超时?

我有一个用于导出 oracle 表的 shell 脚本。该脚本在执行过程中会打印一些文本,例如“导出 tt_customers......已导出 1343 行”。此脚本在 redhat 5.7 enterprise server 上运行。

问题是,当导出一些大表时,ssh 客户端会无限阻塞。实际上,一段时间后脚本就完成了。

有人说是因为 ssh 客户端长时间没有收到任何响应,所以连接被关闭了。我把 putty 的设置“connection->seconds between keepalives(0 to turn off)”改成了 60,脚本执行成功了。

但是我们的客户使用.net应用程序远程运行脚本,而我不想更改.net应用程序。所以我希望在服务器端解决这个问题,而不改变客户端配置和命令(例如nohup)。

我像这样更改了 /etc/ssh/sshd_config 中的配置项:

 ClientAliveInterval 300
 TCPKeepAlive yes
 ClientAliveCountMax  5 

然后我重新启动了 ssh 服务器:

/sbin/service sshd restart

脚本仍然无法成功运行。

我应该如何更改配置?

答案1

您可能想要使用ServerAliveIntervalServerAliveCountMax查看以下问题:

https://unix.stackexchange.com/questions/34004/how-does-tcp-keepalive-work-in-ssh

相关内容