解决 FileZilla 20秒连接超时问题. (SSH + sftp协议)

本文介绍了如何解决使用SFTP客户端连接服务器时,因长时间闲置导致的连接延迟、错误提示及断开连接的问题。通过修改`/etc/ssh/sshd_config`配置文件,将`TCPKeepAlive`设为yes,设置`ClientAliveInterval`为60,保持连接活跃。此外,针对FileZilla客户端,建议设置连接超时时间为99秒,以优化使用体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用sftp客户端工具连接sftp服务器时,闲置一段时间后,再使用就会等很久然后报一个错误:

错误: Network error: Software caused connection abort
错误: 读取目录列表失败

。然后从服务器断开,重新连接。响应速度相比重新建立连接要慢很多。如果频繁使用的sftp连接,出现这种问题就会很头疼。

解决办法

vi /etc/ssh/sshd_config

找到 TCPKeepAlive yes把前面的#去掉

找到ClientAliveInterval 参数去掉前面的#,  把后面的0改成60,即 ClientAliveInterval 60 。

ClientAliveInterval指定了服务器端向客户端请求消息的时间间隔, 默认是0,不发送。而ClientAliveInterval 60表示每分钟发送一次,然后客户端响应,这样就保持长连接了。这里比较怪的地方是:不是客户端主动发起保持连接的请求(如FTerm, CTerm等),而是需要服务器先主动。

另外,至于ClientAliveCountMax,使用默认值3即可。ClientAliveCountMax表示服务器发出请求后客户端没有响应的次数达到一定值,就自动断开,正常情况下,客户端不会不响应。

最后,重启sshd服务 。linux各版本重启命令可能不同。centos6.5命令为service sshd restart。centos7重启sshd服务命令为 systemctl restart sshd.service。

[解决方案]
第一步: 修改/etc/ssh/sshd_config文件中的Subsystem sftp /usr/libexec/openssh/sftp-server 改为 Subsystem sftp internal-sftp.
第二步: 设置FileZilla的连接超时时间为99秒.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值