Debian 上 FTP 服务器连接慢,通常不是“网速”问题,而是服务器在建立连接或响应命令阶段被卡住。下面按最常见原因 → 现象 → 解决办法给你梳理。
现象
ftp 连上后卡在:220 Welcome
或输入用户名后等很久原因 FTP 服务器(vsftpd / proftpd)默认会做:
如果 DNS 不通或很慢 → 连接卡顿
解决(vsftpd)
sudo nano /etc/vsftpd.conf
添加或修改:
reverse_lookup_enable=NO
重启:
sudo systemctl restart vsftpd
现象
原因
systemd-logind、nss、ldap 等解决 vsftpd 可禁用 PAM:
pam_service_name=vsftpd
# 或直接
local_enable=YES
或测试:
getent passwd youruser
如果慢,说明系统账号解析有问题。
现象
ls / dir 特别慢或卡住原因
解决(vsftpd)
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000
防火墙:
ufw allow 30000:31000/tcp
如果是云服务器,还要:
pasv_address=你的公网IP
现象
netstat 看到尝试 IPv6解决
listen=YES
listen_ipv6=NO
或系统级禁用 IPv6(不推荐,除非确认不用)
connect_timeout=10
data_connection_timeout=120
idle_session_timeout=300
在服务器上:
tcpdump -i eth0 port 21
或
journalctl -u vsftpd -f
客户端:
ftp -d server_ip
看卡在哪一步。
Debian FTP 慢,90% 是 DNS 反向解析 + PASV 配置问题
如果你愿意,可以告诉我:
我可以直接给你一份可复制的配置。