在CentOS上,您可以使用tc
(流量控制)工具和cgroups
(控制組)來限制SFTP用戶的帶寬。以下是設置帶寬限制的步驟:
sudo yum install tc cgroup-tools
sudo cgcreate -g net_cls:/sftp_bandwidth
echo $((1<<20)) | sudo tee /sys/fs/cgroup/net_cls/sftp_bandwidth/net_cls.classid
這里,我們將帶寬限制為1MB/s。您可以根據需要更改這個值。
sudo usermod -aG sftp_bandwidth <username>
將<username>
替換為您要限制帶寬的SFTP用戶名。
sudo tc qdisc add dev eth0 root handle 1: htb default 30
sudo tc class add dev eth0 parent 1: classid 1:1 htb rate 1mbit ceil 1mbit
sudo tc class add dev eth0 parent 1:1 classid 1:30 htb rate 1mbit ceil 1mbit
sudo tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip dst <server_ip> flowid 1:30
將<server_ip>
替換為您的CentOS服務器的IP地址。這將限制SFTP用戶的帶寬為1MB/s。
sudo systemctl restart sshd
現在,您已經成功地為SFTP用戶設置了帶寬限制。請注意,這些設置可能會在系統重啟后丟失。要使設置永久生效,您可以將這些命令添加到/etc/rc.local
文件中。