在 Ubuntu 下使用 vsftpd 进行限速,可以通过配置文件中的参数来实现。vsftpd 支持全局限速和用户/匿名限速。
sudo apt update
sudo apt install vsftpd
vsftpd 主要使用以下参数限速(单位是 字节/秒):
| 参数 | 作用 |
|---|---|
anon_max_rate |
匿名用户最大速度 |
local_max_rate |
本地用户最大速度 |
user_config_dir |
为不同用户单独设置速度 |
编辑配置文件:
sudo nano /etc/vsftpd.conf
local_max_rate=102400
anon_max_rate=51200
⚠️ 单位是 字节/秒
100KB/s = 100 × 1024 = 102400
保存后重启服务:
sudo systemctl restart vsftpd
在 /etc/vsftpd.conf 中添加:
user_config_dir=/etc/vsftpd/user_conf
sudo mkdir -p /etc/vsftpd/user_conf
例如限制用户 testuser 为 200KB/s:
sudo nano /etc/vsftpd/user_conf/testuser
内容:
local_max_rate=204800
重启 vsftpd:
sudo systemctl restart vsftpd
可以使用 ftp 或 lftp 测试下载速度:
lftp ftp://user@server
> get bigfile
local_max_rate 只对 本地系统用户 有效anon_max_ratesudo journalctl -u vsftpd
如果你需要 按 IP 限速、结合 tc 流量控制,或者 Docker 中的 vsftpd 限速方案,也可以继续问我。