在 Ubuntu 上使用 vsftpd(Very Secure FTP Daemon) 进行限速,主要是通过修改 vsftpd.conf 配置文件来实现。vsftpd 支持匿名用户和本地用户分别限速。
sudo apt update
sudo apt install vsftpd
vsftpd 中常用的限速参数:
| 参数 | 说明 |
|---|---|
anon_max_rate |
匿名用户最大传输速率(字节/秒) |
local_max_rate |
本地用户最大传输速率(字节/秒) |
max_per_ip |
每个 IP 最大连接数(间接限流) |
⚠️ 单位是 字节/秒(B/s),不是 bit/s
编辑配置文件:
sudo nano /etc/vsftpd.conf
local_max_rate=1048576
anon_max_rate=102400
保存后重启服务:
sudo systemctl restart vsftpd
vsftpd 支持 每用户配置目录。
在 /etc/vsftpd.conf 中添加:
user_config_dir=/etc/vsftpd/userconf
sudo mkdir -p /etc/vsftpd/userconf
例如限制用户 ftpuser 为 500KB/s:
sudo nano /etc/vsftpd/userconf/ftpuser
内容:
local_max_rate=512000
sudo systemctl restart vsftpd
从客户端上传/下载文件,观察速度:
ftp your_server_ip
或使用 wget / curl 测试。
local_enable=YESvsftpd 本身不支持总带宽限制,可配合:
tc(流量控制)trickle如果你愿意,可以告诉我:
我可以给你一份完整可直接用的配置。