溫馨提示×

Ubuntu iptables如何限制連接速率

小樊
53
2025-04-21 10:22:18
欄目: 智能運維

在Ubuntu系統中,使用iptables限制連接速率可以通過iptableslimit模塊來實現。以下是一些示例命令,展示了如何使用iptables來限制連接速率:

限制每秒連接數

假設你想限制每個IP地址每秒只能建立5個新的TCP連接,可以使用以下命令:

sudo iptables -A INPUT -p tcp --syn -m limit --limit 5/s -j ACCEPT
sudo iptables -A INPUT -p tcp --syn -j DROP

解釋:

  • -A INPUT:將規則添加到INPUT鏈。
  • -p tcp:指定協議為TCP。
  • --syn:只匹配SYN包(TCP三次握手的第一個包)。
  • -m limit --limit 5/s:使用limit模塊限制速率為每秒5個連接。
  • -j ACCEPT:如果匹配規則,則接受連接。
  • -j DROP:如果不匹配規則(即超過速率限制),則丟棄連接。

限制每分鐘連接數

如果你想限制每個IP地址每分鐘只能建立300個新的TCP連接,可以使用以下命令:

sudo iptables -A INPUT -p tcp --syn -m limit --limit 300/m -j ACCEPT
sudo iptables -A INPUT -p tcp --syn -j DROP

解釋:

  • -m limit --limit 300/m:使用limit模塊限制速率為每分鐘300個連接。

限制總連接數

如果你想限制每個IP地址的總連接數為1000個,可以使用以下命令:

sudo iptables -A INPUT -p tcp -m connlimit --connlimit-above 1000 -j DROP

解釋:

  • -m connlimit --connlimit-above 1000:使用connlimit模塊限制總連接數超過1000個的連接。

保存iptables規則

在Ubuntu系統中,iptables規則默認不會保存,重啟后會丟失。你可以使用iptables-persistent工具來保存規則:

sudo apt-get update
sudo apt-get install iptables-persistent

在安裝過程中,系統會提示你是否保存當前的iptables規則,選擇“是”即可。

查看iptables規則

你可以使用以下命令查看當前的iptables規則:

sudo iptables -L -v -n

解釋:

  • -L:列出所有規則。
  • -v:顯示詳細信息。
  • -n:以數字形式顯示地址和端口。

通過這些命令,你可以有效地使用iptables來限制連接速率,保護你的服務器免受惡意攻擊。

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