FileZilla在CentOS上变慢的排查与优化
一 快速自检
- 在客户端确认未启用速度限制,并将“最大同时传输数”提升到10;若服务器与网络允许,可尝试更高并发(如10–20)。
- 协议与模式优先:公网/NAT/代理环境优先用SFTP或被动模式 FTP;主动模式常因防火墙/NAT导致握手失败或降速。
- 服务器侧(如用 vsftpd)开启被动模式端口范围(例如14140–14146),并在防火墙放行该范围及21端口。
- 传输策略:大文件优先用SCP/RSYNC;海量小文件先打包再传,减少握手与元数据开销。
- 若字符集出现乱码或列表缓慢,尝试在客户端将字符集设为UTF-8。
二 服务器端优化(vsftpd示例)
- 并发与性能:提升最大同时传输/连接数(如10–20),并适度增大服务器文件描述符限制(/etc/security/limits.conf)。
- 被动模式:在 vsftpd.conf 中设置被动端口范围(如14140–14146),并在 firewalld/iptables 放行该范围与21端口。
- 加密与认证:启用TLS/SSL(FTPS)或直接使用SFTP,在安全性与性能间取得平衡。
- 系统与安全:可按需调整内核网络参数(如 net.core.somaxconn、net.ipv4.tcp_max_syn_backlog),并做访问控制(强密码、失败登录封禁、IP 白名单、隐藏版本信息)。
三 客户端与网络优化
- 客户端设置:在 FileZilla 的“传输设置”将“最大同时传输数”设为10;禁用速度限制;优先被动模式;大文件用SCP/RSYNC替代。
- 防火墙与路由:确保放行21端口及被动端口范围;NAT/代理后避免使用主动模式。
- 网络诊断:用iftop/nload 排查带宽占用与丢包;跨公网可考虑更稳定的链路或缩短链路路径。
四 常见场景与建议配置
| 场景 |
建议 |
| 公网/NAT/代理后 |
使用SFTP或被动模式 FTP;服务器配置被动端口范围并放行防火墙;客户端并发10 |
| 内网高吞吐 |
客户端并发可试10–20;服务器并发与文件描述符上限同步上调 |
| 海量小文件 |
先打包再传;或改用RSYNC增量同步 |
| 大文件单传 |
优先SCP/RSYNC;启用断点续传与校验 |
| 已启用TLS仍慢 |
检查证书与加密套件;在安全性可接受前提下评估切换至非加密或轻量加密方案 |
五 仍未改善时的定位步骤
- 基线测试:用 scp/rsync 与 ftp/sftp 分别做多次大文件传输,确认是否为工具或协议瓶颈。
- 抓包与日志:在客户端/服务器抓包(如 tcpdump/wireshark)定位握手、重传与超时;开启 vsftpd 日志观察被动端口与登录流程。
- 逐项回退:从并发、加密、模式、防火墙逐项变更验证,定位触发点。
- 资源与内核:检查 CPU/磁盘 I/O、软中断与网络丢包;必要时优化 sysctl 与网卡队列。
- 变更注意:修改配置前先备份,变更后重启服务使其生效。