编辑/etc/vsftpd.conf文件,通过以下参数调整提升传输效率:
pasv_enable=YES
pasv_min_port=50000 # 设置被动模式端口范围(根据服务器端口空闲情况调整)
pasv_max_port=51000
max_clients=100 # 最大并发连接数(建议不超过服务器内存支持的极限)
max_per_ip=5 # 单IP最大并发连接数(避免单个IP占用过多资源)
tcp_keepalive=YES
data_connection_timeout=300 # 数据连接超时时间(秒)
idle_session_timeout=300 # 空闲会话超时时间(秒)
compress=YES
anonymous_enable=NO
write_enable=NO # 仅允许下载时设置为NO
/etc/sysctl.conf,优化网络性能:net.core.somaxconn = 65535 # 监听队列最大长度(避免连接被拒绝)
net.ipv4.tcp_max_syn_backlog = 65535 # SYN队列长度(应对高并发)
net.ipv4.tcp_tw_reuse = 1 # 复用TIME-WAIT状态的连接(减少资源占用)
net.ipv4.tcp_fin_timeout = 30 # FIN_WAIT_2状态超时时间(秒)
net.ipv4.ip_local_port_range = 1024 65535 # 本地端口范围(足够大的范围支持被动模式)
应用更改:sudo sysctl -p/etc/security/limits.conf,增加用户文件句柄限制(避免大量连接时出现“Too many open files”错误):* soft nofile 65535
* hard nofile 65535
ping、traceroute命令检测服务器与客户端之间的延迟、丢包率,确保网络畅通。sudo ufw allow 21/tcp
sudo ufw allow 50000:51000/tcp
sudo ufw reload
sudo firewall-cmd --permanent --zone=public --add-service=ftp
sudo firewall-cmd --permanent --zone=public --add-port=50000-51000/tcp
sudo firewall-cmd --reload
top、htop监控CPU、内存使用情况;netstat -antp查看连接数;iostat监控磁盘IO(若使用磁盘存储,避免IO瓶颈)。ssl_enable=NO
(注:生产环境建议启用SSL/TLS,可通过优化证书(如使用ECC证书)减少加密开销。)sudo useradd -d /home/ftpuser -s /sbin/nologin ftpuser
sudo mkdir -p /home/ftpuser/files
sudo chown ftpuser:ftpuser /home/ftpuser/files
sudo chmod 755 /home/ftpuser/files
完成上述配置后,重启vsftpd服务使更改生效:
sudo systemctl restart vsftpd
sudo systemctl enable vsftpd
通过以上步骤,可显著提升Debian上vsftpd的连接速度和整体性能。需根据实际网络环境、服务器硬件调整参数(如被动模式端口范围、最大连接数),并在测试环境中验证效果。