温馨提示×

怎么限制ubuntu ftpserver带宽

小樊
42
2026-09-23 20:04:03
栏目: 智能运维

在 Ubuntu 上限制 FTPServer(FTP/FTPS)带宽,常见做法有几种,取决于你用的是什么 FTP 服务软件。下面以最常见的 vsftpd 和 ProFTPD 为例说明。


一、使用 vsftpd(最常见)

1. 限制单用户/全局带宽

vsftpd 本身支持限速参数:

编辑配置文件(通常是 /etc/vsftpd.conf):

sudo nano /etc/vsftpd.conf

添加或修改以下参数(单位是 字节/秒):

# 匿名用户最大速度
anon_max_rate=102400

# 本地用户最大速度
local_max_rate=512000

示例:

  • 102400 = 100 KB/s
  • 512000 = 500 KB/s

保存后重启服务:

sudo systemctl restart vsftpd

✅ 优点:简单、稳定
❌ 缺点:只能按“用户类型”限速,不能精细到 IP


二、使用 ProFTPD(更灵活)

1. 全局限速

编辑 /etc/proftpd/proftpd.conf:

TransferRate RETR 100
TransferRate STOR 100

单位:KB/s

2. 按用户/组限速

<Directory /home/ftp>
  TransferRate RETR 200
  TransferRate STOR 200
</Directory>

或针对用户:

<Limit ALL>
  TransferRate RETR 300
</Limit>

重启服务:

sudo systemctl restart proftpd

三、使用系统级限速(推荐高级用户)

如果你希望 所有 FTP 流量统一限速(包括 FTPS、SFTP 混合环境),可以用 tc 或 wondershaper。

使用 wondershaper(最简单)

sudo apt install wondershaper
sudo wondershaper eth0 1000 1000
  • 上行 / 下行都是 1 Mbps
  • 对所有流量生效(不只是 FTP)

四、FTPS 特别说明

  • FTPS(隐式/显式):以上方法都适用
  • SFTP(SSH):vsftpd / proftpd 无效,需用:
    • pam_limits
    • 或 tc 限速

五、推荐方案总结

场景 推荐方式
普通 vsftpd local_max_rate
多用户精细控制 ProFTPD
服务器整体限速 tc / wondershaper
云服务器防止跑满 系统级限速

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

  • 你用的是 vsftpd / proftpd / 其他
  • 是 FTP / FTPS / SFTP
  • 想限制 单用户还是整体

我可以直接给你一份可复制的配置。

0 踩