这篇文章给大家分享的是有关PureFTPd中全局带宽限制知识点有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
如何限制FTP占用的总的带宽?
Pure-FTPd可以限制每个会话占用的带宽.不过,限制总的带宽是故意不添加的一种功能,因为大部分的操作系统已经有了有效的算法来处理带宽限制.
下面是Linux上的一个例子.
1)查看/proc/sys/net/ipv4/ip_local_port_range文件.可以看到两个数字:这就是Linux内核处理外界连接的时候使用的本地端口的范围.你希望为被动模式FTP保留的FTP端口一定不能在这个范围内.所以,如果:
"cat /proc/sys/net/ipv4/ip_local_port_range"返回"32768-61000",那么你可保 留端口10000到20000给FTP服务器,而不是30000-40000.(同样,你也可以选择改编本 地的端口范围).
2)更改前面的那些行,保存下面的脚本.
#! /bin/sh
#简单的带宽限制--英文原本作者j@4u.net
#将下面的数据更改为你的连接带宽
#(对于等用户,写上你可能得到的***带宽,而不是本地以太网连接的速度.)
REAL_BW='10Mbit'
#将下面的数据改为你想给FTP分配的带宽
#我们使用的带宽单位都是megabits,不是megabytes,所以80Kbit就是10 Kilobytes/s
FTP_BW='80Kbit'
#将下面的数据改为你的物理设备(或者'ppp0')
NIC='eth0'
#将下面的数据改为你给被动FTP分配的端口范围
FTP_PORT_LOW="10000" FTP_PORT_HIGH="20000" tc qdisc add dev "$NIC" root handle 1: cbq \ bandwidth "$REAL_BW" avpkt 1000 tc class add dev "$NIC" parent 1: classid 1:1 cbq bandwidth "$REAL_BW" \ rate "$REAL_BW" maxburst 5 avpkt 1000 tc class add dev "$NIC" parent 1:1 classid 1:10 cbq \ bandwidth "$REAL_BW" rate "$FTP_BW" maxburst 5 avpkt 1000 bounded tc qdisc add dev "$NIC" parent 1:10 sfq quantum 1514b tc filter add dev "$NIC" parent 1: protocol ip handle 1 fw flowid 1:10 iptables -t mangle -A OUTPUT -p tcp --sport 20:21 -j MARK --set-mark 1 iptables -t mangle -A OUTPUT -p tcp \ --sport "$FTP_PORT_LOW":"$FTP_PORT_HIGH" -j MARK --set-mark 1
3)确保你已经安装了'tc'命令.要是你的发行版不提供'ip'和'tc'命令,脚本就无法 运行,要使用这两个命令,你得安装一个叫做'iproute2'的软件包.
4)加上你给定的被动端口范围,启动Pure-FTPd.
/usr/local/sbin/pure-ftpd -p 10000:20000 -HBA
5)运行第二步的时候建立的脚本.要是脚本无法运行,那就检查QOS支持是否编译进了你的Linux内核.
感谢各位的阅读!关于“PureFTPd中全局带宽限制知识点有哪些”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。