在 Linux 上给 FTP 服务器限速,具体做法取决于你使用的 FTP 服务端软件。下面以 vsftpd(最常见) 为主,同时补充 ProFTPD / Pure-FTPd 的限速方法。
vsftpd 支持 上传 / 下载限速,单位是 字节/秒(Byte/s)。
sudo vim /etc/vsftpd.conf
# 匿名用户下载限速(字节/秒)
anon_max_rate=102400 # 100KB/s
# 本地用户下载限速
local_max_rate=512000 # 500KB/s
⚠️ 注意:
- 单位是 Byte/s,不是 bit/s
102400≈ 100KB/s1048576≈ 1MB/s
sudo systemctl restart vsftpd
✅ 效果
user_config_diruser_config_dir=/etc/vsftpd/user_conf
sudo mkdir -p /etc/vsftpd/user_conf
sudo vim /etc/vsftpd/user_conf/testuser
内容:
local_max_rate=204800
sudo systemctl restart vsftpd
✅ 不同用户可拥有不同速度
sudo vim /etc/proftpd/proftpd.conf
TransferRate RETR 100 # 下载 100KB/s
TransferRate STOR 80 # 上传 80KB/s
或针对用户:
<Directory /home/ftp>
TransferRate RETR 200
</Directory>
sudo systemctl restart proftpd
pure-ftpwho
限速参数(启动服务时):
pure-ftpd -T 100:200
含义:
或:
echo "200" > /etc/pure-ftpd/conf/AnonymousBandwidth
trickle(应用层限速)trickle -d 100 -u 50 vsftpd
⚠️ 不稳定,不适合生产环境
| 限速值 | 实际速度 |
|---|---|
| 102400 | 100 KB/s |
| 1048576 | 1 MB/s |
| 5242880 | 5 MB/s |
✅ 最常用 & 稳定
local_max_rate✅ 多用户不同限速
user_config_dir✅ 企业级复杂控制
如果你愿意,可以告诉我:
我可以给你一份 可直接复制使用的完整配置。