在CentOS上配置SFTP帶寬限制可以通過多種方法實現,其中一種常見的方法是使用tc
(Traffic Control)工具來限制帶寬。以下是一個基本的步驟指南:
首先,確保你的CentOS系統上安裝了tc
工具。通常情況下,它已經包含在系統中,但如果沒有,可以使用以下命令安裝:
sudo yum install iproute
假設你想限制SFTP用戶的帶寬為1Mbps(即1024kbps),可以使用以下步驟:
sudo tc qdisc add dev eth0 root handle 1: htb default 30
這里的eth0
是你的網絡接口名稱,根據實際情況替換。
sudo tc class add dev eth0 parent 1: classid 1:1 htb rate 1024kbps ceil 1024kbps
sudo tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip dport 22 0xffff flowid 1:1
這里的22
是SFTP的默認端口。
你可以使用以下命令來查看當前的隊列規則和類:
sudo tc -s qdisc ls dev eth0
sudo tc -s class ls dev eth0
sudo tc -s filter ls dev eth0
上述配置在系統重啟后會丟失。為了持久化配置,可以將這些命令添加到系統的啟動腳本中,例如/etc/rc.local
文件中。
打開/etc/rc.local
文件:
sudo nano /etc/rc.local
在exit 0
之前添加以下內容:
tc qdisc add dev eth0 root handle 1: htb default 30
tc class add dev eth0 parent 1: classid 1:1 htb rate 1024kbps ceil 1024kbps
tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip dport 22 0xffff flowid 1:1
保存并退出編輯器。
重啟系統并測試SFTP帶寬限制是否生效:
sudo reboot
重啟后,使用SFTP客戶端連接到服務器,并進行文件傳輸測試,確保帶寬限制生效。
tc
命令。通過以上步驟,你應該能夠在CentOS上成功配置SFTP帶寬限制。