优化Ubuntu FTP服务器带宽使用的综合方法
local_max_rate(本地用户)和anon_max_rate(匿名用户)参数设置最大传输速度(单位:字节/秒)。例如,限制本地用户下载速度为50KB/s,需添加local_max_rate=50000;限制匿名用户为30KB/s,添加anon_max_rate=30000。修改后重启vsftpd服务(sudo systemctl restart vsftpd)使配置生效。pasv_enable=YES,并指定被动模式端口范围(如pasv_min_port=30000、pasv_max_port=31000),避免防火墙或NAT设备阻止主动连接,提升数据传输稳定性。max_clients参数限制最大并发连接数(如max_clients=50),防止服务器资源耗尽;对于本地用户,可设置local_max_clients进一步细化控制。sudo wondershaper eth0 200 24;取消限制用sudo wondershaper clear eth0。limit模块精细化限速,例如限制FTP数据端口(20)的传输速度为100KB/s,添加sudo iptables -A OUTPUT -p tcp --dport 20 -m limit --limit 1/s --limit-burst 5 -j ACCEPT;保存规则(sudo iptables-save)避免重启失效。sudo tc qdisc add dev eth0 root handle 1: htb、sudo tc class add dev eth0 parent 1: classid 1:1 htb rate 100mbit ceil 100mbit、sudo tc class add dev eth0 parent 1:1 classid 1:10 htb rate 10mbit ceil 10mbit、sudo iptables -t mangle -A OUTPUT -s 192.168.1.100 -j MARK --set-mark 10、sudo tc filter add dev eth0 parent 1: protocol ip prio 1 handle 10 fw flowid 1:10。ping测试延迟、mtr检测丢包率,确保网络稳定;优先使用高速网络(如千兆以太网),避免共享网络导致的带宽抢占。/etc/sysctl.conf中的net.core.rmem_max(接收缓冲区)和net.core.wmem_max(发送缓冲区)参数(如设置为262144),提升网络传输效率。修改后执行sudo sysctl -p生效。gzip、tar等工具压缩文件后再传输(如tar -czvf file.tar.gz large_file),减少传输数据量;部分FTP客户端支持自动压缩/解压功能。tar -cvf files.tar *.txt),或使用多线程工具(如lftp的-P参数开启多线程)并行传输,提升传输效率。