溫馨提示×

如何限制Debian SFTP訪問速度

小樊
47
2025-09-06 06:00:03
欄目: 智能運維

要限制Debian上的SFTP訪問速度,您可以使用tc(流量控制)工具和cgroups(控制組)來實現

方法1:使用tc工具

  1. 首先,確保您已經安裝了iproute2軟件包,它包含了tc命令。如果沒有,請運行以下命令來安裝:
sudo apt-get update
sudo apt-get install iproute2
  1. 創建一個名為sftp的隊列規則:
sudo tc qdisc add dev eth0 root handle 1: htb default 30

eth0替換為您的網絡接口名稱。

  1. 為SFTP流量創建一個類:
sudo tc class add dev eth0 parent 1: classid 1:1 htb rate 1mbit ceil 1mbit

這將限制SFTP訪問速度為1Mbps。您可以根據需要更改rateceil值。

  1. 創建一個過濾器,將SFTP流量分配給剛剛創建的類:
sudo tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip dport 22 0xffff flowid 1:1

這將把目標端口為22(SFTP默認端口)的流量分配給類1:1。

方法2:使用cgroups

  1. 安裝cgroup-tools軟件包:
sudo apt-get update
sudo apt-get install cgroup-tools
  1. 創建一個新的cgroup:
sudo cgcreate -g net_cls:/sftp
  1. 為新創建的cgroup分配一個classid:
echo $((0x10000 + 1)) | sudo tee /sys/fs/cgroup/net_cls/sftp/net_cls.classid

這將分配一個classid,例如0x10001。

  1. 將SFTP用戶添加到新創建的cgroup:
sudo cgclassify -g net_cls:/sftp <username>

<username>替換為您要限制速度的用戶名。

  1. 使用tc工具為cgroup設置帶寬限制:
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 filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip dst <user_ip> flowid 1:1

<user_ip>替換為SFTP用戶的IP地址。

現在,您已經成功限制了Debian上SFTP訪問速度。請注意,這些方法可能需要根據您的具體需求進行調整。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女