在 Linux 上搭建 FTP 服务器并做限速,常见做法取决于你使用的 FTP 软件。下面按常用方案说明。
编辑配置文件(通常是 /etc/vsftpd.conf 或 /etc/vsftpd/vsftpd.conf):
# 单位:Bytes/s
local_max_rate=102400 # 本地用户最大 100KB/s
anon_max_rate=51200 # 匿名用户最大 50KB/s
重启服务:
systemctl restart vsftpd
在 vsftpd.conf 中启用用户配置目录:
user_config_dir=/etc/vsftpd/user_conf
为指定用户创建配置文件:
mkdir -p /etc/vsftpd/user_conf
vi /etc/vsftpd/user_conf/testuser
内容:
local_max_rate=204800
编辑 /etc/proftpd/proftpd.conf:
TransferRate RETR 100 # 下载 100KB/s
TransferRate STOR 80 # 上传 80KB/s
单位默认是 KB/s。
<Limit READ>
TransferRate user1 50
</Limit>
<Class limited>
From 192.168.1.0/24
</Class>
<Limit ALL>
TransferRate 30
Class limited
</Limit>
重启:
systemctl restart proftpd
启动参数方式:
pure-ftpd -t 100 -T 80
-t:上传限速(KB/s)-T:下载限速(KB/s)或配置文件中:
TrustedIP 192.168.1.100
LimitRecv 100
LimitSend 80
使用 tc 或 wondershaper 限制网卡/端口速率(粗粒度):
wondershaper eth0 1000 1000
vsftpd 的 max_rate 是 每连接,不是每用户如果你能告诉我:
我可以给你精确配置示例。