温馨提示×

ubuntu ftpserver为何传输慢

小樊
47
2026-09-02 12:13:20
栏目: 智能运维

在 Ubuntu 上搭建的 FTP 服务器(如 vsftpdproftpd)出现传输速度慢,通常不是单一原因,而是网络、配置、模式、磁盘或防火墙等多方面因素叠加。下面按最常见原因 → 排查方法 → 解决建议来说明。


一、FTP 模式问题(最常见)

1. 使用了被动模式(PASV)但端口未正确配置

FTP 有:

  • 主动模式(PORT)
  • 被动模式(PASV)

Ubuntu 服务器在云环境 / NAT 下,被动模式最容易出问题

现象

  • 能连接,但 LIST 或传输极慢
  • 小文件正常,大文件卡死

解决(以 vsftpd 为例)

sudo nano /etc/vsftpd.conf

确保:

pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000
pasv_address=你的公网IP

然后开放端口:

sudo ufw allow 30000:31000/tcp

二、网络与 MTU / 网卡问题

2. MTU 不匹配(云服务器常见)

MTU 过大导致分片重传。

检查

ip link

临时测试

sudo ifconfig eth0 mtu 1400

如果速度明显提升,说明是 MTU 问题。


三、 vsftpd 本身配置问题

3. 未开启异步或限速

vsftpd 默认不会限速,但某些配置会。

检查:

anon_max_rate=0
local_max_rate=0

非 0 表示限速(单位 byte/s)


四、磁盘 IO 瓶颈

4. 磁盘写入慢

FTP 很吃磁盘性能。

检查

iostat -x 1

dstat

如果是:

  • 机械盘
  • 低性能云盘
  • RAID 重建中

都会导致 FTP 慢。


五、IPv6 导致连接慢

5. vsftpd 优先 IPv6

某些客户端会卡在 IPv6 解析。

解决

listen=YES
listen_ipv6=NO

六、防火墙 / 安全组

6. 防火墙状态检测导致丢包

  • ufw
  • iptables
  • 云厂商安全组

建议

  • 放通 21 + PASV 端口段
  • 不要只开 21

七、客户端问题(容易被忽略)

7. Windows 资源管理器 FTP 很慢

Windows 自带 FTP 客户端效率极低。

建议

  • FileZilla
  • WinSCP
  • lftp(Linux)

八、加密 FTP(FTPS)性能问题

8. SSL/TLS 加密开销

FTPS(implicit / explicit)会:

  • 增加 CPU 负担
  • 小包多时更明显

如果是 CPU 弱的机器,会明显变慢。


九、快速排查清单(推荐顺序)

  1. ✅ 用 FileZilla 测试
  2. ✅ 确认 PASV 端口开放
  3. ✅ 关闭 IPv6
  4. ✅ 检查磁盘 IO
  5. ✅ 检查 MTU
  6. ✅ 看是否有 max_rate 限制

十、如果你愿意,我可以更精准帮你

你可以告诉我:

  1. FTP 软件(vsftpd / proftpd / pure-ftpd)
  2. 内网还是公网
  3. 主动还是被动模式
  4. 上传慢还是下载慢
  5. 服务器配置(CPU / 磁盘类型)

我可以直接给你一份可用配置

0