在 Ubuntu 上限制 FTPServer(FTP/FTPS) 的速度,常见做法取决于你使用的 FTP 服务端软件。最常用的是 vsftpd 和 ProFTPD,下面分别说明。
sudo apt update
sudo apt install vsftpd
编辑配置文件:
sudo nano /etc/vsftpd.conf
添加或修改以下参数:
# 限制下载速度(单位:字节/秒)
local_max_rate=102400 # 100KB/s
anon_max_rate=51200 # 匿名用户 50KB/s
说明:
local_max_rate:本地用户速度anon_max_rate:匿名用户速度✅ 修改后重启服务:
sudo systemctl restart vsftpd
sudo apt install proftpd
编辑配置文件:
sudo nano /etc/proftpd/proftpd.conf
TransferRate RETR 100 # 下载 100KB/s
TransferRate STOR 80 # 上传 80KB/s
<IfUser ftpuser>
TransferRate RETR 50
TransferRate STOR 40
</IfUser>
或按组:
<IfGroup ftpusers>
TransferRate RETR 80
</IfGroup>
✅ 重启服务:
sudo systemctl restart proftpd
适用于 整台服务器 或 端口限速,但配置复杂,一般不建议单独用于 FTP。
示例(限制 FTP 端口 21):
sudo tc class add dev eth0 parent 1: classid 1:1 htb rate 1mbit
⚠️ 需要配合 iptables + tc,适合高级场景。
如果你用的是 FTPS(隐式/显式 TLS):
ssl_enable=YES
| 场景 | 推荐 |
|---|---|
| 普通 FTP / FTPS | vsftpd |
| 多用户、精细限速 | ProFTPD |
| 临时限速 | iptables + tc |
如果你愿意,可以告诉我:
我可以给你一份 完全可用的配置文件示例。