在 CentOS 上 SFTP 频繁断连 / 自动断开,通常不是 SFTP 本身的问题,而是 SSH(sshd)配置、网络或资源限制 导致的。下面按常见原因 → 排查方式 → 解决办法给你梳理。
Connection closed / broken pipeCentOS 默认 SSH 有空闲超时设置。
grep -Rin "ClientAlive" /etc/ssh/sshd_config
编辑:
vi /etc/ssh/sshd_config
修改或添加:
ClientAliveInterval 60
ClientAliveCountMax 3
含义:
重启 SSH:
systemctl restart sshd
ping -c 100 服务器IP
mtr 服务器IP
TCPKeepAlive yes
getenforce
tail -f /var/log/audit/audit.log
chown user:user /home/user
chmod 755 /home/user
如果你配置了:
Subsystem sftp internal-sftp
Match User sftpuser
ChrootDirectory /data/sftp
chown root:root /data/sftp
chmod 755 /data/sftp
fork failedulimit -n
cat /etc/security/limits.conf
tail -f /var/log/secure
journalctl -u sshd -f
sftp -v user@ip
/var/log/secureClientAlive如果你愿意,可以把:
发给我,我可以直接帮你精确定位原因。