温馨提示×

ubuntu vsftp怎么限速

小樊
46
2026-09-10 03:53:09
栏目: 智能运维

在 Ubuntu 上使用 vsftpd(Very Secure FTP Daemon) 进行限速,主要是通过修改 vsftpd.conf 配置文件来实现。vsftpd 支持匿名用户本地用户分别限速。


一、安装 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

1️⃣ 限制本地用户速度(例如 1MB/s)

local_max_rate=1048576

2️⃣ 限制匿名用户速度(例如 100KB/s)

anon_max_rate=102400

保存后重启服务:

sudo systemctl restart vsftpd

四、对单个用户限速(推荐方式)

vsftpd 支持 每用户配置目录

1️⃣ 启用用户配置

/etc/vsftpd.conf 中添加:

user_config_dir=/etc/vsftpd/userconf

2️⃣ 创建用户配置目录

sudo mkdir -p /etc/vsftpd/userconf

3️⃣ 为指定用户创建配置文件

例如限制用户 ftpuser 为 500KB/s:

sudo nano /etc/vsftpd/userconf/ftpuser

内容:

local_max_rate=512000

4️⃣ 重启服务

sudo systemctl restart vsftpd

五、验证限速是否生效

从客户端上传/下载文件,观察速度:

ftp your_server_ip

或使用 wget / curl 测试。


六、常见问题

❓ 限速不生效?

  • 确认使用的是 本地用户登录
  • 确认 local_enable=YES
  • 确认没有被防火墙或网卡层面限速

❓ 想限制总带宽?

vsftpd 本身不支持总带宽限制,可配合:

  • tc(流量控制)
  • trickle
  • 网络层 QoS

如果你愿意,可以告诉我:

  • 匿名还是本地用户
  • 想限制 上传 / 下载 / 两者
  • 大概目标速度

我可以给你一份完整可直接用的配置

0