在 Debian 上搭建的 FTP 服务器(常见如 vsftpd、proftpd、pure-ftpd)出现“慢”的情况,通常不是单一原因,而是网络、配置、DNS、防火墙或客户端模式等多方面叠加。下面按最常见原因 → 排查方法 → 解决建议来说明。
FTP 服务器在客户端连接时,常会尝试:
现象
USER 输入后等很久才提示密码解决(vsftpd 示例)
reverse_lookup_enable=NO
或
use_hosts=YES
ProFTPd
UseReverseDNS off
IdentLookups off
FTP 有:
云服务器 / NAT 环境下 PASV 最容易出问题。
典型问题
vsftpd 正确示例
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000
pasv_address=你的公网IP
防火墙
ufw allow 20:21/tcp
ufw allow 30000:31000/tcp
特别是在:
现象
检查
dmesg | grep ftp
建议
FTP 慢 ≠ 网络慢
检查
iostat -x 1
或
top
常见于
比如:
/home/ftp 有几十万文件ls 要遍历目录现象
解决
Windows 资源管理器、FileZilla 默认不同
建议
Debian 默认启用 IPv6
现象
解决
# vsftpd
listen=YES
listen_ipv6=NO
# 1. 看服务类型
dpkg -l | grep ftp
# 2. 测试连接耗时
time ftp localhost
# 3. 看日志
journalctl -u vsftpd -f
# 4. 检查 DNS
getent hosts 客户端IP
# 5. 检查端口
ss -tnlp | grep ftp
请告诉我:
我可以直接给你一份可用配置文件。